简单的 iptables 规则

简单的 iptables 规则

我有两个网络接口 eth0 和一个别名 eth0:1,这是我的内部网络。我想阻止端口 8140,但也有一条规则允许来自 eth0:1 子网 (192.168.1.0/24) 的任何内容

这是我有的规则,但它似乎在所有接口上阻止了 8140

iptables -A INPUT -s 192.168.1.0/24  -j ACCEPT
iptables -A INPUT -p tcp --destination-port 8140 -j DROP


Chain INPUT (policy ACCEPT 7 packets, 400 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     all  --  *      *       192.168.1.0/24       0.0.0.0/0           
    0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:8140 

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 10 packets, 1400 bytes)
 pkts bytes target     prot opt in     out     source               destination    

答案1

尝试这个:

iptables -A INPUT -p tcp -s \! 192.168.1.0/24 --dport 8140 -j DROP

答案2

请按规则的书写顺序。

首先按照您输入的内容编写第二条规则,然后编写第二条规则。

然后保存iptables并重启iptables服务使之生效,然后进行测试。

它应该可以工作。

答案3

您不清楚自己想要发生什么 - 如果您想阻止 TCP/8140 无论它来自哪里,它应该是第一条规则,否则,您现有的设置就没问题;192.168.1.0/24 可以自由地与 8140 通信,其他一切都不能。

相关内容