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

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

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

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

先上規(guī)則&注釋

#禁用未初始化變量警告
uninitialized_variable_warn off;
#匹配各種 bad user agent,返回403錯誤
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賦值;這幾個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符合上面兩個條件,返回403錯誤
if ($iftemp = XY) {return 403;}

禁用未初始化變量警告,不然會不停寫入警告到錯誤日志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個以上的條件判斷,繞個路,通過給變量兩次賦值來完成2個條件判斷。

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

檢驗成果的時候到了

復(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,再也不見。

相關(guān)文章

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

    詳解Nginx 13: Permission denied 解決方案

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

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

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

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

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

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

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

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

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

    深入理解Nginx的proxy_cache模塊

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

    nginx?80端口配置多個location無效訪問404問題

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

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

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

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

    這篇文章主要為大家詳細(xì)介紹了Nginx實現(xiàn)分端口部署兩個或多個項目的相關(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等開放平臺授權(quán)獲得用戶的用戶名和密碼一般有兩種認(rèn)證方式,一種是Basic Auth,一種是OAuth,這里我們就來看一下Nginx上配置Basic Authorization登錄認(rèn)服務(wù)證的教程
    2016-06-06

最新評論