如何为 ssh 创建(用户名/密码或证书)白/黑名单?
例如黑名单,我可以使用任何用户名/密码组合来访问服务器,除了黑名单上的用户名/密码组合。
ssh版本可以是OpenSSH。
服务器是Linux。
在 Linux 上创建大量用户作为白名单并不是一个好方法。
可以使用任何方法,例如修改 SSH 软件本身,或使用 Linux/SSH 功能,或使用其他模块。
更新:
可能是我没有描述清楚情况。基本上,我只是希望任何用户名/密码组合都能够登录,黑名单除外。
例如,如果黑名单是“admin/admin;root/123”。我可以简单地使用“abc/123456”登录。该服务器就像一个非常脆弱的服务器,几乎不需要任何凭据。
对于白名单,我可以为列表提供许多用户名/密码/证书组合,而不仅仅是用户名。
答案1
对于黑名单,请在您sshd_config
添加的DenyUsers
条目中添加一个由空格分隔的用户列表。您也可以DenyGroups
以类似的方式使用。
例如:
DenyUsers jimmy bill joe susan
或者
DenyGroups teachers
AllowUsers
使用文件中的和/或AllowGroups
条目创建白名单sshd_config
。如果使用这些条目中的任何一个,则仅允许列出的用户或组登录。