我的服务器上有两个用户,myuser
和otheruser
。
我希望人们只能通过 ssh 进入otheruser
,而不能myuser
。
我已经openssh-server
安装了,并且端口 22 已转发。
当我跑步时:
$ ssh [email protected]
但是,如果我运行:它就会起作用:
$ ssh [email protected]
它仍然有效。
然而我不希望它起作用。
我应该添加什么sshd_config
才能使其只接受一个用户?
答案1
编辑你的配置文件sudo nano /etc/ssh/sshd_config
(或者使用 vim、kwrite 或任何编辑器代替 nano)
添加此行AllowUsers otheruser
并DenyUsers myuser
保存并关闭 sshd_config 文件
重新启动你的机器或重新启动 SSH 服务sudo systemctl restart sshd
AllowUsers
此关键字后面可以跟一串用户名模式,各模式之间用空格分隔。如果指定,则只有与其中一个模式匹配的用户名才允许登录。*' and
在模式中可以使用“?'”作为通配符。只有用户名才有效;数字用户 ID 无法识别。默认情况下,所有用户都允许登录。如果模式采用 USER@HOST 形式,则将分别检查 USER 和 HOST,将登录限制为来自特定主机的特定用户。
拒绝用户
此关键字后面可以跟一串用户名模式,以空格分隔。与其中一个模式匹配的用户名不允许登录。*' and
?' 可以在模式中用作通配符。只有用户名才有效;数字用户 ID 无法识别。默认情况下,允许所有用户登录。如果模式采用 USER@HOST 形式,则分别检查 USER 和 HOST,将登录限制为特定主机的特定用户。
答案2
我的快速解决方案是在末尾添加/etc/ssh/sshd_config
AllowUsers [email protected]/24 sshUzerFromWWW@*
在哪里 :
allowedInnerSubnetUser
我从内部子网使用的用户sshUzerFromWWW
从外面