见名知义,”–tcp-flags”指的就是tcp头中的标志位,看来,在使用iptables时,我们可以通过此扩展匹配条件,去匹配tcp报文的头部的标识位,然后根据标识位的实际情况实现访问控制的功能。
Nmap是主动扫描工具,用于对指定的主机进行扫描。
使用TCP协议对主机进行扫描(-sT、-sS选项)
三次握手过程:主动端先发送SYN报文,被动端回应SYN+ACK报文,然后主动端再回应ACK
利用三次握手原理,namp向目标先发送SYN报文,如果对方回应SYN+ACK,说明目标在线。
全开扫描(-sT选项):完成了3次握手的扫描称为“全开扫描”
半开扫描(-sS选项):由于3次握手中,最后一步的意义不大,所以扫描的时候,第三步没有进行的扫描称为“半开扫描”
利用tcp-flags限制nmap扫描
filter表中添加一条规则:
iptables -t filter -I INPUT -s 192.168.160.132 -p tcp -m tcp --dport 22 --tcp-flags ALL SYN -j REJECT
查看filter表中的规则:
iptables --line-numbers -t filter -nvxL INPUT
用nmap扫描工具进行扫描
nmap -sS 192.168.160.100
删除刚才新建的规则:
iptables -t filter -D INPUT 1
再次用nmap工具进行扫描