匹配条件
通用匹配: -s 源IP -d 目的IP -i 指定网卡进来的数据包 -o 指定网卡向外发送的数据表
iptables -A -t filter -A INPUT -s 1.2.3.4 -d 1.2.3.5 -j ACCEPT
扩展匹配:隐含扩容 显式扩展
隐含扩容
-p 指定数据表的协议
—sport 源端口
—dport 目的端口
iptables -t filter -A INPIT -s 1.2.3.4 -p tcp -dport 22 -j ACCEPT
练习: 允许本地主机ping其他主机,其他主机不能ping本地主机*filter:INPUT DROP [0:0]:FORWARD DROP [0:0]:OUTPUT DROP [1:156]# 通过icmp type判断icmp进出状态-A INPUT -p icmp --icmp-type=0 -j ACCEPT-A OUTPUT -p icmp --icmp-type=8 -j ACCEPT
显式扩展 在使用扩展功能时 需要明确指定功能模块
格式 -m 模块名称
state: 状态扩展 可以匹配如下状态
NEW 新的连接请求
ISTABLISHED 连接成功之后状态的数据包
INVALID 非法数据包
RELATED 相关连的连接状态 ftp专用
#例子: 允许任意主机访问80端口,要求80不能访问外部服务(抵御反弹木马)*filter:INPUT DROP [0:0]:OUTPUT DROP [0:0]# 允许input的新建连接和发送数据包请求 允许ouput的发送数据表请求-A INPUT -p tcp --dport -m state --state NEW,ESTABLISHED -j ACCEPT-A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
iprange: 对ip范围进行限制<br /> --src-range 源IP段<br /> --dst-range 目标IP段
#例子: 运行让 192.168.1.100-200段主机可以访问80 能够抵御反弹式木马-A INPUT -p tcp --dport 80 -m state --state NEW,ESTABLISHED -m iprange --src-range 192.168.1.100-192.168.1.200 -j ACCEPT-A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -m iprange --src-range 192.168.1.100-192.168.1.200 -j ACCEPT
multiport: 匹配联系端口或者离散端口
-m multiport --source-ports port1,port2,port3-m multiport --source-ports port1:port2-m multiport --destination-port port1,port2,port3-m multiport --destination-port port1:port2
connlimit: 控制每个客户端IP的最大并发连接数
--connlimit-above n #匹配连接数量在n以上的连接锁发送的数据包
