您可以阻止任何具有GET / POST請求的http用戶代理,nginx回應403以防止嘗試利用軟件漏洞 使用以下語法

vi /etc/nginx/nginx.conf

在以下區段增加內容
location ~ \.php$ {
.....
}

## Block http user agent - wget ##
if ($http_user_agent ~* (Wget) ) {
   return 403;
}
 
## Block Software download user agents ##
     if ($http_user_agent ~* LWP::Simple|BBBike|wget|YisouSpider) {
            return 403;
     }

從其它機器測試會回應403代表設置正常

wget 192.168.1.7

--2016-11-15 08:43:56-- http://192.168.1.7/

Connecting to 192.168.1.7:80... connected.
HTTP request sent, awaiting response... 403 Forbidden
2016-11-15 08:43:56 ERROR 403: Forbidden.

也可以用curl測試

curl -I -A "YisouSpider" 192.168.1.7

curl -I -A "YisouSpider" 192.168.1.7
HTTP/1.1 403 Forbidden
Server: nginx
Date: Tue, 15 Nov 2016 00:44:27 GMT
Content-Type: text/html; charset=utf-8,gbk,big5
Content-Length: 162
Connection: keep-alive
Vary: Accept-Encoding

參考資源

https://www.cyberciti.biz/faq/unix-linux-appleosx-bsd-nginx-block-user-agent/

http://www.111cn.net/sys/nginx/58664.htm

屏蔽疯狗爬虫YisouSpider

 

By tony

自由軟體愛好者~喜歡不斷的思考各種問題,有新的事物都會想去學習嘗試 做實驗並熱衷研究 沒有所謂頂天的技術 只有謙虛及不斷的學習 精進專業,本站主要以分享系統及網路相關知識、資源而建立。 Github http://stnet253.github.io

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料