一、Iptabels历史
在2.0内核中,防火墙操作工具叫:ipfwadm 在2.2内核中,防火墙操作工具叫:ipchains 在2.4以后的内核,防火墙操作工具叫:iptables ipfwadm 和 ipchains 比较老,已成历史版本,本章主要介绍Iptables
二、Iptables操作命令参数详解
-A APPEND,追加一条规则(放到最后) 例如: iptables -A INPUT -j ACCEPT 允许所有访问本机 IP 的数据包通过 -I INSERT,插入一条规则 例如: iptables -I INPUT -j DROP 在 filter 表的 INPUT 链里插入一条规则(插入成第 1 条) -D DELETE,删除一条规则 iptables -D INPUT 3(按号码匹配) 删除 filter 表 INPUT 链中的第三条规则(不管它的内容是什么) -R REPLACE,替换一条规则 例如: iptables -R INPUT 9 -j ACCEPT 将原来编号为 9 的规则内容替换为“-j ACCEPT” -P POLICY,设置某个链的默认规则 例如: iptables -P INPUT DROP 设置 filter 表 INPUT 链的默认规则是 DROP -F FLUSH,清空规则 例如 iptables -F 清空 filter 表中的所有规则 -p protocol 比对通讯协议 例如 iptables -A INPUT -p tcp 比对通讯协议类型是否相符 -s src, source 例如 iptables -I INPUT -s 172.16.0.201 -j DROP 用来比对封包的来源 IP,可以比对单机或网络,比对网络时请用数字来表示屏蔽,例屏蔽:172.16.0.201 IP访问,所有数据都将丢弃 --tcp-flags 比对 TCP 例如 iptables -p tcp --tcp-flags SYN,FIN,ACK SYN TCP状态旗号包括:SYN(同步)、ACK(应答)、FIN(结束)、RST(重设)、URG(紧急)、PSH(强迫推送) 等均可使用于参数中,除此之外还可以使用关键词 ALL 和 NONE 进行比对 --icmp-type 例如: iptables -A INPUT -p icmp --icmp-type 8 用来比对 ICMP 的类型编号,可以使用代码或数字编号来进行比对。 案例ICMP类型是:8 -m limit --limit 例如 iptables -A INPUT -m limit --limit 3/sec 用来比对某段时间内封包的平均流量,上面的例子是用来比对每秒平均流量是否超过一次 3 个封包。 配置文件位置: /etc/sysconfig/iptables iptables 管理服务命令 开启 service iptables start 关闭 service iptables stop 重起 service iptables restart