我希望将端口 22 列入白名单,但仅限于特定的源和目标 IP 地址。
我知道如何使用 iptables 针对特定源 IP 执行此操作:
iptables -A INPUT -p tcp -s YourIP --dport 22 -j ACCEPT
目标IP是我不确定的。
任何反馈将不胜感激。
答案1
如果您在目标计算机上执行此命令,则您拥有的命令将起作用,并且您允许您的IP才能访问端口 22。如果您想使用目标 IP,则必须使用 OUTPUT 链。我不确定这里的场景是什么,所以我只是展示一个例子。使用 iptables 时要非常小心
iptables -A OUTPUT -p tcp -d 1.2.3.4 -j ACCEPT
答案2
我明白了:)
我使用以下规则来阻止虚拟机管理程序上所有 VPS 的端口 22:
iptables -A FORWARD -o br0 -p tcp --sport 22 -j DROP
如果需要,可以使用以下规则将特定 VPS 的 IP 地址列入白名单:
iptables -I FORWARD -o br0 -s VPSIPADDRESS -d REMOTEIP -p tcp -m tcp --sport 22 -j ACCEPT
这已经过全面测试并且工作绝对完美,就像我想要的那样:)