0
点赞
收藏
分享

微信扫一扫

Iptables

1、概念: 

iptables其实不是真正的防火墙,我们可以把它理解成一个客户端代理,用户通过iptables这个代理,将用户的安全设定执行到对应的”安全框架”中,这个”安全框架”才是真正的防火墙,这个框架的名字叫netfilter 

 

netfilter才是防火墙真正的安全框架(framework),netfilter位于内核空间。 

 

iptables其实是一个命令行工具,位于用户空间,我们用这个工具操作真正的框架。 

 

2、查 

iptables --line -L -nv  

rc. d] # 
iptables —line —L 
Chain ΙΝΡΙΙΤ (policy ACCEPT 10G packets, 9182G 
bytes) 
344" DROP 
dpt : 8441 
2660 DROP 
dpt : 8441 
5432 DROP 
bytes 
ο 
13077 2220K ACCEPT 
432 22764 DROP 
31G 
115 13630 ACCEPT 
ο 
22M 3595M ACCEPT 
pkts 
2 
3 
4 
5 
6 
7 
8 
9 
10 
ιι 
12 
13 
14 
5740K 
Ο 
Ο 
51M 
9 
11 
Ο 
9 
102 
target 
ACCEP T 
Ο DROP 
ACCEP T 
604 DROP 
ACCEP T 
540 ΜΟΡ 
Ο ACCEPT 
prot opt 
tcp — * 
tcp 
tcp 
tcp 
tcp — * 
tcp 
tcp 
tcp — * 
tcp 
tcp 
tcp 
source 
172.25.55.0/24 
127.001 
192. 168. 1.0/24 
192. 168. 1.0/24 
192. 168. 1.0/24 
192. 168. 1.0/24 
192. 168. 1.0/24 
132.246.27.0/24 
source 
bytes) 
source 
dest i nat οπ 
ο. 0/0 
ο. 0/0 
ο. 0/0 
dest i nat i on 
dest ί nat ί οπ 
tcp 
tcp 
tcp 
tcp 
tcp 
tcp 
tcp 
tcp 
tcp 
tcp 
tcp 
tcp 
tcp 
tcp 
dpt:22181 
2376 
dpt : 2376 
: 18080 
18080 
dpt : 8440 
dpt : 8440 
dpt:8000 
dpt:8000 
dpt: 50070 
50070 
dpt:50070 
Chain FOR%ARD (policy ACCEPT Ο packets, Ο 
prot opt ίη 
9665M packets, 
πιπ pkts bytes target 
prot opt i η 
bytes) 
8684G

 

3、增 

 

iptables -I INPUT -s 172.27.133.132 -p tcp  -m multiport --dport 10080,10404,10443 -j DROP

(拒绝 源地址172.27.133.132 访问 10080,10404,10443 端口  )

 

 

 

iptables -I INPUT -s 172.27.133.132 -p tcp  -m multiport --dport 19100 -j DROP

(拒绝 源地址172.27.133.132 访问19100 端口  )

 

 

iptables -I INPUT -s 192.168.1.0/24 -p tcp --dport 8000 -j ACCEPT (表示允许192.168.1.0/24 IP段访问8000端口) 

iptables -I INPUT -p tcp --dport 2376 -j DROP (表示拒绝任何tcp连接的方式访问2376端口) 

 

注意:iptables 有执行顺序。是按照num数字顺序执行。使用iptables --line -L -nv 命令查看所有的规则执行的顺序 

 

添加规则到第二行的执行位置:iptables -I INPUT 2 -s 192.168.1.0/24 -p tcp --dport 8000 -j ACCEPT 

 

4、删 

删除第3行规则:iptables -D INPUT 3 

 

添加多个不连续的端口:iptables -I INPUT -s 172.20.170.0/24 -m multiport -p tcp --dport 3306,33060 -j ACCEPT 

iptables -I INPUT -s 132.246.0.0/16,192.168.1.0/24  -p tcp --dport 8082 -j ACCEPT 

 

 

iptables端口封堵: 

192.168.1.191 

cat /etc/rc.d/rc.local 

iptables -I INPUT -p tcp --dport 8000 -j DROP(需要在命令行中执行一次,然后再加入到rc.local文件中) 

iptables -I INPUT -s 192.168.1.0/24 -p tcp --dport 8000 -j ACCEPT(需要在命令行中执行一次,然后再加入到rc.local文件中) 

iptables -I INPUT -p tcp --dport 2376 -j DROP(需要在命令行中执行一次,然后再加入到rc.local文件中) 

iptables -I INPUT -s 127.0.0.1 -p tcp --dport 2376 -j ACCEPT(需要在命令行中执行一次,然后再加入到rc.local文件中) 

再检查下封堵的端口 

iptables -L -n |grep "端口" 

 

 

 

 

1、

指定-m multiport就可以使用--dports、--sports

参考: ​​http://www.zsythink.net/archives/1544​​

标准的--dport与--sport使用方式: 80、80:90、:80、90:

扩展的--dports与--sports使用方式:以上组合,使用冒号来分离。

2、

指定-m iprange就可以使用--src-range 、--dst-range

参考: ​​http://www.zsythink.net/archives/1564​​

标准的-s 使用方式:192.168.1.1、192.168.1.0/24、192.168.1.2,10.1.1.1、(192.168.1.1,10.1.1.0/24???)

扩展的--src-range: from[-to] 应该是单独192.168.1.1、192.168.1.0/24、192.168.1.5-192.168.1.6

实际操作:

root@ca:~# iptables -t filter -I INPUT -p tcp -s 111.192.82.1,112.35.36.2 --dport 40022 -j ACCEPT

实际会拆解成2条规则

root@ca:~# iptables -t filter -I INPUT -m iprange --src-range 111.192.82.1,112.35.36.2 --dport 40022 -j ACCEPT

iptables v1.6.0: iprange: Bad value for "--src-range" option: "111.192.82.1,112.35.36.2"

Try `iptables -h' or 'iptables --help' for more information.

思考:iprange是否要连续ip地址

3、

iptables -I INPUT 3 -p tcp -m tcp --dport 40022,8006 --tcp-flags FIN,SYN,RST,ACK SYN -m recent --rcheck --seconds 60 --name prox --mask 255.255.255.255 --rsource -j ACCEPT

以上出现语法错误

iptables -I INPUT 3 -p tcp -m tcp -m multiport --dports 40022,8006 --tcp-flags FIN,SYN,RST,ACK SYN -m recent --rcheck --seconds 60 --name prox --mask 255.255.255.255 --rsource -j ACCEPT

以上为1条规则,不像当-m iprange --src-range 连续ip段时,会拆分为1条1条的规则

 

来自 <​​http://t.zoukankan.com/weihua2020-p-14072839.html​​>

 

 

举报

相关推荐

iptables

iptables小结

iptables总结

iptables扩展

iptables学习

0 条评论