我正在尝试运行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掩码。