RULE规则即是策略
iptables的工作机制:匹配即停止(策略的顺序很重要)
centos7用firewalld代替iptables
centos6要启用iptables-services,用的功能才比较全面
iptables 的匹配条件和动作
策略保存的文件:/etc/sysconfig/iptables
到本机某进程的报文:PREROUTING –> INPUT
由本机转发的报文:PREROUTING –> FORWARD –> POSTROUTING
由本机的某进程发出报文(通常为响应报文):OUTPUT –> POSTROUTING
iptables是基于netfilter
iptables 的四表和五链
filter表:负责过滤功能,防火墙;内核模块:iptables_filter
nat表:network address translation,网络地址转换功能;内核模块:iptable_nat
mangle表:拆解报文,做出修改,并重新封装 的功能;iptable_mangle
raw表:关闭nat表上启用的连接追踪机制;iptable_raw
表优先级(由高到低):raw --- mangle -- nat -- filter
数据包流向:PREROUTING --> INPUT ---> OUTPUT
|/ |/
|/ |/
v/ v/
FORWARD ---> POSTROUTING
查:列出有序列号和详细的信息以及不解析DNS的策略:iptables --line-numbers -nvL [-t filter] [INPUT]
列出nat表中POSTROUTING链的策略:iptables -t nat -L POSTROUTING
删除所有当前的策略:iptables -F
删除nat表POSTROUTING链的策略: iptables -t nat -F POSTROUTING
删除nat表OUTPUT链第1条的策略:iptables -t nat -D OUTPUT 1
插入一条filter表INPUT链的策略:iptables -t filter -I INPUT -s 192.168.0.0/16 -j DROP
追加:iptables -A INPUT ! -s 192.158.0.0/16 -j ACCEPT
使用-I选项进行插入规则操作,-I INPUT 2表示在INPUT链中新增规则,新增的规则的编号为2:iptables -I INPUT 2 -s 10.10.1.10 -j DROP
改:iptables -R INPUT 3 ! -s 192.15.0.0/16 -d 0.0.0.0/0 -j ACCEPT
改(默认策略):iptables -P FORWARD ACCEPT
保存规则:iptables-save > /etc/sysconfig/iptables
重载规则:iptables-restore < /etc/sysconfig/iptables