Skip to content

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

カスタム証明書を管理する

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

Cloudflare for SaaS のカスタムホスト名向けに、カスタム証明書を管理する方法を説明します。ユースケースと制限は カスタム証明書 を参照してください。

証明書をアップロードする

このセクションでは、対応タイプ のいずれかに該当するカスタム証明書をアップロードする一般的な手順を説明します。

ダッシュボードでカスタム証明書をアップロードするには、カスタムホスト名の作成 時に Custom certificate を選択します。

bundle method の選択肢については、Cloudflare SSL/TLS のドキュメント を参照してください。

次の呼び出しは、app.example.com で使う証明書をアップロードします。

OpenSSL で生成した ECC キーを使う場合は、先にファイルから -----BEGIN EC PARAMETERS-----...-----END EC PARAMETERS----- の区間を削除する必要があります。

  1. ファイルを更新し、ペイロードを組み立てます
cat app_example_com.pem
-----BEGIN CERTIFICATE-----
MIIFJDCCBAygAwIBAgIQD0ifmj/Yi5NP/2gdUySbfzANBgkqhkiG9w0BAQsFADBN
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E
...
SzSHfXp5lnu/3V08I72q1QNzOCgY1XeL4GKVcj4or6cT6tX6oJH7ePPmfrBfqI/O
OeH8gMJ+FuwtXYEPa4hBf38M5eU5xWG7
-----END CERTIFICATE-----
MYCERT="$(cat app_example_com.pem|perl -pe 's/\r?\n/\\n/'|sed -e 's/..$//')"
MYKEY="$(cat app_example_com.key|perl -pe 's/\r?\n/\\n/'|sed -e's/..$//')"

証明書とキーを環境変数へ保存したら(改行はエスケープします)、ペイロードを組み立てます。

$ echo $MYCERT
-----BEGIN CERTIFICATE-----\nMIIFJDCCBAygAwIBAgIQD0ifmj/Yi5NP/2gdUySbfzANBgkqhkiG9w0BAQsFADBN\nMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMScwJQYDVQQDEx5E...SzSHfXp5lnu/3V08I72q1QNzOCgY1XeL4GKVcj4or6cT6tX6oJH7ePPmfrBfqI/O\nOeH8gMJ+FuwtXYEPa4hBf38M5eU5xWG7\n-----END CERTIFICATE-----\n

$ request_body=$(< <(cat <<EOF
{
  "hostname": "app.example.com",
  "ssl": {
    "custom_certificate": "$MYCERT",
    "custom_key": "$MYKEY"
  }
}
EOF
))
  1. POST リクエスト で、証明書とキーをアップロードします。

証明書パックを使う: RSA と ECDSA

証明書パックを使うと、カスタムホスト名に RSA と ECDSA のカスタム証明書をそれぞれ最大 1 枚までアップロードできます。この手順は現時点では API のみです。

カスタムホスト名に RSA と ECDSA の証明書をアップロードするには、API でカスタムホスト名を作成する ときに bundle_methodforce に設定し、custom_cert_bundle プロパティを定義します。

Edit Custom Hostname エンドポイントへの PATCH リクエストでも、"bundle_method": "force"custom_cert_bundle を使えます。

カスタム証明書と秘密鍵を削除する

証明書パックからカスタム証明書と対応するキーを 1 組削除するには、Delete Single Certificate And Key For Custom Hostname エンドポイントを使います。

パック内に残っている証明書が 1 枚だけの場合、その証明書は削除できません。

カスタム証明書と秘密鍵を置き換える

2 枚がバンドルされた証明書パック内のカスタム証明書を 1 枚置き換えるには、Replace Custom Certificate And Custom Key In Custom Hostname エンドポイントを使います。

RSA 証明書は別の RSA 証明書にだけ、ECDSA 証明書は別の ECDSA 証明書にだけ置き換えられます。


Cloudflare 発行の証明書へ切り替える

カスタム証明書の維持をやめ、Cloudflare が発行する証明書へ切り替えたい場合は、ダウンタイムなしで移行できます。

カスタムホスト名へ、DCV の method を指定した PATCH リクエスト を送ります。証明書の検証ホスト名の検証 が完了すると、Cloudflare は古いカスタム証明書を外し、新しい証明書の配信を始めます。

役に立ちましたか?