HOME  /Cloudflare
 /DDoS対策はCloudflareのCDNだけで大丈夫か?
2024年08月13日

DDoS対策はCloudflareのCDNだけで大丈夫か?


CloudflareのCDNにはDDoS対策が適用されますが、本当にCDNを利用するだけで良いのでしょうか?

DDoS攻撃の方法には下記の3種類があります。

1.DNSサーバに対する攻撃

2.グローバルIPに対する攻撃

3.オリジンIPに対する攻撃

1.DNSサーバに対する攻撃

これはURLで大量のデータを送り付ける攻撃です。

CloudflareのCDNの設定方法には[フルセットアップ]と[CNAMEセットアップ]があります。

[フルセットアップ]

CoudflareのDNSサーバにCDNを設定する方法なので、[DNSに対するDDoS攻撃]に対応できます

 

[CNAMEセットアップ]

この機能は[Business]または[Enterprise]版の機能なので、無料版にはありません。

設定方法は

・Cloudflare側でCDNの受け皿を作成する。

・現在利用している権威DNSサーバにCloudflareのCDNをCNAMEで指定する。

これによりCDN機能だけをCloudflareに任せる方法です。

よってCloudflareのDNSを利用していないので[DNSに対するDDoS攻撃]には対応できません

 

CDNが上記のどちらでセットアップされているか?は下記の方法で確認できます。

①サイトのURLを[IPアドレス検索]で検索すると、ISPに[Cloudflare]が表示されれば、CloudflareのCDNが利用されている事がわかります。

②次にサイトのURLを[DNS情報検索]で検索すると、設定されているレコードが表示されます。

ここに表示されている[A]や[AAAA]レコードは総てCloudflareのIPアドレスです。

次に[CNAME]レコードを調べます。

・[CNAME]レコードがなければ[フルセットアップ]です。

・[CNAME]レコードが[サイトのURL.cdn.cloudflare.net]で定義されていれば[CNAMEセットアップ]です。

 メモ

官公庁や都道府県市町村のHPでもCDNはかなり普及してきています。

その中にCloudflareも利用されていますが、残念ながら総てがCNAME接続でした。

この接続方法はDNSサーバに対するDDoS対策がありません。

[利用しているCDN]のサンプルサイトで[防衛省]と[ウクライナ国総省]の違いを確認して下さい。

CDNは自分で設定するのが一番確実ですが、Cloudflareのパートナーを利用する場合は注意が必要です。

 

2.グローバルIPに対する攻撃

これはグローバルIPで大量のデータを送り付ける攻撃です。

[フルセットアップ]も[CNAMEセットアップ]もCDNから返されるグローバルIPは、CloudflareのIPアドレスなのでDDoS対策ができます。

 

3.オリジンIPに対する攻撃

これはオリジンIPで大量のデータを送り付ける攻撃です。

これが一番厄介な攻撃です。

CloudflareのCDNを利用するとWebサーバの[オリジンIP]は外部からは判りません。

しかし世の中には[Shodan]や[Censys]等のツールがあり、これらを利用するとインターネット上にある色々な情報からオリジンIPを探すこともできます。

私のケースでは過去に使っていたSSL証明書からオリジンIPを知りえる事が可能である事が判りました。

 

そこでオリジンIPが判ったとしてもDDoS攻撃を受けなくする対策が必要になります。

①CloudflareとWebサーバ間の通信のIPアドレスを限定する方法

CloudflareのDNSにWebサーバをIPv4(Aレコード)又はIPv6(AAAAレコード)で登録するとCloudflareとWebサーバ間はCloudflareのIPアドレスで会話しています。

そこでファイアウオールにCloudflareで利用するIPアドレスだけ通信を許可する方法でDDoS攻撃をブロックできます。

