我的知识记录

网站SSH密钥登录失败怎么办?

系统级排查流程
  1. 客户端调试模式
    
     
    bash
    ssh -vvv -i ~/.ssh/your_key user@host
  2. 服务器端关键检查
    < >验证SSH服务配置:
    bash
    grep -E 'PubkeyAuthentication|AuthorizedKeysFile' /etc/ssh/sshd_config
    < >检查密钥文件权限:
    bash
    ls -la ~/.ssh/ chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
  3. SELinux/AppArmor检查
    
     
    bash
    # SELinux getsebool -a | grep ssh # AppArmor aa-status | grep ssh
高级解决方案
  1. 密钥格式转换(适用于不同客户端):
    
     
    bash
    ssh-keygen -p -f ~/.ssh/id_rsa # 修改密钥密码 ssh-keygen -e -f ~/.ssh/id_rsa > id_rsa.pem # 格式转换
  2. 临时启用其他认证方式:
    
     
    bash
    sed -i 's/PasswordAuthentication no/yes/' /etc/ssh/sshd_config systemctl restart sshd
  3. 审计日志分析:
    
     
    bash
    journalctl -u sshd --since "1 hour ago" | grep -i error
安全建议
  1. 使用ED25519算法生成更安全的密钥:
    
     
    bash
    ssh-keygen -t ed25519 -C "your_comment"
  2. 配置强制密钥认证:
    
     
    bash
    echo -e "\nAuthenticationMethods publickey" >> /etc/ssh/sshd_config
  3. 设置密钥使用期限(需要OpenSSH 8.2+):
    
     
    bash
    ssh-keygen -O validity-time=30d -f ~/.ssh/id_ed25519

网站SSH密钥登录失败怎么办?

标签:

更新时间:2025-06-03 09:50:13

上一篇:宝塔面板突然访问不了如何检查服务器防火墙设置?

下一篇:如何设置域名服务器?在域名注册商后台修改DNS服务器地址?