我想确保通过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的配置方式.
我上面描述的行为是sshd的预期行为.无论输入什么密码,都不会被接受.