iptables是一个强大的Linux防火墙,使用频率极高。本文介绍如何查看iptables规则设置。.net
service iptables status --查看防火墙状态orm
一、iptables -Lip
查看filter表的iptables规则,包括全部的链。filter表包含INPUT、OUTPUT、FORWARD三个规则链。
说明:-L是--list的简写,做用是列出规则。ci
二、iptables -L [-t 表名]get
只查看某个表的中的规则。
说明:表名一个有三个:filter,nat,mangle,若是没有指定表名,则默认查看filter表的规则列表(就至关于第一条命令)。io
举例:iptables -L -t filtertable
三、iptables -L [-t 表名] [链名]form
这里多了个链名,就是规则链的名称。
说明:iptables一共有INPUT、OUTPUT、FORWARD、PREROUTING、POSTROUTING五个规则链。
举例:iptables -L INPUT
注意:链名必须大写。在Linux系统上,命令的大小写很敏感。class
四、iptables -n -Ltest
说明:以数字形式显示规则。若是没有-n,规则中可能会出现anywhere,有了-n,它会变成0.0.0.0/0
五、iptables -nv -L
说明:你也能够使用“iptables -L -nv”来查看,这个列表看起来更详细,对技术人员更友好,呵呵。
若是想删除iptables规则咱们能够以下操做
删除用-D参数
删除以前添加的规则(iptables -A INPUT -s 192.168.1.5 -j DROP):
[root@test ~]# iptables -D INPUT -s 192.168.1.5 -j DROP有时候要删除的规则太长,删除时要写一大串,既浪费时间又容易写错,这时咱们能够先使用–line-number找出该条规则的行号,再经过行号删除规则。
[root@test ~]# iptables -nv --line-number
iptables v1.4.7: no command specified
Try `iptables -h' or 'iptables --help' for more information.
[root@test ~]# iptables -nL --line-number
Chain INPUT (policy ACCEPT)
num target prot opt source destination
1 DROP all -- 192.168.1.1 0.0.0.0/0
2 DROP all -- 192.168.1.2 0.0.0.0/0
3 DROP all -- 192.168.1.3 0.0.0.0/0
删除第二行规则
[root@test ~]# iptables -D INPUT 2