Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

ゾーンレベル

最終更新 Markdown で表示Agent セットアップ

ゾーンレベルの Authenticated Origin Pulls(AOP)を有効にすると、ゾーンへのプロキシ済みトラフィックはすべて、アップロードした証明書を使ってオリジン Web サーバーで認証されます。グローバル AOP は、全アカウントで共有される Cloudflare 提供の証明書を使います。ゾーンレベルの AOP は、より厳しいセキュリティのため、独自の証明書を使います。

グローバル、ゾーンレベル、ホスト名単位 の AOP は、それぞれ独立した設定です。1 つを有効または無効にしても、ほかには影響しません。

始める前に

ゾーンの SSL/TLS 暗号化モードFull 以上であることを確認してください。

ゾーンレベルの AOP では、独自の証明書をアップロードする必要があります。OpenSSL でカスタム証明書を生成する例は、次の手順を参照してください。カスタム証明書の発行に使う CA ルート証明書は、オリジンへアップロードする CA と同じものにしてください。

OpenSSL の例

  1. 次のコマンドを実行して、AES-256 暗号化を使った 4096 ビットの RSA 秘密鍵を生成します。プロンプトが表示されたらパスフレーズを入力します。
openssl genrsa -aes256 -out rootca.key 4096
  1. CA ルート証明書を作成します。プロンプトが表示されたら、証明書に含める情報を入力します。Common Name フィールドにはホスト名ではなく、ドメイン名を指定します。
openssl req -x509 -new -nodes -key rootca.key -sha256 -days 1826 -out rootca.crt
  1. 証明書署名要求(CSR)を作成します。プロンプトが表示されたら、要求に含める情報を入力します。Common Name フィールドにはホスト名を指定します。
openssl req -new -nodes -out cert.csr -newkey rsa:4096 -keyout cert.key
  1. 前の手順で作成した rootca.keyrootca.crt を使って証明書に署名します。
openssl x509 -req -in cert.csr -CA rootca.crt -CAkey rootca.key -CAcreateserial -out cert.crt -days 730 -sha256 -extfile ./cert.v3.ext
  1. 証明書拡張ファイル cert.v3.ext に次の内容が指定されていることを確認します。
basicConstraints=CA:FALSE

1. 証明書を Cloudflare にアップロードする

  1. Origin Server ページを開きます。

    Origin Server を開く ↗
  2. Authenticated Origin Pulls タブを選択します。

  3. Zone-level セクションで Upload certificate を選択します。

  4. 証明書と秘密鍵を貼り付け、Continue を選択します。

  5. 証明書の詳細を確認し、あとで参照できるよう証明書 ID を保存して、Done を選択します。

Upload a zone-level client certificate エンドポイントで証明書をアップロードします。

2. CA 証明書をオリジンにアップロードする

クライアント証明書の署名に使った CA ルート証明書を、オリジンサーバーへアップロードします。オリジンはこの CA 証明書を使って、Cloudflare が提示するクライアント証明書を検証します。

3. オリジンがクライアント証明書を受け入れるよう設定する

証明書をインストールしたら、オリジン Web サーバーがクライアント証明書を受け入れるように設定します。

Apache と NGINX の例を次に示します。または、オリジン Web サーバーのドキュメントを参照してください。例: HAProxyTraefikCaddy

Apache の例

SSLCACertificateFile /path/to/origin-pull-ca.pem

この例では、証明書を /path/to/origin-pull-ca.pem に保存しています。

NGINX の例

ssl_verify_client optional;
ssl_client_certificate /etc/nginx/certs/cloudflare.crt;

この例では、証明書を /etc/nginx/certs/cloudflare.crt に保存しています。

この時点で、設定が正しく動作しているかを確認するため、オリジンでログを有効にすることも検討してください。

4. ゾーンレベルの Authenticated Origin Pulls を有効にする

  1. Origin Server ページを開きます。

    Origin Server を開く ↗
  2. Authenticated Origin Pulls タブを選択します。

  3. Zone-level セクションで、トグルを On にします。

Set Enablement for Zone エンドポイントで、ゾーンレベルの Authenticated Origin Pulls を有効にします。

5. オリジンで検証チェックを強制する

特定のオリジン構成で想定どおりに動作することを確認できたら、オリジン側で認証を強制するように設定します。

Apache の例

SSLVerifyClient require

NGINX の例

ssl_verify_client on;

手順が終わったら、curl でオリジンの IP に直接リクエストを送り、証明書の検証が強制されているためにリクエストが失敗することを確認できます。

6.(任意)有効期限のアラートを設定する

AOP 証明書の期限切れ前に通知を受け取れるよう、アラートを設定できます。

Zone-level Authenticated Origin Pulls Certificate Expiration Alert

対象

Cloudflare からオリジンサーバーへの接続を保護するため、ゾーンレベルの Authenticated Origin Pull (AOP) に独自証明書をアップロードしているお客様向けです。 AOP 証明書の有効期限通知は、期限の 30 日前と 14 日前に送られます。

その他のオプション / フィルタ

なし。

含まれるプラン

Authenticated Origin Pull。

受け取ったときの対応

ゾーンレベルの AOP 用に、更新した証明書をアップロードします。

アラートの設定方法は、Cloudflare Notifications を参照してください。

その他の選択肢

その他の選択肢は 証明書を管理する を参照してください。

役に立ちましたか?