Cloudflareが利用するIPアドレスは[https://www.cloudflare.com/ja-jp/ips/]で公開されています。

但し、この方法は変更履歴から判るようにIPアドレスは変わるので定期メンテが必要になります。

 

しかしEnterprise版を利用している場合はこの通信に利用するIPアドレスをユーザ固有のものに限定する事ができます。

よってEnterprise版の場合は、このIPアドレスをファイアウオールに設定する事でDDoS攻撃をブロックできます。

 

②CloudflareとWebサーバ間の通信をCloudflareトンネルで接続する方法

Cloudflareトンネルによる接続はポート番号の80/443を利用しません。

よってファイアウオールに80/443をブロックする設定でDDoS攻撃をブロックできます。

この方法は無償版でも利用できるので私はこの方法を利用しています。

 

 ご参考

私のWebサーバはCloudflareのCDNを[フルセットアップ]で利用し、CloudflareとWebサーバ間はトンネル接続としています。

尚、ファイアウオールの設定は80/443だけでなく、総てのポート番号をブロックしています。

設定方法と確認方法は[ポートのブロック]を確認して下さい。

その結果、DDoS攻撃だけでなく総ての悪意がある攻撃を行えない様にしています。

 

そうなると他の社内リソースにもインターネットからアクセスできなくなると思われますが、そこに登場するのがCloudflareのゼロトラストです。

これを利用し社内のローカルネットワークをゼロトラストにトンネル接続する事により、何処からでも社内リソースにアクセスするできる様にしています。

またWAFはCloudflareのデフォルトルールで守り、WordPressの管理者モードのブロックはWAFのカスタマイズではなく、これもCloudflareのゼロトラストのアクセスルールでブロックしています。

 

以上でこのドキュメントの説明は完了です。

関連ドキュメントは下記の関連記事一覧から探して下さい。


<関連記事一覧>

「cloudflare」に関連するドキュメントを表示しています。尚、このページネーションはJquryで制御しています。

CloudflareのCDNにWebサーバを登録する方法には①IPv4接続②IPv6接続③トンネル接続がありますが、③のトンネル接続は、サーバの負荷分散、変動IPでも更新タスクが不要、オリジンIPに対するDDoS対策が簡単等の多くのメリットがあります。

Cloudflareの[Email Routing]はCloudflareで管理しているドメインにメールアドレスを定義し、これを他のメールシステム(Gmail等)に転送するアプリケーションです。この機能を利用するとメールサーバを立てなくても企業ドメインのメールシステムが構築できます。

IPv4、IPv6アドレスを調べるとインターネットからのポート開放状況や利用しているCDNベンダを調べる事ができます。ここではこれらを調査する方法を詳しく解説しています。

DNS(Domain Name System)は、[ DNSリゾルバ ]、[ DNSルートネームサーバ ]、[ TLDネームサーバ ] 及び [ 権威DNSサーバ] から構成される仕掛けで、インターネットアクセスに必須な仕掛けになります。

CloudflareのCDNは、Cloudflareの高速ネットワークの中にコンテンツをキャッシュしてくれると共に、1.IPv6対応、2.DDoS対策、3.WAF対策、4.ボット対策を行ってくれるCDNサービスです。

[ 1.1.1.3 ] は [ 1.1.1.2 ] のマルウェア等のサイトブロック機能に加えて、ブラウザの[セーフサーチ機能]を自動でONにする事によりアダルトサイトを表示させないDNSリゾルバになります。ここではこの利用方法を徹底解説しています。

[1.1.1.1] は、Cloudflare社とアジア地区のIPアドレスの元締めの APNICが共同開発した無償でスピードが一番早いDNSリゾルバーになります。ここではこの利用方法を徹底解説しています。

[ 1.1.1.2 ] は [ 1.1.1.1 ] の機能にセキュリティリスクがあると判断したWebサイトをブロックする機能が追加されます。
ここではこの利用方法を徹底解説しています。

SynologyのWebサーバをCloudflareにtトンネルで接続する為には①Cloudflareとサーバ間にトンネルを作成する②トンネルにWebサーバを定義する皇都で行います。

SynologyのWebサーバをCloudflareにIPv6で接続する為には①Cloudflareに仮のAAAAレコードを作成し、Synology側からこのAAAAレコードを更新する方法で行います。

CloudfalreのCDNを利用する為には①Cloudflareアカウントの作成、②ドメインの追加、③CDNの設定に順番で設定していきます。また④Cloudflareアカウントの2要素認証も重要になります。

ここではXserverからドメイン名を取得する方法を解説しています。