仅允许系统上的一个用户通过 SSH 进入

仅允许系统上的一个用户通过 SSH 进入

我的服务器上有两个用户,myuserotheruser
我希望人们只能通过 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 otheruserDenyUsers 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从外面

相关内容