linux防火墙iptables规则的查看、添加、删除和修改方法总结
1、查看
iptables-nvL--line-number
-L查看当前表的所有规则,默认查看的是filter表,如果要查看NAT表,可以加上-tNAT参数
-n不对ip地址进行反查,加上这个参数显示速度会快很多
-v输出详细信息,包含通过该规则的数据包数量,总字节数及相应的网络接口
–-line-number显示规则的序列号,这个参数在删除或修改规则时会用到
2、添加
添加规则有两个参数:-A和-I。其中-A是添加到规则的末尾;-I可以插入到指定位置,没有指定位置的话默认插入到规则的首部。
当前规则:
[root@test~]#iptables-nL--line-number ChainINPUT(policyACCEPT) numtargetprotoptsourcedestination 1DROPall--192.168.1.10.0.0.0/0 2DROPall--192.168.1.20.0.0.0/0 3DROPall--192.168.1.40.0.0.0/0
添加一条规则到尾部:
[root@test~]#iptables-AINPUT-s192.168.1.5-jDROP
再插入一条规则到第三行,将行数直接写到规则链的后面:
[root@test~]#iptables-IINPUT3-s192.168.1.3-jDROP
查看:
[root@test~]#iptables-nL--line-number ChainINPUT(policyACCEPT) numtargetprotoptsourcedestination 1DROPall--192.168.1.10.0.0.0/0 2DROPall--192.168.1.20.0.0.0/0 3DROPall--192.168.1.30.0.0.0/0 4DROPall--192.168.1.40.0.0.0/0 5DROPall--192.168.1.50.0.0.0/0
可以看到192.168.1.3插入到第三行,而原来的第三行192.168.1.4变成了第四行。
3、删除
删除用-D参数
删除之前添加的规则(iptables-AINPUT-s192.168.1.5-jDROP):
[root@test~]#iptables-DINPUT-s192.168.1.5-jDROP
有时候要删除的规则太长,删除时要写一大串,既浪费时间又容易写错,这时我们可以先使用–line-number找出该条规则的行号,再通过行号删除规则。
[root@test~]#iptables-nv--line-number iptablesv1.4.7:nocommandspecified Try`iptables-h'or'iptables--help'formoreinformation. [root@test~]#iptables-nL--line-number ChainINPUT(policyACCEPT) numtargetprotoptsourcedestination 1DROPall--192.168.1.10.0.0.0/0 2DROPall--192.168.1.20.0.0.0/0 3DROPall--192.168.1.30.0.0.0/0
删除第二行规则
[root@test~]#iptables-DINPUT2
4、修改
修改使用-R参数
先看下当前规则:
[root@test~]#iptables-nL--line-number ChainINPUT(policyACCEPT) numtargetprotoptsourcedestination 1DROPall--192.168.1.10.0.0.0/0 2DROPall--192.168.1.20.0.0.0/0 3DROPall--192.168.1.50.0.0.0/0
将第三条规则改为ACCEPT:
[root@test~]#iptables-RINPUT3-jACCEPT
再查看下:
[root@test~]#iptables-nL--line-number ChainINPUT(policyACCEPT) numtargetprotoptsourcedestination 1DROPall--192.168.1.10.0.0.0/0 2DROPall--192.168.1.20.0.0.0/0 3ACCEPTall--0.0.0.0/00.0.0.0/0
第三条规则的target已改为ACCEPT。
5、永久生效
serviceiptablessave
serviceiptablesrestart
以上就是本文介绍的对linux防火墙iptables规则进行查看、添加、删除和修改的操作