歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> Linux文化 >> 自動封殺非法連接FTP的IP的方法

自動封殺非法連接FTP的IP的方法

日期:2017/2/27 11:50:22   编辑:Linux文化

由於提供了FTP下載而又限制了線程,所以總發現有人不斷用多線程進行嘗試,這樣會大大增加服務器的負荷,這種事“損人不利己”!

為了“懲罰”這種人,決定寫個SHELL,在crond裡每1分鐘運行一次,自動統計非法線程的IP和線程數量,然後自動將他的IP地址寫到iptables裡,阻擋!

vi /usr/local/sbin/fuckgo 代碼:

#! /bin/bash fuck_who() { netstat -an|grep \\"210.51.184.197:21\\"|grep -v LISTEN| grep -v ESTABLISHED|awk \\'{print $5;}\\'|awk -F\\'=\\' \\'{print $1;}\\'|sort|uniq -c|awk \\'{print $1\\"=\\"$2;}\\' }

for _un in $(fuck_who) do if [ $(echo $_un|awk -F\\'=\\' \\'{print $1;}\\') -gt 9 ] then iptables -I INPUT -s $(echo $_un|gawk -F\\'=\\' \\'{print $2;}\\') -p tcp --dport 21 -j DROP fi done

vi /etc/crontab 添加 代碼:

00-59/1 * * * * root /usr/local/sbin/fuckgo

/etc/rc.d/init.d/crond restart

具體效果可以參看

[myimg]http://platinum.3322.org/mrtg/proftpd-day.png[/myimg]

藍色是總連接數,橙色是有效連接數

當藍色超過橙色很多時,證明有人在貪得無厭地進行多線程嘗試

從圖上可以看出,藍色瞬間值很高,但轉瞬而逝,不會持續很久,因為那個人的IP已經進入了iptables“黑名單”。


Copyright © Linux教程網 All Rights Reserved