1

Pingdom が評判の良いサイトであることを考慮して、稼働時間監視サービスに加入してみました。しかし、私が 5 分間の間隔を設定したにもかかわらず、彼らのボットPingdom.com_bot_version_1.4は毎秒 1 回ではなく、毎秒数十回も私のサイトにアクセスし続けています! その結果、毎分数千アクセス!

次に、サービスを完全にキャンセルしようとしましたが、それでもボットに攻撃されました。robots.txt でブロックしようとしましたが、どうやら彼らはそれを窒息させているようです。次に、次のコマンドを使用して nginx.conf でブロックしようとしました。

if ($http_user_agent ~* Pingdom.com_bot) {
        return 403;
}

動作しますが、access.log に多くの 503 エラーが表示されます。このボットをログに記録しない方法は? 本当に迷惑です。彼らのサービスに加入したことを後悔しています。

4

1 に答える 1

0

これは、簡単に採用できるw00tw00t のブロックに関する投稿です。

適応する最も簡単なオプションは、おそらくfail2banのものです。

403 エラーでトリガーされる失敗の正規表現を使用します。

だから何か

[Definition]
failregex =  ^<HOST> .* "(GET|POST|HEAD).*HTTP.*" 403 [0-9]{1,} ".+" ".+"$
ignoreregex=

/etc/fail2ban/filter.d/nginx-pindotban.conf で

[pingdotban]
enabled = true
port = http,https
filter = nginx-pingdotban
logpath = /path/to/nginx/access.log
maxretry = 5
bantime = 360000

/etc/fail2ban/jail.conf 内

で正規表現をテストできます

fail2ban-regex logfile /etc/fail2ban/filter.d/nging-pingdotban.conf

また、iptableバリアントは次のようなもので採用できます

iptables -A INPUT -p tcp --dport 80 -m string --algo bm --string "the useragent" -j DROP
于 2014-08-12T18:33:31.267 に答える