告诉 SHH 允许用户 MyUser 从 IP_1 和 IP_2 登录的正确语法是什么?因为我的 ssh_config 中有此配置:
AllowUsers MyUser@IP_1
AllowUsers MyUser@IP_2
我只能从 IP_2 访问,而不能从 IP_1 访问。我检查了 IP_1,发现它匹配,所以我想应该有一种不同的语法来实现我想要的效果。
更新:我已将 ssh 允许用户更改为如下形式:
AllowUsers MyUser@IP_2 MyUser@IP_1 MyUser@IP_3[thi is EOF - no new line after this]
但什么都没变:我仍然可以连接 IP_2,但不能连接 IP_1。我还添加了其他 IP,目前无法测试。更改 sshd_config 后,我运行sudo service ssh restart
甚至尝试了sudo service ssh reload
。sshd_config 的唯一其他非默认配置是我已禁用远程 root 用户登录。
在 auth.log 中它显示:
Failed password for invalid user MyUser from IP_1 port 49622 ssh2
更新 2 - 谜团已解:我的远程服务器的 IP_1 机器的 putty 用户名值的连接配置中出现了拼写错误。
答案1
把所有信息放在一行上
AllowUsers MyUser@IP_1 MyUser@IP_2
或者指定一个范围
AllowUsers [email protected].*
或者 iprange 1 的一些变体。。。* ETC
有关详细信息,请参阅手册页http://manpages.ubuntu.com/manpages/zesty/man5/sshd_config.5.html
允许用户
该关键字后面可以跟一串用户名模式,以空格分隔。 如果指定,则仅允许与其中一个模式匹配的用户名登录。只有用户名才有效;数字用户 ID 不被识别。默认情况下,允许所有用户登录。如果模式采用 USER@HOST 形式,则分别检查 USER 和 HOST,将登录限制为特定主机的特定用户。HOST 条件可能还包含要以 CIDR 地址/掩码长度格式匹配的地址。允许/拒绝指令按以下顺序处理:DenyUsers、AllowUsers、DenyGroups,最后是 AllowGroups。
编辑后重新启动ssh服务器或重新加载配置
sudo service sshd restart