温馨提示×

Ubuntu SSH密钥登录不成功怎么办

小樊
51
2025-10-31 01:58:57
栏目: 智能运维

如果你在尝试使用SSH密钥登录Ubuntu服务器时遇到问题,可以按照以下步骤进行故障排查:

  1. 确保你已经在客户端生成了SSH密钥对(公钥和私钥)。如果没有,请使用ssh-keygen命令生成。

  2. 将客户端的公钥添加到服务器的~/.ssh/authorized_keys文件中。你可以手动添加,也可以使用ssh-copy-id命令将公钥复制到服务器。

  3. 确保服务器上的SSH配置文件/etc/ssh/sshd_config允许使用密钥登录。检查以下设置:

    PubkeyAuthentication yes
    AuthorizedKeysFile .ssh/authorized_keys
    

    如果对配置文件进行了更改,请重新启动SSH服务:sudo systemctl restart ssh

  4. 确保服务器上的~/.ssh目录和~/.ssh/authorized_keys文件的权限正确。运行以下命令:

    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
    
  5. 检查客户端的私钥文件权限。它应该是600(只有所有者才能读取和写入):

    chmod 600 ~/.ssh/id_rsa
    

    (请根据实际情况替换私钥文件名,例如id_rsaid_dsa等)

  6. 确保服务器防火墙允许SSH连接。如果你使用的是UFW防火墙,请运行以下命令:

    sudo ufw allow ssh
    
  7. 查看服务器上的SSH日志,以获取有关失败尝试的详细信息。在服务器上运行以下命令:

    sudo tail -f /var/log/auth.log
    

    然后尝试再次登录,以查看与你的尝试相关的日志。

  8. 如果仍然无法解决问题,请检查客户端和服务器上的SSH版本是否兼容。可以使用ssh -V命令查看SSH版本。

按照以上步骤进行故障排查,你应该能够找到并解决SSH密钥登录失败的问题。如果问题仍然存在,请提供更多详细信息,以便进一步协助。

0