标签:iptables
规则的编写格式:
iptables [-t table] COMMAND chain [-m matchname [per-match-options]] [-j targetname [per-target-options]]
链:
-P:policy,策略,定义默认策略; 一般有两种选择,ACCEPT和DROP; -N:new,新建一条自定义的规则链;被内建链上的规则调用才能生效;[-j chain_name]; -X:drop,删除自定义的引用计数为0的空链; -F:flush,清空指定的链; -E:重命名自定义的引用计数和为0的链;
规则:
-A:append,追加,在指定链的尾部追加一条规则; -I:insert,插入,在指定的位置(省略位置时表示链首)插入一条规则; -D:delelte,删除,删除指定的规则; -R:replace,替换,将指定的规则替换为新规则;不能仅修改规则中的部分,而是整条规则完全替换;
查看:
-L:list,列出表中的链上的规则; -n:numeric,以数值格式显示; -v:verbose,显示详细格式信息; -vv, -vvv --line-numbers:显示链中的规则编号
基本匹配条件:
-s:报文中的源IP地址 -d:报文中的目标IP地址 -p:协议类型 (如tcp|udp|icmp) -i:数据报文的流入接口 INPUT, FORWARD and PREROUTING -o:数据报文的流出接口 FORWARD, OUTPUT and POSTROUTING
显式扩展:
1、multiport扩展
以离散或连续的方式定义多端口匹配条件
--source-ports,--sports port[,port|,port:port]...:指定多个源端口 --destination-ports,--dports port[,port|,port:port]...:指定多个目标端口 --ports port[,port|,port:port]...:指定多个端口
2、iprange扩展
以连续的ip地址范围指明连续的多地址匹配条件
--dst-range from[-to]:目标IP地址 --src-range from[-to]:源IP地址
3、string扩展
对报文中的应用层数据做字符串匹配检测;
--string pattern:要检测字符串模式 --algo {bm|kmp}
4、time扩展
根据报文到达的时间与指定的时间范围进行匹配度检测;
--datestart YYYY[-MM[-DD[Thh[:mm[:ss]]]]]:起始日期时间; --datestop YYYY[-MM[-DD[Thh[:mm[:ss]]]]]:结束日期时间; --monthdays day --weekdays day
5、connlimit扩展
根据每客户端IP做并发连接数匹配 --connlimit-upto n:连接数数量小于等于n --connlimit-above n:连接数数量大于n
6、limit扩展
基于收发报文的速率进行匹配
--limit rate[/second|/minute|/hour|/day]:平均速率 --limit-burst number:峰值速率
7、state扩展
状态检测;连接追踪机制
INVALID:无法识别的状态; ESTABLISHED:已建立的连接; NEW:新连接; RELATED:相关联的连接; UNTRACKED:未追踪的连接;
标签:iptables
原文地址:http://sdwcg.blog.51cto.com/3171500/1829660