Linux iptables阻止端口80和25上的某些请求

Linux iptables阻止端口80和25上的某些请求,linux,unix,iptables,Linux,Unix,Iptables,我有以下规则: # iptables -n -L -v --line-numbers Chain INPUT (policy DROP 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination 1 7392 4841K ACCEPT all -- lo * 0.0.0.0/0

我有以下规则:

    # iptables -n -L -v --line-numbers
Chain INPUT (policy DROP 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1     7392 4841K ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0
2     250K  531M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
3        0     0 ACCEPT     all  --  *      *       192.168.0.0/24       0.0.0.0/0
4        0     0 ACCEPT     all  --  *      *       80.1.1.69            0.0.0.0/0
5     6929  360K ACCEPT     all  --  *      *       110.50.200.145       0.0.0.0/0
6       23  1404 ACCEPT     all  --  *      *       100.40.30.0/24       0.0.0.0/0
7      781 46428 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:22 state NEW,ESTABLISHED
8      101  5928 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:25 state NEW,ESTABLISHED
9     5664  338K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:80 state NEW,ESTABLISHED
10     846 65748 LOGGING    all  --  *      *       0.0.0.0/0            0.0.0.0/0
11       0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain FORWARD (policy DROP 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 147K packets, 381M bytes)
num   pkts bytes target     prot opt in     out     source               destination

Chain LOGGING (1 references)
num   pkts bytes target     prot opt in     out     source               destination
1      734 46882 LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 6/min burst 5 LOG flags 0 level 7 prefix `iptables: '
2      846 65748 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0
问题是日志文件显示了如下行:

Jan 28 17:31:30 myhostname kernel: iptables: IN=eth0 OUT= MAC=78:24:ff:3a:3b:0e:00:09:0f:09:3b:06:08:00 SRC=188.85.58.233 DST=210.6.60.254 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=40229 DF PROTO=TCP SPT=56131 DPT=80 WINDOW=0 RES=0x00 RST URGP=0

Jan 21 22:54:03 myhostname kernel: iptables: IN=eth0 OUT= MAC=78:24:af:3a:3b:0c:00:09:0f:09:3b:06:08:00 SRC=217.12.26.61 DST=210.6.60.254 LEN=40 TOS=0x00 PREC=0x00 TTL=41 ID=0 DF PROTO=TCP SPT=35401 DPT=25 WINDOW=0 RES=0x00 RST URGP=0
注意,我打开了端口80和25

为什么有些连接会被80和25上的iptables阻塞?。我需要这两种服务的流量,但我不明白为什么ip表会阻止某些连接


谢谢

您将注意到,在这些日志行的末尾,数据包设置了tcp重置标志:

…窗口=0分辨率=0x00RSTURGP=0

很可能,conntrack认为连接未处于可接收的合理数据包的状态,conntrack会将其标记为无效。这意味着它们不符合规则2。当你链中的规则7-9被打破时,它们也不算是新的或已建立的

因此,它们符合您的日志规则10,并被规则11拒绝

您可以忽略这一点,或者在日志行之前的某个位置添加一条规则来处理无效数据包:


-m conntrack-ctstate INVALID-j DROP

在Linux和Unix@FerNando,您确定有问题的行不只是仍然出现在日志文件中的旧行吗?@Yoel,不,它们不是旧行。我刚刚选了两个最近的。我今天有同样的日志。谢谢。那么,它们是无效的数据包?。这可能是某种黑客攻击?。当处理连接关闭和超时时,ThanksIt也会自然发生。