iptables

==============
Table:
filter:个别的过滤性能,蕴含input,forward,output。默认选项
nat:用于地址转换、映射、端口映射等,蕴含prerouting,postrouting
mangle:用于对特定数据包的批改,蕴含prerouting,output,forward,input,postrouting
raw:个别是为了不再让iptables做数据包的连贯跟踪解决,从而提供性能,蕴含prerouting,output

==============
Subcommand:
链治理
-N :new,自定义一条新的规定链
-X :delete,删除自定义的空的规定链
-P :Policy,设置默认策略;对filter 表中的链而言,其默认策略有:ACCEPT :承受,DROP :抛弃

查看
-L :list,列出指定链上的所有规定,本选项须置后
-n :numberic,以数字格局显示地址和端口号

规定治理:
-A :append,追加
-I :insert,插入,要指明插入的规定编号,默认为第一条。
-D :delete,删除。(1)指明规定序号,(2)指明规定自身
-R :replace ,替换指定链上的指定规定编号
-F :flush ,清空指定的规定链
-Z :zero ,置零

==============
Chain:
INPUT (policy ACCEPT)
FORWARD (policy DROP)
OUTPUT (policy ACCEPT)
PREROUTING 流入的数据包进入路由表之前
POSTROUTING 传出的数据包达到网卡进口之前

==============
Match
-s, --source address/mask :源IP 地址或范畴
-d, --destination address/mask :指标IP 地址或范畴
-p, --protocol protocol :指定协定,protocol: tcp, udp, icmp
-i, --in-interface name :报文流入的接口;只能利用于数据报文流入环节,只利用于 INPUT 、FORWARD 、PREROUTING 链
-o, --out-interface name :报文流出的接口;只能利用于数据报文流出的环节,只利用于 OUTPUT 、FORWARD 、 POSTROUTING 链

--source-port, --sport port[:port] :匹配报文tcp首部源端口,可为端口范畴
--destination-port,--dport port[:port] :匹配报文指标端口,可为范畴

--tcp-flags mask comp:mask需查看的标记位列表,用逗号分隔,如 SYN,ACK,FIN,RST,PSH,URG,ALL,NONE.comp在mask列表中必须为1的标记位列表,无指定则必须为0,用逗号宰割

==============
Target
-j targetname [per-target-options]:跳转指标

简略:    ACCEPT    DROP扩大:    REJECT :     明确回绝,默认    RETURN :     返回调用链    REDIRECT :   端口重定向    LOG :        记录日志,dmesg    MARK :       做防火墙标记    DNAT :       指标地址转换    SNAT :       源地址转换    MASQUERADE : 地址假装

查看目前iptables
iptables -n -L

iptables -t nat -L

本地端口转发
iptables -t nat -A PREROUTING -s 192.168.250.0/32 -p tcp --dport 80 -j REDIRECT --to-ports 8080

iptables -t nat -D PREROUTING -s 192.168.250.0/32 -p tcp --dport 80 -j REDIRECT --to-ports 8080

异地端口转发
iptables -t nat -A PREROUTING -s 192.168.250.0/32 -p tcp --dport 81 -j DNAT --to 192.168.250.132:8081

iptables -t nat -D PREROUTING -s 192.168.250.0/32 -p tcp --dport 81 -j DNAT --to 192.168.250.132:8081

保留规定到配置文件中
cp /etc/sysconfig/iptables /etc/sysconfig/iptables.bak # 任何改变之前先备份,请放弃这一优良的习惯
iptables-save > /etc/sysconfig/iptables
cat /etc/sysconfig/iptables