链MyLAN1,转发自/至192.168.1.0/24网段的数据包均交给该链中的规则处理.
[root@localhost ~]# iptables -t filter -N MyLAN1
[root@localhost ~]# iptables -A FORWARD -s 192.168.1.0/24 -j MyLAN1
[root@localhost ~]# iptables -A FORWARD -d 192.168.1.0/24 -j MyLAN1
[root@localhost ~]# iptables -A MyLAN1 -p icmp -j DROP
例2.31 将当前调试好的iptables规则保存到配置文件,并通过iptables服务脚本自动加载.
[root@localhost ~]# iptables-save > /etc/sysconfig/iptables
[root@localhost ~]# service iptables restart
[root@localhost ~]# chkconfig --level 35 iptables on
例2.32 从已保存的规则配置文件中导入iptables规则.
[root@localhost ~]# iptables-restore < /etc/sysconfig/iptables
例2.33 在脚本文件中预先将防火墙主机的IP地址、网络接口、局域网地址等定义为变量.
INET_IP="214.36.25.14"
INET_IF="eth1"
LAN_IP="192.168.1.4"
INET_IF="eth0"
例2.34 在脚本文件中预先加载iptables需要用到的内核模块
/sbin/depmod -a //检测所有模块的依赖关系
/sbin/modprobe ip_tables //加载iptables基本模块
/sbin/modprobe ip_conntrack //加载连接跟踪功能模块
/sbin/modprobe iptable_filter //加载规则表功能模块
/sbin/modprobe iptable_nat
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_raw
/sbin/modprobe ipt_REJECT //加载部分扩展功能模块(根据实际使用情况选择)
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_iprange
/sbin/modprobe xt_state
/sbin/modprobe xt_multiport
/sbin/modprobe xt_mac
/sbin/modprobe xt_limit
/sbin/modprobe ip_nat_ftp //加载支持对FTP连接进行nat转换的功能模块
/sbin/modprobe ip_nat_irc
/sbin/modprobe ip_conntrack_ftp //加载支持FTP连接跟踪的功能模块
/sbin/modprobe ip_conntrack_irc
例2.35 在脚本文件中开启防火墙主机的路由转发功能.
/sbin/sysctl -w net.ipv4.ip_forward=1
或者
echo 1 > /proc/sys/net/ipv4/ip_forward
例2.36 通过修改/etc/sysctl.conf文件的方式开启防火墙主机的路由转发功能.
[root@localhost ~]# vi /etc/sysctl.conf //查找修改以下行
net.ipv4.ip_forward=1
[root@localhost ~]# sysctl -p //重新加载/etc/sysctl.conf文件中的sysctl配置
例2.37 删除用户自定义的链,清空已存在的规则,将filter表的默认策略恢复为允许.
/sbin/iptables -X
/sbin/iptables -t nat -X
/sbin/iptables -t mangle -X
/sbin/iptables -F
/sbin/iptables -t nat -F
/sbin/iptables -t mangle -F
/sbin/iptables -t raw -F
/sbin/iptables -p INPUT ACCEPT
/sbin/iptables -p OUTPUT ACCEPT
/sbin/iptables -p FORWARD ACCEPT
例3.1 设置MASQUERADE策略,使192.168.1.0/24网段能够通过网关的ppp0连接共享上网.
[root@localhost ~]# iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o pppo -j MASQUERADE
例3.2 使用“layer7”显式匹配策略过滤使用qq、msn、edonkey等应用层协议的数据访问.
[root@localhost ~]# iptables -A FORWARD -m layer7 --17proto qq -j DROP
[root@localhost ~]# iptables -A FORWARD -m layer7 --17proto msn-filetransfer -j DROP
[root@localhost ~]# iptables -A FORWARD -m layer7 --17proto msnmessenger -j DROP
[root@localhost ~]# iptables -A FORW |