无法使用 PuTTY 私钥登录到某个特定的 Linux 服务器

无法使用 PuTTY 私钥登录到某个特定的 Linux 服务器

我使用单个私钥通过 PuTTY 登录多个 Linux 服务器。当我需要登录新机器时,我首先通过密码验证登录,然后添加我的公钥~/.ssh/authorized_keys2并使用私钥。

但是有一台机器我无法使用私钥登录。我检查了.ssh目录和authorized_keys2文件的权限,但它们与我可以成功登录的机器上的权限相同。

这里可能存在什么问题?管理员是否可以禁用基于私钥的登录?

答案1

您应该检查sshd日志以了解它为什么拒绝您的连接。

我发现任何管理员都不太可能禁用公钥认证。

请注意,该authorized_keys2文件已弃用很长时间。请使用正确的authorized_keys文件。虽然默认的 OpenSSH 配置允许两个文件实现向后兼容,但此特定安装可能authorized_keys仅允许使用正确的文件。请检查AuthorizedKeysFile中的指令sshd_config

答案2

OpenSSH 在配置文件中支持 PubkeyAuthentication 选项。它会影响 SSH 版本 2 连接,并且可以将选项设置为 no。此外,还可以配置文件名。所以这回答了你的最后一个问题。

要找出发生了什么,最好的办法是检查服务器的日志。(这可能需要您具有超级用户(“root”)访问权限。)确切的日志名称可能因系统而异:检查 /var/log/authlog

如果该文件不存在,请尝试 ls -lt /var/log

-t 按时间排序,这样您就可以找出登录尝试失败时更新的日志。(这对于不太活跃的服务器非常有用。如果大量日志频繁更新,这可能就没那么有用了。)

相关内容