ssh有很多方法可以实现黑白名单方法,修改sshd配置文件中的DenyUsersAllowUsers字段的方法可以实现,不过这需要修改一个文件中的两个地方,并且在sshd_config文件中修改貌似不那么优雅。幸好,Linux提供了我们一个非常优雅的认证方法——pam,利用pam设置ssh的白名单就爽多了。

废话少说,修改/etc/pam.d/sshd文件,增加一行

1
auth required pam_listfile.so item=user sense=allow file=/etc/ssh/sshd.allow onerr=fail

然后新建/etc/ssh/sshd.allow文件,将希望开放ssh登录权限的用户一行放一个,例如:

1
2
zhangergou
wangermazi

OK,大功告成~~