如何仅为远程访问设置SSH无密钥密钥身份验证,允许本地用户使用密码

Modified on: Sat, 09 Nov 2019 19:00:02 +0800

我试图让一台运行Ubuntu 10.04的SSH服务器只允许来自本地网络的密码登录。对于所有其他用户,特别是那些通过防火墙从互联网登录的用户,我想强制进行基于密钥的身份验证。我google了一下,发现了以下内容。

以下是我在/etc/ssh/sshd_config中所做的更改:

PasswordAuthentication yes
Match Address 192.168.5.0/24
PasswordAuthentication yes

有了这个,我从另一台拥有192.168.5的机器登录。地址,但它不允许我缺少publicKey:
权限被拒绝(公钥)。

最佳答案

这应该可以解决问题:

PubkeyAuthentication yes
PasswordAuthentication no
Match Address 192.168.5.* PasswordAuthentication yes

默认情况下,前两行将启用pubkey身份验证。最后一行将覆盖匹配网络的其他两行(192.168.5.0/24)。


相关问答

添加新评论