iptables的四个表,raw表、mangle表、nat表、filter表。
其中,filter表负责过滤,允许哪些IP可以访问,哪些不可以,允许访问什么端口,禁止访问什么端口,filter表根据规则进行过滤。
iptables -t filter -L
-t 指定后面的表,-L 查看-t对应表的规则。
上面命令:列出filter表中所有规则,举一反三:
iptables -t raw -L
iptables -t mangle -L
iptables -t nat -L
其中,一般可以省略-t filter,当没有使用-t指定表时,默认就是filter表。
还可以进一步查看指定表中指定链的规则,同时指定链需要使用大写:
iptables -t filter -L INPUT
如果想要更加详细的规则信息:
iptables -t filter -vL INPUT
微信截图_20200321223940.png
上面这些字段的意思其实是规则对应的属性,现在进行汇总一下:
pkts:对应规则匹配到的报文个数;
bytes:对应匹配到的报文包的大小;
target:规则对应的target,表示规则对应的“动作”;
prot:表示规则对应的协议,是否针对某些协议应用规则;
opt:表示规则对应的选项;
in:表示数据包由哪个接口流入,设置通过那块网卡流入的报文需要匹配规则;
out:表示数据包从哪个接口流出,设置通过哪块网卡的报文需要匹配的规则;
source:表示规则对应的源地址,可以是IP,也可以是网段;
destination:表示规则对应的目标地址;
微信截图_20200321225127.png
INPUT的后面有括号(),里面的内容是什么意思呢?
policy:表示当前链的默认策略,policy accept表示INPUT默认动作就是通过的请求。
packets:表示当前链默认策略匹配到包的数量;
bytes:表示当前链默认策略匹配包的大小总和;
命令汇总:
iptables -t 表名 -L
表示查看对应表中所有规则,-t指定表名,-L表示列出规则;
iptables -t 表名 -L 链名
查看指定表中指定链的规则
iptables -t 表名 -n -L
表示查看表的所有规则,并且显示规则时,不对规则的IP或端口进行名称反解,-n表示不解析IP地址;
iptables -t 表名 -v -L
查看指定表的规则,并且显示详细信息,-v表示verbose,表示详细的,一般可直接写成-vL;
iptables --line-numbers -t 表名 -L
表示查看表的规则,同时显示序号,--line-numbers表示显示规则的排序,不能分开写;
iptables -t 表名 -v -x -L
表示查看指定表的规则,同时显示详细信息和精准的计数值(-x);
网友评论