欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Nginx防盜鏈根據(jù)UA屏蔽惡意User Agent請(qǐng)求(防蜘蛛)

 更新時(shí)間:2016年07月01日 14:28:36   投稿:mdxy-dxy  
相對(duì)于 Apache,Nginx 占用的系統(tǒng)資源更少,更適合 VPS 使用。惡意盜鏈的 User Agent 無(wú)處不在,博客更換到 WordPress 沒(méi)幾天,就被 SPAM(垃圾留言)盯上,又被暴力破解后臺(tái)用戶名密碼。今天來(lái)介紹 Nginx 屏蔽惡意 User Agent請(qǐng)求的方法

相對(duì)于 Apache,Nginx 占用的系統(tǒng)資源更少,更適合 VPS 使用。惡意盜鏈的 User Agent 無(wú)處不在,博客更換到 WordPress 沒(méi)幾天,就被 SPAM(垃圾留言)盯上,又被暴力破解后臺(tái)用戶名密碼。以前介紹過(guò) Apache 使用 .htaccess 屏蔽惡意 User Agent,今天來(lái)介紹 Nginx 屏蔽惡意 User Agent請(qǐng)求的方法。

先上規(guī)則&注釋

#禁用未初始化變量警告
uninitialized_variable_warn off;
#匹配各種 bad user agent,返回403錯(cuò)誤
if ($http_user_agent ~* "embeddedwb|NSPlayer|WMFSDK|qunarbot|mj12bot|ahrefsbot|Windows 98|MSIE 6.0; Windows 2000|EasouSpider|Sogou web spider") {
return 403;
}
#匹配POST方法,給變量iftemp賦值
if ($request_method ~* "POST") {set $iftemp X;}
#匹配 bad user agent,給變量iftemp賦值;這幾個(gè)UA主要是發(fā)垃圾留言的
if ($http_user_agent ~* "MSIE 6.*NET|MSIE 7.*NET|MSIE 6.*SV1|MSIE 6.0; Windows NT 5.0") {
set $iftemp "${iftemp}Y";
}
#如果變量iftemp符合上面兩個(gè)條件,返回403錯(cuò)誤
if ($iftemp = XY) {return 403;}

禁用未初始化變量警告,不然會(huì)不停寫(xiě)入警告到錯(cuò)誤日志error.log,如下

復(fù)制代碼 代碼如下:

2014/09/11 09:21:11 [warn] 18649#0: *132 using uninitialized “iftemp” variable, client: 220.181.51.209, server: www.wilf.cn, request: “GET /wp-content/themes/dazzling/inc/fonts/glyphicons-halflings-regular.woff HTTP/1.0”, host: “www.wilf.cn”, referrer: “http://www.wilf.cn/”
2014/09/11 09:21:11 [warn] 18649#0: *92 using uninitialized “iftemp” variable, client: 66.249.79.55, server: www.wilf.cn, request: “GET /page/14?mod=pad&act=view&id=741 HTTP/1.1”, host: “www.wilf.cn”

Nginx 規(guī)則不支持2個(gè)以上的條件判斷,繞個(gè)路,通過(guò)給變量?jī)纱钨x值來(lái)完成2個(gè)條件判斷。

Nginx 規(guī)則也是使用正則表達(dá)式匹配字符串,分析日志,根據(jù)需要自己定制。

檢驗(yàn)成果的時(shí)候到了

復(fù)制代碼 代碼如下:

183.60.214.51 — [10/Sep/2014:22:16:18 +0800] — Bytes: 13507 — GET /?mod=pad&act=view&id=460 HTTP/1.1 — 403 — – — Mozilla/5.0 (compatible; EasouSpider; +http://www.easou.com/search/spider.html) — – — –
220.181.125.169 — [11/Sep/2014:09:38:15 +0800] — Bytes: 169 — GET /page/51?mod=wap&act=AddCom&inpId=860 HTTP/1.1 — 403 — – — Sogou web spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07) — – — –

EasouSpider 和 Sogou web spider,再也不見(jiàn)。

相關(guān)文章

  • 詳解Nginx 13: Permission denied 解決方案

    詳解Nginx 13: Permission denied 解決方案

    這篇文章主要介紹了詳解Nginx 13: Permission denied 解決方案,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • 詳解Nginx proxy_pass的一個(gè)/斜杠引發(fā)的血案

    詳解Nginx proxy_pass的一個(gè)/斜杠引發(fā)的血案

    這篇文章主要介紹了詳解Nginx proxy_pass的一個(gè)/斜杠引發(fā)的血案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • 在CentOS 7上進(jìn)行 Nginx安裝教程

    在CentOS 7上進(jìn)行 Nginx安裝教程

    這篇文章主要介紹了在CentOS 7上進(jìn)行 Nginx安裝教程,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-12-12
  • nginx+tomcat實(shí)現(xiàn)負(fù)載均衡,使用redis session共享

    nginx+tomcat實(shí)現(xiàn)負(fù)載均衡,使用redis session共享

    這篇文章主要介紹了nginx tomcat負(fù)載均衡 使用redis session共享,有興趣的同學(xué)可以了解一下。
    2016-12-12
  • nginx實(shí)現(xiàn)反向代理出現(xiàn)502的問(wèn)題解決

    nginx實(shí)現(xiàn)反向代理出現(xiàn)502的問(wèn)題解決

    本文主要介紹了nginx實(shí)現(xiàn)反向代理出現(xiàn)502的問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • 深入理解Nginx的proxy_cache模塊

    深入理解Nginx的proxy_cache模塊

    Nginx的proxy_cache模塊提供了強(qiáng)大而靈活的緩存功能,本文主要介紹了深入理解Nginx的proxy_cache模塊,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • nginx?80端口配置多個(gè)location無(wú)效訪問(wèn)404問(wèn)題

    nginx?80端口配置多個(gè)location無(wú)效訪問(wèn)404問(wèn)題

    這篇文章主要介紹了nginx?80端口配置多個(gè)location無(wú)效訪問(wèn)404問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Nginx配置PHP的Yii與CakePHP框架的rewrite規(guī)則示例

    Nginx配置PHP的Yii與CakePHP框架的rewrite規(guī)則示例

    這篇文章主要介紹了Nginx配置PHP的Yii與CakePHP框架的rewrite規(guī)則示例,是這兩款高人氣框架使用Nginx的關(guān)鍵配置點(diǎn),需要的朋友可以參考下
    2016-01-01
  • Nginx實(shí)現(xiàn)分端口部署兩個(gè)或多個(gè)項(xiàng)目的教程

    Nginx實(shí)現(xiàn)分端口部署兩個(gè)或多個(gè)項(xiàng)目的教程

    這篇文章主要為大家詳細(xì)介紹了Nginx實(shí)現(xiàn)分端口部署兩個(gè)或多個(gè)項(xiàng)目的相關(guān)教程,其中包含了反向代理配置,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-10-10
  • Nginx上配置Basic Authorization登錄認(rèn)服務(wù)證的教程

    Nginx上配置Basic Authorization登錄認(rèn)服務(wù)證的教程

    現(xiàn)在我們所使用的包括社交網(wǎng)絡(luò)API等開(kāi)放平臺(tái)授權(quán)獲得用戶的用戶名和密碼一般有兩種認(rèn)證方式,一種是Basic Auth,一種是OAuth,這里我們就來(lái)看一下Nginx上配置Basic Authorization登錄認(rèn)服務(wù)證的教程
    2016-06-06

最新評(píng)論