nginx - 這是一個壞機器人嗎?

nginx - 這是一個壞機器人嗎?

我在 /var/log/nginx/access.log 中有這些條目:

107.155.152.109 - - [22/Mar/2018:19:20:54 +0000] "GET / HTTP/1.0" 301 193 "-" "-"
162.216.152.56 - - [22/Mar/2018:19:21:40 +0000] "GET / HTTP/1.0" 301 193 "-" "-"
60.191.48.204 - - [22/Mar/2018:19:21:52 +0000] "GET / HTTP/1.0" 200 17582 "-" "-"

他們對我來說看起來很可疑,但我對此領域的了解有限。這是怎麼回事?甚至還有其他幾個來自 107.155.xxx.xxx

據報告,其中 2 個地址出現在該網站上:https://www.abuseipdb.com/check/。它們是162.216.152.56和60.191.48.204,顯然是美國傑克遜維爾和中國。

我已經按照描述配置了fail2ban這裡因為我在使用 Ubuntu 14.04 的 Digital Ocean,但fail2ban 日誌中沒有任何內容。

答案1

據我所知,這些方面沒有什麼好擔心的。您經常會看到機器人每分鐘訪問您的網站並抓取目錄。請參閱“/etc/fail2ban/filter.d/botsearch-common.conf”和“/etc/fail2ban/filter.d/nginx-botsearch.conf”,了解fail2ban如何嘗試阻止壞機器人爬行您的網站。您也可以嘗試透過用戶代理阻止機器人。這可能是一種可以使用的方法:https://gist.github.com/hans2103/733b8eef30e89c759335017863bd721d

但我的建議是忽略機器人,如果您的配置是乾淨的,則不必太擔心。

答案2

每天都會發生一個簡單的GET事件- 以及大量其他機器人產生的流量。/如果您運行的是可以公開存取的網路伺服器,那麼浪費資源來做任何事情幾乎沒有意義。從字面上看,這就是它的用途。事實上,有些回應301表示您正在使用虛擬主機,並且請求傳入時沒有有效Host標頭,而您的 Nginx 設定是將它們重新導向到您的預設虛擬主機。

不執行任何操作的原因fail2ban是因為它所看到的流量都沒有被偵測為惡意。預設情況下,它將監視腳本掃描程式、HTTP 身份驗證暴力和其他惡意模式。

答案3

您只需將此程式碼新增至 nginx 程式碼開頭的伺服器標記之前,即可忽略網站最常見的機器人。

map $http_user_agent $limit_bots {
     default 0;
     ~*(google|bing|yandex|msnbot) 1;
     ~*(AltaVista|Googlebot|Slurp|BlackWidow|Bot|ChinaClaw|Custo|DISCo|Download|Demon|eCatch|EirGrabber|EmailSiphon|EmailWolf|SuperHTTP|Surfbot|WebWhacker) 1;
     ~*(Express|WebPictures|ExtractorPro|EyeNetIE|FlashGet|GetRight|GetWeb!|Go!Zilla|Go-Ahead-Got-It|GrabNet|Grafula|HMView|Go!Zilla|Go-Ahead-Got-It) 1;
     ~*(rafula|HMView|HTTrack|Stripper|Sucker|Indy|InterGET|Ninja|JetCar|Spider|larbin|LeechFTP|Downloader|tool|Navroad|NearSite|NetAnts|tAkeOut|WWWOFFLE) 1;
     ~*(GrabNet|NetSpider|Vampire|NetZIP|Octopus|Offline|PageGrabber|Foto|pavuk|pcBrowser|RealDownload|ReGet|SiteSnagger|SmartDownload|SuperBot|WebSpider) 1;
     ~*(Teleport|VoidEYE|Collector|WebAuto|WebCopier|WebFetch|WebGo|WebLeacher|WebReaper|WebSauger|eXtractor|Quester|WebStripper|WebZIP|Wget|Widow|Zeus) 1;
     ~*(Twengabot|htmlparser|libwww|Python|perl|urllib|scan|Curl|email|PycURL|Pyth|PyQ|WebCollector|WebCopy|webcraw) 1;
 }

這到您的/位置

    location / {
            ...........
            if ($limit_bots = 1) {
                    return 403;
            }
    }

相關內容