启用全局 Authenticated Origin Pulls (AOP) 时,Cloudflare 使用 Cloudflare 提供的客户端证书处理到您 zone 的所有代理流量。此证书在所有 Cloudflare 账户之间共享,保证请求来自 Cloudflare 网络。
全局、zone 级别和按主机名 AOP 是独立配置。启用或禁用其中一个不会影响其他配置。
-
确保您的 zone 使用 Full(完全) 或更高的 SSL/TLS 加密模式。
-
考虑您的安全和证书需求:
-
Cloudflare 提供的证书并非您的账户独有。它仅保证请求来自 Cloudflare 网络。如果需要更严格的安全,请改用zone 级别或按主机名 AOP 并使用您自己的证书。
-
全局 AOP 应用于 zone 上所有代理主机名,包括 Cloudflare for SaaS zone 上配置的 Custom Hostname。如果需要为不同 Custom Hostname 使用不同的 AOP 证书,请使用按主机名 AOP。
-
下载 Cloudflare Authenticated Origin Pull 证书 (.PEM) 并上传到源站服务器。此证书不同于 Cloudflare Origin CA 证书。
安装证书后,设置源站 Web 服务器以接受客户端证书。
请查看下方 Apache 和 NGINX 示例,或参阅源站 Web 服务器文档——例如 HAProxy ↗、Traefik ↗、Caddy ↗。
Apache 示例
SSLCACertificateFile /path/to/origin-pull-ca.pem在此示例中,您会将证书保存到 /path/to/origin-pull-ca.pem。
/path/to/origin-pull-ca.pem before applying the settings.NGINX 示例
ssl_verify_client optional;
ssl_client_certificate /etc/nginx/certs/cloudflare.crt;在此示例中,您会将证书保存到 /etc/nginx/certs/cloudflare.crt。
/etc/nginx/certs/cloudflare.crt before applying the settings.此时,您可能还希望在源站启用日志记录,以便验证配置是否正常工作。
-
前往 Origin Server(源站服务器) 页面。
Go to Origin Server ↗ -
选择 Authenticated Origin Pulls(已验证源站拉取) 选项卡。
-
在 Global(全局) 部分,将开关切换为 On(开启)。
要使用 API 启用或禁用全局 Authenticated Origin Pulls,使用 Edit zone setting 端点,在 URI 路径中将 tls_client_auth 作为设置名称,并将 value 参数设置为所需设置("on" 或 "off")。
确认一切按预期为您的特定源站设置工作后,配置源站以强制执行认证。
Apache 示例
SSLVerifyClient requireNGINX 示例
ssl_verify_client on;完成此流程后,您可以使用 curl 直接向源站 IP 发送请求,验证请求因证书验证被强制执行而失败。