クローラーやボットから大量のリクエストを受け取りますが、それはビジネスに価値をもたらしませんか?
毎日何千ものクローラー/ボットがサイトを訪問しますが、役立つものはほとんどありません。それらの中には、悪質なボットまたはスパムとみなされるものもあります。
Web サイトにアクセスしているすべてのボットをどのようにして知ることができますか?
まあ、簡単な答えはありません。これを確認するには、Web サーバーのaccess.log
ファイルを確認し、User-Agent 列を探す必要があります。 Googlebot を除くすべてのボットをリストしたい場合は、access.log ファイルが存在する Web サーバーで次のコマンドを実行するとします。
grep bot access.log |grep -v Googlebot
こんなにたくさんあるとびっくりしますか?
ログを確認したときもそうでした。
root@gf-prod:nginx# grep bot access.log |grep -v Googlebot | wc -l
616834
root@gf-prod:nginx#
何かをブロックする前に、ブロックしていないことを確認するためにそれらを確認する必要があります。これはビジネスで必要な場合があります。これを実現する方法はたくさんありますが、私は常に端でブロックすることを好みます。
理由は簡単です。まったく必要のないリクエストを Web サーバーにヒットさせる必要があるからです。
見出しのように、Cloudflare ファイアウォールを使用して不要なボットをブロックする方法を見てみましょう。
注: 大規模なビジネスからエンタープライズまでのビジネスを運営している場合は、 Cloudflare ボット管理サービスに興味があるかもしれません。
- Cloudflareにログインする
- [ファイアウォール] タブに移動し、ファイアウォール ルールを作成してファイアウォール ルールを作成します。
- ルール名を入力してください
- ユーザー エージェントとしてフィールドを選択し、内容としてオペレーターを選択し、ブロックするボット名として値を選択します
- or 条件を使用して 1 つのルールに複数のボットを追加します
注: 上の画像で言及されているボットは説明のみを目的としています。必要ありません。それらは悪いボットです。
- 次にアクションをブロックとして選択してデプロイします
- 式がわかっている場合は、GUI に従う代わりに、[式の編集] をクリックして式を作成することもできます。デプロイが完了すると、新しく作成されたルールがリストに表示され、有効になるにはステータスが ON になるはずです。
簡単ですね。
ファイアウォール ルールを使用して他に何ができるでしょうか?
セキュリティを向上させるには、さらに多くのことが必要です。次のブロック条件を見てみましょう。
- リクエストが特定の ASN、IP アドレスから送信されている場合
- 一致する Cookie、リファラー、X-Forwarded-for キーワード
- リクエストの処理を国全体に制限する
- PUT、DELETE、OPTIONS、PURGE などの不要な HTTP メソッドを無効にします。
さらにオプションも…
GUI ビルダーを使用するか、式を作成して行うことができます。変更の適用はほぼ瞬時に行われます。
結論
Cloudflare ファイアウォール ルールは、ダウンタイムなしでネットワーク エッジで Web アプリケーションの保護を追加する優れた方法です。まだ使用していない場合は、アプリケーションのセキュリティを強化し、DDoS やその他のオンラインの脆弱性から保護するために、Cloud WAF の使用を検討することもできます。