Just another IT site ※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。At Your Own Risk!! TURN BACK WHILE YOU CAN
PR

fail2banでGoogleのクローラーIPを制限しないようにする

※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。スクリプトはAI生成のものも多いのでコピー&ペーストの際は文字コードに注意ください!

サイトの移転を繰り返しているので、404エラーでGoogleのクローラーをブロックとかしてないかな、ということで設定

【AIによる回答】

Fail2banでGoogleのクローラー(Googlebot)やGoogle Cloud (GCP) のサービスからの通信を誤ってブロックしないようにするためには、jail.local ファイルの ignoreip 設定に許可したいIPアドレス範囲(CIDR)を追加するのが最も効果的です。
以下に具体的な設定方法と、GoogleのIP範囲の情報をまとめました。
1. Fail2banのホワイトリスト設定(ignoreip)
/etc/fail2ban/jail.local (または /etc/fail2ban/jail.conf) を編集して、信頼するIPを追加します。
ini
[DEFAULT]
# すでに設定されているIPの後にスペースで区切って追加
ignoreip = 127.0.0.1/8 ::1 <あなたの社内IP> 66.249.66.0/24 66.249.64.0/19
設定を反映させるには、fail2ban-client reload コマンドを実行します。
2. GoogleのIPアドレス範囲 (Googlebot)
Googlebotは変動する可能性があるため、特定の固定IPだけでは不十分です。通常、以下のIP範囲がよくホワイトリストに使用されます(最終的にはGoogleの公式ドキュメントを確認してください)。
  • Googlebotの広範囲指定:66.249.64.0/19
  • より詳細な範囲:66.249.66.0/2466.249.64.0/24 などのサブネット
注意: Googleのボットは逆引きDNSルックアップ (*.googlebot.com) で検証可能ですが、Fail2banの ignoreip はCIDR指定が一般的です。
3. Google Cloud (GCP) の場合
もしGoogle Cloud Load Balancer (GCP LB) を使用しており、その送信元IPをホワイトリストに入れたい場合は、GCPが公式に提供している「GoogleのIP範囲」をJSON形式で取得し、それをCIDR形式に変換して ignoreip に追加する必要があります。
  • GCP LBのヘルスチェックIP範囲:130.211.0.0/2235.191.0.0/16
4. 設定反映の確認
fail2ban-client status コマンドで設定が反映されているか確認できます。
補足: 誤ってBanされたIPの解除
すでにGooglebotがBanされてしまっている場合は、以下のコマンドで解除できます。
bash
fail2ban-client set <jail_name> unbanip 66.249.xx.xx
まとめ:推奨設定
/etc/fail2ban/jail.local の ignoreip に以下を含めることを推奨します。
  • 127.0.0.1/8 (自分自身)
  • 66.249.64.0/19 (Google クローラー用)
  • 35.191.0.0/16130.211.0.0/22 (GCP内部通信用)

設定後

/var/log/fail2ban.log

を見ると今回追加した範囲のアドレスをIgnoreしてたので、設定しておいてよかったということかな。ちなみにGoogle以外のクローラーはいまんとこ全部弾きでよいです。なんだかんだいって、ITの調べ物はGoogleでしょ。

 

タイトルとURLをコピーしました