CentOS,如何仅允许通过一个服务器 IP 进行 SSH

CentOS,如何仅允许通过一个服务器 IP 进行 SSH

我目前有一台专用服务器,已分配两个 pv4 IP 地址。我想将其中一个设为公开,将另一个设为私有,用于 SSH/FTP 相关资料。

IP 1(公网 IP):192.23.6.11

IP 2(私有 SSH IP):192.23.6.12

有人知道我该如何从 SSH/SFTP 阻止 IP 1 吗?这可能吗?

答案1

首先,我们确保 ssh 只监听所需的 ip。

在以下文件中:

/etc/ssh/sshd_config 

你会看到如下一行:

#ListenAddress 0.0.0.0

这条注释掉了,但这是默认设置,列出所有用于 ssh 请求的 IP 地址。您可以将其更改为您想要接受连接的接口的 IP 地址,这样只有该 IP 地址才会接受 ssh 连接:

ListenAddress 192.23.6.12 

更改后重新启动 sshd 服务。

然后在 iptables 中允许具有私有 IP 的接口(例如 eth1)

iptables -A INPUT -p tcp  -i eth1 --dport 22 -j ACCEPT

也可以看看:

答案2

在 /etc/ssh/sshd_config 中添加/编辑以下行:

监听地址 192.23.6.12

相关内容