一、简介
-
iptables 在使用-p选项指明了特定的协议后,无需再用-m选项指明扩展模块的扩展机制,不需要手动加
载扩展模块。
二、常用扩展项
tcp协议的扩展选项
-
[!] --source-port, --sport port[:port]:匹配报文源端口,可为端口连续范围。
-
[!] --destination-port,--dport port[:port]:匹配报文目标端口,可为连续范围 。
-
[!] --tcp-flags mask comp。
- mask 需检查的标志位列表,用
,
分隔 , 例如 SYN,ACK,FIN,RST。 - comp 在mask列表中必须为1的标志位列表,无指定则必须为0,用
,
分隔tcp协议的扩展选项。
- mask 需检查的标志位列表,用
范例一:添加规则使源地址为192.168.10.10的主机,无法访问本地主机的80端口。
iptables -AINPUT -s 192.168.10.10 -p tcp --dport 80 -j DROP
# 192.168.10.10这台主机访问本地主机提示。
curl: (7) Failed connect to 192.168.10.13:80; Connection timed out
范例二:添加规则使源地址为192.168.10.10的主机,无法与本地主机建立TCP第一次握手连接。
# TCP建立完成的不会受到影响,反之会受到影响。
iptables -t filter -AINPUT -s 192.168.10.10 -p tcp --syn -j DROP
UDP协议的扩展选项
- [!] --source-port, --sport port[:port]:匹配报文的源端口或端口范围。
- [!] --destination-port,--dport port[:port]:匹配报文的目标端口或端口范围。
ICMP协议的扩展选项
- [!] --icmp-type {type[/code]|typename}
- type/code
- 0/0 echo-reply icmp应答 。
- 8/0 echo-request icmp请求。
- type/code
范例一:拒绝请求报文。
# 拒绝ICMP协议的请求报文,可实现本地主机ping对端主机可通,对端主机ping本地主机不通。
iptables -t filter -AINPUT -s 192.168.10.10 -p icmp --icmp-type 8 -REJECT