一、简介

  • 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协议的扩展选项。

范例一:添加规则使源地址为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请求。

范例一:拒绝请求报文。

# 拒绝ICMP协议的请求报文,可实现本地主机ping对端主机可通,对端主机ping本地主机不通。
iptables -t filter -AINPUT -s 192.168.10.10 -p icmp --icmp-type 8 -REJECT