Linux下使用iptables禁止指定IP地址的网络连接

在Linux下,使用iptables来维护IP规则表。要封停或者是解封IP,其实就是在IP规则表添加规则。
要禁止指定IP地址的网络连接,可以使用以下两种方法来快速实现。

1.禁止特定IP的连接
要禁止一个IP,使用下面这条命令:
iptables -I INPUT -s ***.***.***.*** -j DROP
如果需要指定端口:
iptables -I INPUT -s ***.***.***.*** -ptcp --dport 22 -j DROP

要解封一个IP,使用下面这条命令:
iptables -D INPUT -s ***.***.***.*** -j DROP

参数-I是表示 Insert (添加),-D表示 Delete (删除)。后面跟的是规则, INPUT 表示入站,***.***.***.*** 表示要封停的IP, DROP 表示放弃连接。

service iptables save
service iptables restart

可以使用下面的命令来查看当前的IP规则表: 
iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
DROP       all  --  120.120.120.36       anywhere                      

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

如果输出非常慢,可使用:
iptables -n -L
-n选项,主机和端口都以数字形式输出,不会去查询主机名(DNS查询是比较慢的)


2. 禁止IP段的网络连接
添加IP段到封停列表中: 
iptables -I INPUT -s 121.0.0.0/8 -j DROP

发表评论

电子邮件地址不会被公开。 必填项已用*标注

17 − 10 =