查看完整版本: Shell Script分享 - 來最多次的 IP, 抓前 10 名


nobody 2011-8-25 10:30

Shell Script分享 - 來最多次的 IP, 抓前 10 名

一隻簡單的 Bash Script, 找出暴力攻擊 Server 的 IP, 然後不得已的情況, 就是把他擋掉....

語法分享:
[code]
# tail -2000 /var/log/httpd/access_log | awk '{print $1}' | sort | uniq -c | sort -n | tail
[/code]

取最後進來的 2000 筆 access_log 來看, 觀察一下有沒有太誇張的 IP (特別是看有沒有是特別來亂的, ex: 開始亂塞些惡意的值)

列出大致如下:

次數 和 IP

10 xxx.xxx.xxx.x
100 xxx.xx.xx.x
300 xx.xx.x.x

... 等 10 筆
再去 grep 最大量的那些 IP, 看看是不是來亂的, 如果是來亂的, 擋掉這個IP, 或視情況擋掉那個網段(Linux):

擋掉 100.100.1.1 的 IP: iptables -I INPUT -s 100.100.1.1 -j DROP
擋掉 100.100.0.0 整個網段: iptables -A INPUT -s 100.100.0.0/24 -j DROP

解除語法:
iptables -D INPUT -s 100.100.1.1 -j DROP
頁: [1]
查看完整版本: Shell Script分享 - 來最多次的 IP, 抓前 10 名