iptabls 查、增、删、改,保存
一:查centos
参数 | 说明 |
---|---|
-t | 指定要查看的表,默认为 filter 表 |
-L | 列出表中规则 |
-v | 查看详细信息 |
-x | 显示计数器的精确值 |
-n | 不对 IP 地址进行名称反解,直接显示 IP |
--line-number | 显示规则的行号,可缩写为 --line |
-P | 修改默认策略 |
-N | 建立自定义链 |
-E | 重命名自定义链 |
-N | 删除自定义链 |
案例一:
查询 fileter 表 INPUT 链中的规则丢弃 ip:192.168.8ptables -t filter -vL INPUT
下面介绍下每列的含义app
列明 | 说明 |
---|---|
pkts | 匹配到的报文的个数 |
bytes | 匹配到的报文包的总大小 |
target | 表示 “动做”,即匹配成功后要进行的操做 |
prot | 规则对应的协议(其中 all 表示匹配全部协议) |
opt | 规则对应的选项 |
in | 表示数据包由那个接口(网卡)流入,咱们能够设置经过哪块网卡流入的报文须要匹配当前规则 |
out | 表示数据包由那个接口(网卡)流出,咱们能够设置经过哪块网卡流出的报文须要匹配当前规则 |
source | 表示规则对应的源头地址,如:IP、网段 |
destination | 表示规则对应的目标地址,如:IP、网段 |
案例二:
列出 fileter 表 INPUT 链中的规则,并显示行号, 不对 IP 地址进行名称反解
能够对比上面图的区别,下面来解释下划线第二行的含义ssh
列明 | 说明 |
---|---|
policy | 表示当前链的默认策略,即:在规则中没有找到对应策略时,应用该策略 |
packets | 表示当前链默认策略匹配到的包的 数量 |
bytes | 表示当前链默认策略匹配到的全部包的总大小 |
二:增ide
参数 | 说明 |
---|---|
-I insert | 表示将规则插入链中 ,即添加 |
-A append | 追加规则(追加到最后一条) |
-s source | 源地址,指明 “匹配条件” 中的地址 |
-j | 当知足条件时,所对应的动做 |
案例一:
在 fileter 表 INPUT 链中添加一条丢弃 ip:192.168.80.138 的规则
在 80.138 的机器上进行 ping 或 ssh 链接,查看结果
在看 80.144 中变化,如:报文数,总大小
案例二:
使用 -I 与 -A 添加的区别
以下图:使用 -I 添加的规则在第一行
以下图:使用 -A 添加的规则在第三行,即 -I 与 -A 的区别
案例三:
使用 -I 在第二行添加一条规则
注意:iptables 中匹配规则是自上而下的,当匹配到第一个符合的规则,便不会在向下匹配centos7
三:删3d
参数 | 说明 |
---|---|
-F flush | 清空链表,不指定链只指定表,即删除表中全部规则 |
-D | 根据匹配条件删除对应规则 |
案例一:
根据规则行号删除对应的规则
案例二:
根据匹配条件与动做删除规则
案例三:
清空链表
注意:当没有 -t 指明表时,默认为 filter 表
四:改
修改使用 -R,不经常使用,若是要改,我的建议先删后加
案例一:
修改规则中的动做
注意:在修改时(-R 链 序号)便可,但修改有些规则时,要求加上本来的匹配条件,即诺要修改时,本来的匹配条件也要加上,有多个,就写多个rest
五:保存规则
centos6:使用 service iptables save 便可永久保存,规则默认保存在 /etc/sysconfig/iptables 文件中
若是出现误操做,但并无保存时,使用service iptables restart 即重启 iptables,规则会返回到上一次保存时(/etc/sysconfig/iptables)的模样code
centos7:须要安装 iptables 与 iptables-service 而后就和 centos6 中同样了
安装步骤以下:blog
#配置好 yum 源之后安装 iptables-service yum install -y iptables-services #中止 firewalld systemctl stop firewalld #禁止 firewalld 自动启动 systemctl disable firewalld #启动 iptables systemctl start iptables #将 iptables 设置为开机自动启动,之后便可经过 iptables-service 控制 iptables 服务 systemctl enable iptables
也可使用 重载的方式来保存,但重载规则时,现有规则将会被覆盖
以下:接口
iptables-save > /etc/sysconfig/iptables iptables-restore < /etc/sysconfig/iptables