問題タブ [fail2ban]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
nginx - Web クローラーの過負荷サイト
Yahoo、Google、Yandex、Bing Ahrefs などのすべてのサイトが同時にインデックスに登録され、Web サイトが停止してしまうという問題が、多くのサイトで発生しています。
ソース IP をブロックするように fail2ban を構成しましたが、これらは永久に変化するため、理想的ではありません。robots.txt も使用してみましたが、ほとんど違いはありません。
サイトをcloudflareの背後に置いてみましたが、これもほとんど違いがなく、できることはソースIPをブロックすることだけです.
他に何ができますか?
現在、サイトが応答しなくなったときに nginx を再起動する Nagios でサイトを監視していますが、これは理想とはほど遠いようです。
nginx を実行している Ubuntu サーバー
robots.txt ファイルは次の場所にあります:-
開発者に試してもらうことができる何かがある場合に備えて、ここに投稿します。
ありがとう
nginx - fail2ban nginx ignoreregex が機能しない
私は Rails アプリを持っていますが、アセットに関連するリクエストは無視されます。次の正規表現をignoreregex
設定に入れると、どの行にも一致しませんが、に入れるとfailregex
、行を正しく識別します。
ignoreregex = (?i)^<HOST> - .* "GET .*/(assets|site_images|site_scripts)/.*
「無視」とカウントしたいログ行の例:
XX.XX.XX.XX - - [30/Aug/2017:02:01:40 +0000] "GET /assets/logo-1a29bc0c23e29be7ca1f27d9fd90d735adb61e94562db7478d9f6c445205da5c.jpg HTTP/1.1" 200 32279 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.34 (KHTML, like Gecko) wkhtmltopdf_linux_amd64 Safari/534.34" "-"
Fail2Ban バージョン: v0.9.3
Ubuntu 16.04.2 LTS