Nginx+iptables屏蔽訪問Web頁面過于頻繁的IP(防DDOS,惡意訪問,采集器)
更新時間:2010年11月09日 22:00:22 作者:
通過分析nginx的日志來過濾出訪問過于頻繁的IP地址,然后添加到nginx的blockip.conf,并重啟nginx.
腳本如下:
#!/bin/sh
nginx_home = /Data/app_1/nginx
log_path = /Data/logs
/usr/bin/tail -n50000 $log_path/access.log \
|awk ‘$8 ~/aspx/{print $2,$13}' \
|grep -i -v -E “google|yahoo|baidu|msnbot|FeedSky|sogou” \
|awk ‘{print $1}'|sort|uniq -c |sort -rn \
|awk ‘{if($1>150)print “deny “$2″;”}'> $nginx_home/conf/vhosts/blockip.conf
/bin/kill -HUP `cat $nginx_home/nginx.pid`
也可以通過分析nginx日志過濾出頻繁訪問IP,直接用iptables屏蔽這個IP,就用不著重啟nginx了,并且屏蔽效果更好。
單個IP的命令是
iptables -I INPUT -s 124.115.0.199 -j DROP
封IP段的命令是
iptables -I INPUT -s 124.115.0.0/16 -j DROP
封整個段的命令是
iptables -I INPUT -s 194.42.0.0/8 -j DROP
封幾個段的命令是
iptables -I INPUT -s 61.37.80.0/24 -j DROP
iptables -I INPUT -s 61.37.81.0/24 -j DROP
剛才不小心搞的自己都連不上了-_-!!!
iptables -I INPUT -p tcp –dport 80 -s 124.115.0.0/24 -j DROP
以后用這種只封80端口就行了,不會出問題!
iptables -I INPUT -p tcp –dport 80 -s 124.115.0.0/24 -j DROP
iptables -I INPUT -s 61.37.81.0/24 -j DROP
解封
iptables -F
清空
iptables -D INPUT 數(shù)字
復制代碼 代碼如下:
#!/bin/sh
nginx_home = /Data/app_1/nginx
log_path = /Data/logs
/usr/bin/tail -n50000 $log_path/access.log \
|awk ‘$8 ~/aspx/{print $2,$13}' \
|grep -i -v -E “google|yahoo|baidu|msnbot|FeedSky|sogou” \
|awk ‘{print $1}'|sort|uniq -c |sort -rn \
|awk ‘{if($1>150)print “deny “$2″;”}'> $nginx_home/conf/vhosts/blockip.conf
/bin/kill -HUP `cat $nginx_home/nginx.pid`
也可以通過分析nginx日志過濾出頻繁訪問IP,直接用iptables屏蔽這個IP,就用不著重啟nginx了,并且屏蔽效果更好。
單個IP的命令是
iptables -I INPUT -s 124.115.0.199 -j DROP
封IP段的命令是
iptables -I INPUT -s 124.115.0.0/16 -j DROP
封整個段的命令是
iptables -I INPUT -s 194.42.0.0/8 -j DROP
封幾個段的命令是
iptables -I INPUT -s 61.37.80.0/24 -j DROP
iptables -I INPUT -s 61.37.81.0/24 -j DROP
剛才不小心搞的自己都連不上了-_-!!!
iptables -I INPUT -p tcp –dport 80 -s 124.115.0.0/24 -j DROP
以后用這種只封80端口就行了,不會出問題!
iptables -I INPUT -p tcp –dport 80 -s 124.115.0.0/24 -j DROP
iptables -I INPUT -s 61.37.81.0/24 -j DROP
解封
iptables -F
清空
iptables -D INPUT 數(shù)字
您可能感興趣的文章:
相關(guān)文章
Nginx+Tomcat的服務(wù)器端環(huán)境配置詳解
這篇文章主要介紹了Nginx+Tomcat的服務(wù)器端環(huán)境配置詳解,包括Nginx與Tomcat的監(jiān)控開啟方法,需要的朋友可以參考下2015-12-12使用log_format為Nginx服務(wù)器設(shè)置更詳細的日志格式方法
下面小編就為大家分享一篇使用log_format為Nginx服務(wù)器設(shè)置更詳細的日志格式方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03前端部署項目后nginx轉(zhuǎn)發(fā)接口404(頁面正常)詳解
一個網(wǎng)站項目,肯定是避免不了404頁面的,下面這篇文章主要給大家介紹了關(guān)于前端部署項目后nginx轉(zhuǎn)發(fā)接口404(頁面正常)的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-06-06教你利用Nginx 服務(wù)搭建子域環(huán)境提升二維地圖加載性能的步驟
這篇文章主要介紹了利用 Nginx 服務(wù)搭建子域環(huán)境提升二維地圖加載性能,本文分步驟通過實例代碼給大家介紹的非常詳細,需要的朋友參考下吧2021-09-09nginx rewrite 偽靜態(tài)配置參數(shù)和使用例子
nginx下偽靜態(tài)配置參數(shù)詳細說明,使用nginx的朋友,nginx rewrite 偽靜態(tài)配置參數(shù)和使用例子 附正則使用說明2010-07-07SpringBoot前端后端分離之Nginx服務(wù)器下載安裝過程
Nginx是一款輕量級的Web服務(wù)器/反向代理服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器,這篇文章主要介紹了SpringBoot前端后端分離之Nginx服務(wù)器,需要的朋友可以參考下2022-08-08Nginx 實現(xiàn)灰度發(fā)布的三種方法總結(jié)
這篇文章主要介紹了Nginx 實現(xiàn)灰度發(fā)布的三種方法總結(jié)的相關(guān)資料,需要的朋友可以參考下2017-05-05