使用 iptables 通过 IP 限制 ssh 访问

使用 iptables 通过 IP 限制 ssh 访问

我想允许某些 IP 地址或整个网络(源)通过 ssh 连接访问我的服务器,并删除所有其他未经授权的源 IP 地址。

答案1

iptables -A INPUT -m state --state NEW,ESTABLISHED,RELATED --source x.x.x.x -p tcp --dport 22 -j ACCEPT

仅从 xxxx 访问

iptables -A INPUT -m state --state NEW,ESTABLISHED,RELATED -p tcp --dport 22 -j DROP

丢弃到端口 22 的所有其他数据包

答案2

iptables -A INPUT -p tcp -s 12.34.56.78/16 --dport ssh -j ACCEPT
iptables -A INPUT -p tcp --dport ssh -j REJECT

还有其他方法可以做到这一点,但当我们对您的其他规则一无所知时,这是最简单的。

答案3

有时命令行 IpTables 语法可能有点难以学习/理解。如果你是 Linux 管理新手,你可以考虑安装类似网页管理工具。您可以使用它们的 GUI 来创建您的规则,然后返回并检查“/etc/sysconfig/iptables”文件并查看实际的语法。

然后,我建议使用 Webmin 和 IpTables 将 webin 访问权限锁定为您希望的特定 IP 地址。您可以使用与其他一些发帖人回答的相同语法,只需将 PORT 更改为您设置 Webmin 使用的端口即可。(希望不是标准端口:10000)。

相关内容