クラウドフレアで特定の国と特定のIPのみにアクセスを許可する

クラウドフレア(Cloudflare)は、ウェブサイトのCDN、DDoS保護、セキュリティ、DNSなどを提供するグローバルインターネットインフラサービスです。ディドスなどの攻撃の危険がある場合、クラウドフレアを利用すれば効果的に防御できます。

クラウドフレア セキュリティルールでは、特定の国だけがアクセスを許可し、残りの国の場合は特定のIPアドレスのみを接続するように設定したい場合があります。別のシナリオでは、特定の国だけがアクセスをブロックし、ブロックされた国のユーザーのうち特定のIPのみを許可するように設定する必要がある場合があります。

クラウドフレアで特定の国と特定のIPのみにアクセスを許可する

クラウドフレアで特定の国と特定のIPのみにアクセスを許可する

この WordPress ブログは2024年8月から9月の1ヶ月間に集中的なディドス攻撃を受けたことがあります。当時 クラウドウェイズの助けを借りて、攻撃IPをブロックし、ドメインをクラウドフレアに接続することで、Didos攻撃を防御することができました。

ディドス攻撃を頻繁に受ける場合は、クラウドフレアと連動し、必要に応じてサーバーサイズをアップグレードして対応できます。攻撃が発生した場合、クラウドフレアからUnder Attackモードに切り替えてWebホスティング会社に連絡して攻撃に利用されるIPをブロックすればある程度の攻撃は防御が可能になるでしょう。

このブログは現在、Didos攻撃の恐れがなく、クラウドフレアでプロキシを解除しましたが、クラウドフレアプロキシを利用する当時、中国など一部の国への接続を遮断しました。

特定の国に対してのみアクセスを許可し、残りの国の場合は特定のユーザーのIPを登録して許可したい場合があります。

この場合について」How to allow US region and other specific IP address「というタイトルのクラウドフレアコミュニティの記事で扱っています。

大韓民国のみを許可し、他の国々はすべてブロックしますが、他の国々では特定のIPだけに接続することを許可する方法について簡単に見てみましょう。 (下記の内容を参考にして、特定のIPのみを遮断するように設定することもできます。)

1 クラウドウェイズアカウントにログインして、 アカウント管理»設定»リストに移動し、 リストの生成 ボタンをクリックします。無料プランでは1つのリストのみが許可されます。

クラウドウェイズホワイトリストホワイトリスト作成

2 リストの生成 画面が表示されたら、識別子の名前(whitelistなど)を指定し、説明フィールドに適切な説明を追加したら、[作成]ボタンをクリックして新しいリストを作成します。

許可IPリスト

3 リストにIPエントリを追加します。 CSVアップロード ボタンを押してCSVファイルをアップロードすることもできます。

ホワイトリストにIPエントリを追加する

マイコンピュータに接続されているインターネット回線のIPアドレスは、 Naverで「マイIP」と入力して確認できます。

4 今、個々のサイトをクリックしてから、セキュリティ»セキュリティルールに進みます。 ルールの作成 ボタンを押してカスタムセキュリティルールを作成します。

クラウドフレアセキュリティルールの作成

5 下の図を参照して、特定の国と特定のIPへの接続を許可するセキュリティルールを追加できます。

クラウドフレア新しいカスタムルール

許可するIPアドレスのリストは、「IPソースアドレス」→「リストにはありません」を順番に選択し、リストから先に作成したホワイトリストのリストを選択します。

特定の国だけをブロックし、ブロックされた国では特定のIPのみ接続が可能にしたい場合

たとえば、中国の訪問者をブロックし、他の国々は許可しますが、中国の一部のIPアドレスへの接続を許可する必要がある場合があります。

特定の国だけをブロックし、ブロックされた国では特定のIPのみ接続が可能にしたい場合

この場合、次のようにルールを設定できます。

中国のみの接続をブロック

複数の国をブロックしたい場合は、次の式を使用できます。

(not ip.src in $whitelist) and ((ip.geoip.country eq "CN") or (ip.geoip.country eq "AM") or (ip.geoip.country eq "RU") or (ip.geoip.country eq "ID") or (ip.geoip.country eq "BR") or (ip.geoip.country eq "HK"))

特定の国の接続のみを許可し、残りの国の場合は、特定のIPアドレスに対応するユーザーのみが接続を許可したい場合は、次の式を利用できます。

(not ip.src in $whitelist) and not (ip.geoip.country in {"KR" "JP"})

韓国や日本の訪問者でない国や他の国の場合、ホワイトリストに登録されていないIPの接続はブロックされます。ブロックすると、次のように「Sorry、you have been blocked」画面が表示されます。

クラウドフレアブロック画面

上記の情報をもとに、さまざまなシナリオに合わせて応用できます。

参照

4のコメント

コメントを残す

  1. クラウドフレアを活用した特定の国やIPブロック設定が本当に面白いですね。セキュリティの観点から、このように詳細にアクセスできることが印象的です。特にディドス攻撃を経験した経験があるので、実際の防御方法に対する悩みがたくさん感じられます。

    返信
    • 特定の国をブロックするなど、セキュリティを詳細に設定したい場合は、クラウドフレアが良い選択のようです。 WordPressでこの機能を実装するにはプラグインを使用する必要がありますが、Cluffleはこの機能を無料で提供していますので、ありがとうございます。

      返信
  2. 本当に便利な情報ですね!クラウドフレアのセキュリティ設定は、ウェブサイトの運営に不可欠だと思います。

    返信