跳转到内容
搜索文档

Zone 级别

最后更新 查看 MarkdownAgent 设置

启用 zone 级别 Authenticated Origin Pulls (AOP) 时,到您 zone 的所有代理流量在源站 Web 服务器上使用您上传的证书进行身份验证。与使用在所有账户之间共享的 Cloudflare 提供证书的全局 AOP 不同,zone 级别 AOP 使用您自己的证书以获得更严格的安全。

全局、zone 级别和按主机名 AOP 是独立配置。启用或禁用其中一个不会影响其他配置。

开始之前

确保您的 zone 使用 Full(完全) 或更高的 SSL/TLS 加密模式

Zone 级别 AOP 要求您上传自己的证书。请参阅以下步骤了解如何使用 OpenSSL 生成 Custom 证书的示例。用于签发 Custom 证书的 CA 根证书应与将上传到源站的 CA 相同。

OpenSSL 示例

  1. 运行以下命令生成 4096 位 RSA 私钥,使用 AES-256 加密。出现提示时输入密码短语。
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(源站服务器) 页面。

    Go to 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. 启用 zone 级别 Authenticated Origin Pulls

  1. 前往 Origin Server(源站服务器) 页面。

    Go to Origin Server ↗
  2. 选择 Authenticated Origin Pulls(已验证源站拉取) 选项卡。

  3. Zone-level(区域级别) 部分,将开关切换为 On(开启)

使用 Set Enablement for Zone 端点启用 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

Who is it for?

Customers that upload their own certificate to use with zone-level Authenticated Origin Pull (AOP) to secure connections from Cloudflare to their origin server. AOP certificate expiration notifications are sent 30 days and 14 days before the certificate expiry.

Other options / filters

None.

Included with

Authenticated Origin Pull.

What should you do if you receive one?

Upload a renewed certificate to use for zone-level AOP.

有关如何设置警报的更多信息,请参阅 Cloudflare Notifications

更多选项

有关更多选项,请参阅管理证书

这篇文档对您有帮助吗?