我可以输入以下代码来拒绝除 1 之外的所有 IP 地址通过 SSH 访问我的服务器:
sshd: all
在 /etc/hosts.deny 中
和
sshd: x.x.x.x
在 /etc/hosts.allow 中(隐藏 ip)
但我想添加一个例外,允许 root 从任何地方登录。可以这样做吗?
答案1
我找到答案了!
不过在列出这些内容之前,我先回复一下各位年轻人的预先判断评论:
我并没有尝试创建安全登录。
我想要强制用户(root 除外)通过具有特定 IP 地址的特定服务器登录到我的设备,该服务器可称为 JUMP SERVER。为什么?因为我正在跟踪他们的命令历史记录,并了解他们登录的内容和时间。为什么不使用 LDAP/RADIUS?因为我的服务器运行在供应商重新配置的操作系统上,不支持该功能。我如何跟踪用户历史记录?我正在创建一个脚本,每次有人 ssh 到我的服务器时,它都会向我发送用户名+登录时间,注销时也是如此。
以上就是我要做的简短介绍。现在,如果您有任何问题,请随时提出。
答案如下:
vi /etc/security/access.conf
并添加以下内容:
+:root:ALL
+:ALL:x.x.x.x
-:ALL:ALL
考虑到 xxxx 是您希望允许所有用户登录的唯一 IP 地址。
然后 vi /etc/pam.d/sshd
修改以下内容:
account required pam_access.so