7

我想确保通过 SSH 访问计算机的唯一方法是客户端的密钥是否已添加到authorized_keys服务器上的文件中。

为此,我编辑/etc/ssh/sshd_config并启用以下选项

ChallengeResponseAuthentication no
PasswordAuthentication no
PubkeyAuthentication yes
UsePAM no

在此之后,我重新启动sshd服务

sudo /etc/init.d/ssh restart

但是,当我尝试从其密钥未保存在服务器的授权密钥文件中的客户端 ssh 进入服务器时,系统会提示我输入密码。

编辑:我已经弄清楚了问题所在,但我将把这个问题留在这里,以防它对其他人有用。

发生的情况是,当使用不在authorized_keys文件中的密钥从客户端连接时,服务器会要求输入密码,但无论输入什么密码,都会被拒绝。我认为这使得攻击者很难理解 sshd 是如何配置的。

4

2 回答 2

2

我上面描述的行为是 sshd 的预期行为。无论输入什么密码,都不会被接受。

于 2014-12-28T02:23:19.850 回答
0

只是为了帮助任何发现这个并且似乎仍然能够使用 root 和密码登录的人,我发现重新启动 VPS 似乎可以正确重新配置所有内容。

于 2017-02-05T11:08:21.907 回答