一、基本命令
iptables -nv -L 查看配置规则 more /etc/sysconfig/iptables 直接查看iptables的配置文档 /etc/init.d/iptables status查看防火墙状态 service iptables save 保存正在使用的防火墙规则 iptables -F 清空防火墙中所有的规则 iptables -F -t nat 清空iptables nat 表
二、实例演示
1、开放80端口
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
2、流量转发
1、echo 1>/proc/sys/net/ipv4/ip_forward 开启转发 2、ifconfig eth1:1 192.168.150.137 netmask 255.255.255.0 给eth0接口添加一个ip 把192.168.3.0/24网段的数据转发到eth1的192.168.150.135地址。通过源地址转换(SNAT) 或者 2、iptables -t nat -I POSTROUTING -s 192.168.3.0/24 -o eth1 -j SNAT --to-source 192.168.150.135-192.168.150.137 或者 2、iptables -t nat -A POSTROUTING -s 192.168.3.0/24 -o eth1 -j MASQUERADE 把数据包的源ip改为eht1的ip地址
3、拒绝mac地址不是00:0C:6E:AB:AB:CC的udp数据包
iptables -A INPUT -p udp -m mac --mac-source !00:0C:6E:AB:AB:CC -j DROP
三、命令解释
-A :在指定链末尾添加一条规则 -D :从指定链中删除一条或多条规则 -R : 替换规则 -I :在给出的规则序号前插入一条或多条规则,如果没有,默认1 -L :列出指定链中所有规则 -F :删除所有规则 -N :建立一个新的用户自定义链 -p :指定上一层协议 -s :指定源IP地址或子网 -d :指定目的IP或子网 -i : 指定数据包进入的网络接口名称 -o :指定数据包出去的网络接口名称 -p tcp --sport :指定Tcp数据包的源端口 -p tcp --dport :指定tcp数据包的目的端口 -m multiport : 用于指定多个端口用“,”分隔 -m mac --mac-source :指定mac地址

