linux – 仅允许从内部网络对SSH服务器进行密码验证

前端之家收集整理的这篇文章主要介绍了linux – 仅允许从内部网络对SSH服务器进行密码验证前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个在Ubuntu Precise 12.04上运行的OpenSSH 5.9p1服务器,它接受来自内部网络和Internet的连接.我想要对来自Internet的连接进行公钥认证,但是接受来自内部网络的连接的公钥或密码认证.我可以配置OpenSSH来实现吗?

解决方法

/ etc / ssh / sshd_config中的Match指令允许您有选择地应用配置指令.其中一个可用的匹配条件是连接的源地址,因此可用于实现所需的内容.您可以默认禁用密码身份验证,然后为内部网络IP范围的连接启用密码身份验证. (请注意,您还要禁用ChallengeResponseAuthentication以防止使用密码.)此示例允许从所有RFC1918专用IP范围进行密码身份验证.有关详细信息,请参阅 sshd_config manpage.
PasswordAuthentication no
ChallengeResponseAuthentication no

Match Address 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
    PasswordAuthentication yes

请注意,匹配块应添加文件的末尾,否则其后的所有内容将匹配,直到下一个匹配块. Match块的错误定位可能导致无法连接.

猜你在找的Linux相关文章