如何阻止特定 IP 地址的 ssh 连接

如何阻止特定 IP 地址的 ssh 连接

我想阻止来自特定 IP 地址的 ssh 连接。例如:我的系统 IP 地址是 192.168.8.20,另外两个系统是 192.168.8.11 和 192.168.8.12,我想阻止 8.12 的 ssh 连接,但我想从 192.168.8.11 登录。等等。

我怎样才能做到这一点?

答案1

最简单、最好的解决方案是“使用你正在使用的任何防火墙”。只需阻止 192.168.8.12 对端口 22 的访问(或明确仅允许 192.168.8.11 访问)。

如果您目前没有设置防火墙,那么您可能需要查看iptables,它是 Linux 内核的一部分。这里有一个教程。它还有相当多的 GUI 界面。

您要执行上述操作的具体命令是:

# iptables -A INPUT -p tcp --dport ssh -s 192.168.8.12 -j DROP

INPUT这将为针对您的ssh端口 (22) 的 TCP 流量(来自 192.168.8.12)添加一条规则并将其丢弃。

答案2

如果您安装了 tcpwrappers,那么您可以将条目放入 hosts.deny。请阅读 hosts.deny 的手册页以了解详细信息。

相关内容