Cloudflare 4つのEdge Certificate(Universal, Advanced, Custom, Backup)まとめ
Cloudflareでは管理しているドメイン名に対してCDN (DNS Proxy)を設定したり、様々なL7機能をオンにすると自動で電子証明書が作成されます。
その電子証明書はEdge Certificateと言われますが、全部で4種類あります。
・Universal
・Advanced
・Custom
・Backup
自分の検証環境の証明書が更新時期を迎え適当に操作していたらぐちゃぐちゃになってしまって、整理の必要に迫られたので、良い機会なのでまとめておきます。
Universal
Cloudflareでアクティブ化されたすべてのドメインに対して、無料かつ自動で発行されます。
CloudflareのDNSと連携しますのでDomain Validation (DV)形式の発行になります。DVの認証に必要なtxtレコードはCloudflareが自動で行いますので、設定は不要です。自動でサブドメインに対してワイルドカードが発行されます。
ルートはLet's Encryptです。
無償プランからご利用いただけます。
暗号スイートなどは変更させることが不可能です。無効化させるためには、後述するAdvancedかCustomの証明書をアップロードする必要があります。
example.com
またはwww.example.com
の階層のみをサポートし、dev.www.example.com
などの深い階層には未対応です。
有効期間は3か月で自動更新されます。
Advanced
Order Advanced Certificate
ボタンを押すことで有効化されます。
Subject Altname に最大50のホスト名を含めることが可能です。
DigiCert、Let's Encrypt、Google Trust Servicesからルートを選択可能です。
有効期間も以下の4種類から選択可能で自動更新されます。
無料プランからご利用いただけますが、月10ドルの有償アドオンが必要です。
Universalと同様にDVです。
API経由で用いる暗号化スイートの設定変更が可能です。
Custom
Businessプラン以上で利用可能です。外部で作成した電子証明書をCloudflareにアップロードして利用するオプションです。
前述のUniversalやAdvancedはDVですので、より認証強度の高いOVやEVを利用したい場合、外部認証局から発行した電子証明書をアップロードできます。
外部認証局に電子証明の発行依頼を行う場合、CSRという鍵情報が必要となりますが、CloudflareでCSRを作成することも可能です。(とドキュメントに記載がありますが、2023/07/21現在その機能がなくなっているようです。自前のツールでCSRを生成してください)
またCustom証明書(含む秘密鍵)を配布する地域を指定することも可能です。
Custom証明書は自動で更新されないので気を付けて下さい。たいていの場合、証明書を発行した認証局から更新通知メールが来るはずです。Cloudflare側も有効期限の30日前、14日前に管理者にメールを送ります。有効期限が切れた証明書は自動で削除されます。
Backup
残念ながら電子証明書の世界では、定期的な事件が発生します。鍵生成に用いたライブラリの脆弱性による鍵の危殆化や証明書を発行した認証局が信用できなくなった場合など、です。
この事態に備えCloudflareではデフォルトドメインのUniversal証明書を発行する際に、Backupとして別の鍵、別の認証局で証明書をもう1式準備しています。Activeな電子証明書を発行している認証局と異なる以下3つから選択されます。Google Trust Services、Let's Encrypt、Sectigo。
万が一、Activeな証明書が使えなくなった場合、Cloudflareは自動でBackup証明書に入れ替えます。
Discussion