在運維通訊監管平臺發現大量訪問卡在的SYN_RECV狀態,看到的netstat -antp狀態以下:centos
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:875 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN - tcp 0 0 192.168.10.81:8080 103.100.61.18:65178 SYN_RECV - tcp 0 0 192.168.10.81:8080 103.100.61.18:29562 SYN_RECV - tcp 0 0 192.168.10.81:8080 103.100.61.18:50751 SYN_RECV - tcp 0 0 192.168.10.81:8080 103.100.61.18:11666 SYN_RECV -
查了下資料。bash
https://baike.baidu.com/item/SYN%E6%94%BB%E5%87%BB/14762413?fr=aladdin
不想修改現有的服務器參數,防火牆是啥六壬網安福建本土垃圾設備,圖形頁面IP一個一個拉黑太累太慢,想了下在服務器上用iptables過濾,分享腳本服務器
#!/bin/bash #使用crontab 調用每3分鐘一次,超過6分鐘能夠判斷爲SYN*** #抓出處於SYN_RECV狀態的IP地址 記錄日誌用於分析 netstat -antp|grep "SYN_RECV"|awk -F '[ :]' '{print$27}'|sort|uniq >> $0_ip.log #分析日誌找到大於2次被掃描到的IP地址,加入防火牆 for ip in `cat $0_ip.log |sort|uniq -c|awk '{if($1>2) print$2}'` do rule=`grep "$ip" /etc/sysconfig/iptables|wc -l` #判斷規則是否存在 if [ "$rule" -ne 0 ];then echo "Firewall rule already exists" else #添加到防火牆 iptables -A INPUT -s $ip -j DROP #日誌移除IP地址 sed -i "s|\<$ip\>||" $0_ip.log #記錄添加日誌 echo "$(date "+%Y-%m-%d %H:%M:%S") $ip Add to firewall" >> $0.log fi done #centos7中沒有service iptables save指令來保存防火牆規則 iptables-save > /etc/sysconfig/iptables