/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を設定しましたここ私は Digital Ocean で Ubuntu 14.04 を使用していますが、fail2ban ログには何も表示されません。
答え1
私が言えることは、これらの行に心配することはないということです。ボットが Web サイトにアクセスし、ディレクトリを毎分クロールしているのを目にすることは珍しくありません。fail2ban が悪質なボットによる Web サイトのクロールを阻止しようとしている方法を確認するには、「/etc/fail2ban/filter.d/botsearch-common.conf」と「/etc/fail2ban/filter.d/nginx-botsearch.conf」を参照してください。ユーザー エージェントでボットをブロックすることもできます。これは、使用できる 1 つのアプローチです。https://gist.github.com/hans2103/733b8eef30e89c759335017863bd721d
しかし、私のアドバイスは、ボットを無視することです。設定がクリーンであれば、それについてあまり心配する必要はありません。
答え2
単純なGET
は/
、他の多くのボット生成トラフィックとともに、毎日一日中発生します。パブリックにアクセスできる Web サーバーを実行している場合、これに対処するためにリソースを無駄にすることはほとんど意味がありません。文字通り、これが Web サーバーの存在意義です。一部に が応答するという事実は、301
仮想ホストを使用しており、リクエストが有効なHost
ヘッダーなしで受信され、Nginx 設定がそれらをデフォルトの仮想ホストにリダイレクトすることを示唆しています。
何もしない理由fail2ban
は、検出されたトラフィックがいずれも悪意のあるものとして検出されなかったためです。デフォルトでは、スクリプト スキャナー、HTTP Auth ブルート フォース、その他の悪意のあるパターンを監視します。
答え3
このコードを nginx コードの先頭のサーバー タグの前に追加するだけで、Web サイトで最も一般的なボットを無視できます。
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;
}
}