Iptables 不会阻止某些 IP

Iptables 不会阻止某些 IP

CentOS 6.2 - vsftpd 正在运行

95.76.44.67 背后的人每天都会扫描我的 ftp 服务器,我已经从 iptables 中阻止了他,但是检查 vsftpd.log 我发现他仍然可以连接到 vsftpd,我不知道为什么。

这是我的 iptables 输出:

Chain INPUT (policy ACCEPT 223K packets, 34M bytes)
num   pkts bytes target     prot opt in     out     source               destination
1    18709 1370K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:512
2    43135 2175K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:21
3     143K  181M ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpts:62222:63333
4    68342   94M ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:25
5        1    44 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:53
6     254K   30M ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:3306
7        8   472 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:465
8     103K  140M ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:587
9     122K 7662K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:995
10    7486 1039K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:443
11    1201  114K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:8080
12    277K  595M ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0
13       0     0 DROP       all  --  *      *       70.148.48.200        0.0.0.0/0
14    2015 81956 DROP       all  --  *      *       95.76.44.67          0.0.0.0/0
15       0     0 DROP       all  --  *      *       95.76.133.243        0.0.0.0/0
16       0     0 DROP       all  --  *      *       95.76.186.81         0.0.0.0/0
17       0     0 DROP       all  --  *      *       95.76.102.135        0.0.0.0/0
18       0     0 DROP       all  --  *      *       118.69.198.201       0.0.0.0/0
19       0     0 DROP       all  --  *      *       69.94.28.73          0.0.0.0/0
20       0     0 DROP       all  --  *      *       218.60.44.132        0.0.0.0/0
21       0     0 DROP       all  --  *      *       80.232.232.9         0.0.0.0/0
22       0     0 DROP       all  --  *      *       61.184.196.122       0.0.0.0/0
23       0     0 DROP       all  --  *      *       61.51.18.235         0.0.0.0/0
24       0     0 DROP       all  --  *      *       218.29.115.152       0.0.0.0/0

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

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

我可以做些什么来阻止他连接到 vsftpd?

答案1

Iptables 以匹配获胜的第一条规则为基础,因此

2    43135 2175K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:21

允许端口 21 上的连接优于

14    2015 81956 DROP       all  --  *      *       95.76.44.67          0.0.0.0/0

因为对于 FTP 连接来说它从未采取行动。

将 95.76.44.67 的 DROP 放在 FTP 的 accept 之前。您可能希望将实现此功能的命令更改为-I ...而不是-A ...

答案2

DROP 规则需要位于接受端口 21 上的 FTP 连接的规则之前。

iptables 采用首次命中机制。

答案3

要制定完美的 IPTABLE 策略,首先要 DROP 所有内容并打开必要的端口。对于您的情况,请将 DROP 规则放在 ACCEPT 之前。这样应该可以正常工作。

再会。

答案4

与问题稍微离题一点,但考虑一下像 Shorewall 这样的 iptables 前端(http://shorewall.net/)。您可以以更直观的方式添加规则,并且只需运行“shorewall drop 1.2.3.4”即可动态删除给定的地址。

还可以考虑fail2ban(http://www.fail2ban.org/),它可以扫描您的日志并自动删除某些 IP 地址。它与原始 iptables 或 Shorewall 配合使用。

相关内容