如何设置仅用于远程访问的SSH密码authentication,允许本地用户使用密码

我正在尝试运行Ubuntu 10.04的SSH服务器,以允许来自本地networking的密码login。 对于所有其他用户,特别是通过防火墙从互联网login的用户,我想要强制基于密钥的身份validation。 我search了一下,发现了以下内容。

以下是我在/etc/ssh/sshd_config更改的内容:

 PasswordAuthentication yes Match Address 192.168.5.0/24 PasswordAuthentication yes 

有了这个,我从另一台机器上login了192.168.5。 地址,但它不会让我缺less一个publicKey:Permission denied(publickey)。

这应该做的伎俩:

 PubkeyAuthentication yes PasswordAuthentication no Match Address 192.168.5.* PasswordAuthentication yes 

前两行默认启用pubkeyauthentication。 最后一行将覆盖匹配networking的另外两行(192.168.5.0/24)。

比赛结束后换行符显着。 这应该工作:

 PasswordAuthentication no Match Address 192.168.5.0/24 PasswordAuthentication yes 

编辑:我很惊讶其他答案的工作! 这不适合我。 那么,这样你就可以使用CIDRnetworking掩码。