iptables命令基本用法
# man iptables NAME iptables — administration tool for IPv4 packet filtering and NAT SYNOPSIS iptables [-t table] {-A|-C|-D} chain rule-specification iptables [-t table] -I chain [rulenum] rule-specification iptables [-t table] -R chain rulenum rule-specification iptables [-t table] -D chain rulenum iptables [-t table] -S [chain [rulenum]] iptables [-t table] {-F|-L|-Z} [chain [rulenum]] [options...] iptables [-t table] -N chain iptables [-t table] -X [chain] iptables [-t table] -P chain target iptables [-t table] -E old-chain-name new-chain-name rule-specification = [matches...] [target] match = -m matchname [per-match-options] target = -j targetname [per-target-options]
# iptables -t 表名 -L 列出所有规则 -n 以数值方式显示
# iptables [-t table] -N chain 创建一条自定义的空规则链 # iptables [-t table] -X chain 删除一条自定义的空规则链 # iptables [-t table] -E old-chin-name new-chain-name 为链表改名 # iptables [-t table] -P chain name target 为链表指定默认策略
# iptables [-t table] {-F|-L|-Z} [chain [rulenum]] [options...] -F:清空链中的规则 -L:list 列出表中的所有规则 -Z:把规则的计数器清零
# iptables [-t table] {-A|-D} chain rule-specification -A:append,附加一条规则 rule-specification:匹配条件 -j 处理机制 匹配条件:(通用匹配) -s 匹配源地址,可以IP,也可以网络地址:可以使用!操作符取反,!172.168.0.0/16 相当于 --src,或 --source -d 匹配目标地址,可以IP,也可以网络地址:可以使用!操作符取反,!172.168.0.0/16 -p 匹配协议,通常只能使用{TCP|UDP|ICMP}三者之一 -i 数据报文流入的接口,通常只用于INPUT,FORWARD和PREROUTING -o 数据报文流出的接口,通常只用OUTPUT,FORWARD和POSTROUTING 扩展匹配 -m 扩展模块名称 --专用选项1 --专用选项2 模块名称及其常用选项 multiport --source-ports --destination-ports --ports iprange [!]--src-range from[-to] time --datestart --datestop --weekday string --alog {bm|kmp} --string "String" limit --limit-burst # state --state # 5种状态 NEW:新发起的一个连接 ESTABLISHED(netfilter内部维持的会话列表) RELATED(相关联的命令)(仅仅第一次) INVALID(无法识别) UNTRACKED:未被追踪连接