Cloudflare 15年免费SSL证书完整申请指南

一、引言

近期,诸多用户咨询 SSL 证书相关问题,其中不乏对阿里云、腾讯云等平台提供的免费证书仅有 3 个月有效期,需频繁更新的困扰。鉴于此,本文将详细介绍 Cloudflare 提供的 15 年期免费 SSL 证书申请流程,该证书支持通配符域名,为用户提供了全新的选择。

二、什么是 Cloudflare SSL 证书

Cloudflare SSL 证书是 Cloudflare 为其用户提供的一种免费 SSL/TLS 证书服务。与传统证书不同,Cloudflare 利用其全球 Anycast 网络,在用户源服务器与 Cloudflare 边缘节点之间建立加密连接,同时 Cloudflare 边缘节点与访问者之间也启用 HTTPS 加密。这意味着即使您的源服务器没有配置 SSL 证书,Cloudflare 仍然可以为您的网站提供 HTTPS 访问。

Cloudflare 提供了多种 SSL 证书类型供用户选择:

  • 灵活 SSL(Flexible SSL):仅加密用户与 Cloudflare 边缘节点之间的连接,源服务器无需额外配置。
  • 完整 SSL(Full SSL):加密用户与 Cloudflare 边缘节点之间的连接,同时要求源服务器有自签名或有效证书。
  • 完整 SSL(严格):要求源服务器必须安装由受信任 CA 签发的有效证书。
  • 源证书(Origin Certificate):Cloudflare 颁发的免费源服务器证书,有效期最长可达 15 年,支持通配符域名。这正是本文的核心内容。

其中,源证书(Origin Certificate)是 Cloudflare 独有的一大亮点,它可以安装在您的源服务器上,确保从 Cloudflare 到源服务器的通信也经过加密,同时完全免费且有效期长达 15 年。

三、Cloudflare 15 年免费 SSL 证书的优缺点分析

在选择 SSL 证书方案时,了解其优缺点至关重要。以下是 Cloudflare 15 年免费 SSL 证书的详细分析:

(一)优点

  • 完全免费,有效期长达 15 年:市面上大多数免费证书(如 Let’s Encrypt、阿里云免费证书等)有效期仅为 3 个月,需要每 90 天续期一次。Cloudflare 源证书一次性签发即可使用 15 年,彻底免去续期烦恼。
  • 支持通配符域名:使用 *.example.com 格式即可保护主域名及所有子域名,特别适合有多个子站点的网站。
  • 申请流程简单:无需复杂的 CSR 生成和验证流程,在 Cloudflare Dashboard 中几个步骤即可完成签发。
  • 与 Cloudflare CDN 完美集成:证书签发后,Cloudflare 边缘节点自动信任该证书,无需额外配置信任链。
  • 支持多种密钥类型:可以选择 RSA(2048 位)或 ECC(ECDSA P-256)密钥,满足不同安全需求。
  • 降低运维成本:15 年的超长有效期意味着运维人员无需频繁关注证书到期提醒,大幅降低运维工作负担。

(二)缺点

  • 仅限 Cloudflare 用户使用:该证书只能用于 Cloudflare CDN 背后的源服务器,不能直接面向外部用户使用。
  • 非公开受信任 CA:Cloudflare 源证书不是由公共 CA(如 DigiCert、Let’s Encrypt 等)签发,因此浏览器不会直接信任此证书。需要配合 Cloudflare 代理模式的 CDN 使用,由 Cloudflare 边缘节点提供面向用户的受信任证书。
  • 需配合 Cloudflare 代理使用:DNS 记录必须开启 Cloudflare 代理(橙色云朵)才能发挥完整作用。
  • 无法用于非 Cloudflare 场景:如果您需要迁移离开 Cloudflare,该证书将不再适用,需要重新申请其他证书。

总的来说,对于使用 Cloudflare CDN 的网站而言,15 年免费 SSL 证书的优点是压倒性的。它不仅大幅降低了证书管理的复杂度,还节约了 SSL 证书的采购成本。

四、申请前的准备工作

在开始申请 Cloudflare 15 年免费 SSL 证书之前,您需要完成以下准备工作:

4.1 注册 Cloudflare 账号

如果您还没有 Cloudflare 账号,请访问 Cloudflare 官网 进行注册。注册流程非常简单:

  • 输入您的邮箱地址并设置密码
  • 验证邮箱地址
  • 登录 Cloudflare Dashboard

4.2 在 Cloudflare 中添加并托管您的域名

注册完成后,您需要将域名添加到 Cloudflare 并修改 DNS 服务器:

  • 登录 Cloudflare Dashboard,点击 “添加站点”
  • 输入您的域名(例如 yourdomain.com)
  • 选择免费套餐(Free Plan)即可使用 15 年免费 SSL 证书功能
  • Cloudflare 会扫描您当前域名的所有 DNS 记录并自动导入
  • 检查并确认 DNS 记录无误后,继续到下一步
  • Cloudflare 会提供两个 Nameserver 地址(例如 alex.ns.cloudflare.com 和 uma.ns.cloudflare.com)
  • 前往您的域名注册商(如阿里云、GoDaddy、Namecheap 等)的管理后台,将域名的 NS 记录修改为 Cloudflare 提供的地址
  • 等待 DNS 解析生效(通常需要几分钟到 48 小时)

4.3 确认 DNS 代理状态

域名托管到 Cloudflare 后,确保您的网站主域名和子域名的 DNS 记录已开启代理(橙色云朵图标)。只有开启代理模式的记录才能使用 Cloudflare 的 SSL 功能。

五、证书申请详细步骤

完成上述准备工作后,即可正式申请 Cloudflare 15 年免费 SSL 源证书。

5.1 进入 SSL/TLS 设置页面

登录 Cloudflare Dashboard,选择您的域名,然后点击左侧菜单的 “SSL/TLS”“源服务器”(Origin Server) 选项卡。

5.2 创建源证书

在源服务器页面中,点击 “创建证书” 按钮。Cloudflare 会显示证书创建表单,您需要配置以下参数:

  • 私钥类型:选择 RSA (2048) 或 ECC (ECDSA P-256)。RSA 兼容性更好,ECC 性能更高且密钥更短。对于大多数场景,推荐选择 ECC (ECDSA P-256),因为其加密效率更高且安全性不亚于 RSA 2048 位。
  • 证书有效期:选择 15 年。这是 Cloudflare 源证书支持的最长有效期,也是本文的核心优势所在。
  • 域名列表:输入需要保护的域名。推荐使用通配符格式,例如:
    • yourdomain.com
    • *.yourdomain.com

    这样可以同时保护主域名和所有子域名。

5.3 下载证书和私钥

点击 “创建” 后,Cloudflare 会生成证书文件和私钥。页面会显示以下内容:

  • 源证书(Origin Certificate):以 —–BEGIN CERTIFICATE—– 开头的 PEM 格式证书文本
  • 私钥(Private Key):以 —–BEGIN RSA PRIVATE KEY—–—–BEGIN EC PRIVATE KEY—– 开头的 PEM 格式私钥文本

重要提示:请务必立即下载并妥善保存私钥文件。关闭此页面后,Cloudflare 不会再显示私钥内容。建议将证书和私钥分别保存为 origin-cert.pemorigin-key.pem 文件,并存放在安全的位置。

六、部署源证书到 Web 服务器

证书申请完成后,需要将其部署到您的源服务器上。以下是三种常见 Web 服务器的部署方法。

6.1 Nginx 部署方法

找到 Nginx 的配置文件(通常位于 /etc/nginx/nginx.conf/etc/nginx/sites-available/ 目录下),在对应的 server 块中添加或修改以下配置:

server {
    listen 443 ssl http2;
    server_name yourdomain.com;

    ssl_certificate /path/to/origin-cert.pem;
    ssl_certificate_key /path/to/origin-key.pem;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    root /var/www/html;
    index index.html index.php;
}

配置完成后,运行以下命令测试配置并重启 Nginx:

nginx -t
systemctl restart nginx # 或 service nginx restart

6.2 Apache 部署方法

对于 Apache 服务器,需要启用 SSL 模块并修改虚拟主机配置文件:

首先确保 SSL 模块已启用:

a2enmod ssl
systemctl restart apache2

然后编辑虚拟主机配置文件(通常位于 /etc/apache2/sites-available/ 目录),添加或修改以下内容:
<VirtualHost *:443>
    ServerName yourdomain.com

    SSLEngine on
    SSLCertificateFile /path/to/origin-cert.pem
    SSLCertificateKeyFile /path/to/origin-key.pem

    DocumentRoot /var/www/html
</VirtualHost>

保存配置后,测试并重启 Apache:

apachectl configtest
systemctl restart apache2 # 或 service apache2 restart

6.3 宝塔面板(Baota / BT Panel)部署方法

宝塔面板是国内最流行的服务器管理面板之一,其部署过程更加图形化:

  • 登录宝塔面板后台
  • 进入 “网站” 管理页面
  • 找到对应的站点,点击右侧的 “设置” 按钮
  • 在弹出的设置窗口中,选择 “SSL” 选项卡
  • 选择 “其他证书” 模式
  • 将之前下载的 origin-cert.pem(证书内容)粘贴到 “证书(PEM格式)” 输入框中
  • origin-key.pem(私钥内容)粘贴到 “密钥(KEY)” 输入框中
  • 点击 “保存” 按钮
  • 打开 “强制 HTTPS” 开关,确保所有 HTTP 请求自动跳转到 HTTPS

宝塔面板会自动检测证书有效性并应用到对应的网站,整个过程无需手动重启服务。

七、配置 CA 根证书

Cloudflare 源证书虽然由 Cloudflare 内部 CA 签发,但为了让 Cloudflare 边缘节点正确验证您的源服务器,可能需要配置 CA 根证书。Cloudflare 在证书创建页面会同时提供 “Cloudflare 源 CA 根证书”,这是一个中间证书,用于构建完整的证书信任链。

如果您需要配置 CA 根证书,可以按以下步骤操作:

  • 下载 Cloudflare 源 CA 根证书(Cloudflare 官方提供 PEM 格式的 CA Bundle)
  • 创建一个包含源证书和 CA 根证书的证书链文件:
    cat origin-cert.pem cloudflare-origin-ca-root.pem > fullchain.pem
  • 在 Nginx 配置中使用 ssl_trusted_certificate 指令:
    ssl_trusted_certificate /path/to/fullchain.pem;
  • 在 Apache 配置中使用 SSLCertificateChainFile 指令:
    SSLCertificateChainFile /path/to/cloudflare-origin-ca-root.pem

实际上,对于 Cloudflare 代理模式的网站,源服务器只需提供源证书即可正常工作,因为 Cloudflare 边缘节点本身信任自己签发的源证书。配置 CA 根证书主要是为了某些特定场景下的完整性和兼容性考虑。

八、验证 SSL 效果

完成证书部署后,需要通过以下方式验证 SSL 配置是否生效:

8.1 浏览器访问验证

  • 使用浏览器访问 https://yourdomain.com,查看地址栏是否显示安全锁标志
  • 点击地址栏的锁图标,查看证书详情,确认证书信息正确
  • 检查证书有效期是否为 15 年

8.2 在线 SSL 检测工具

  • 使用 SSL Labs(https://www.ssllabs.com/ssltest/)对您的域名进行全面检测
  • 使用 Why No Padlock(https://www.whynopadlock.com/)检测是否存在混合内容问题
  • 使用 curl 命令行工具快速验证:
    curl -vI https://yourdomain.com

8.3 证书内容验证

使用 OpenSSL 命令行工具查看证书详情:

openssl x509 -in origin-cert.pem -text -noout

重点关注以下信息:

  • Issuer(签发者):应为 Cloudflare 的 CA
  • Subject(主体):应包含您的域名
  • Validity(有效期):确认起始日期和结束日期,验证是否为 15 年
  • Subject Alternative Names(SAN):确认包含您申请的所有域名

九、常见问题与注意事项

9.1 证书到期提醒

虽然 Cloudflare 源证书有效期为 15 年,但建议在证书到期前设置提醒,避免因遗忘导致证书过期后网站无法访问。可以在 Cloudflare Dashboard 的 SSL/TLS 设置页面查看证书到期时间。

9.2 证书丢失怎么办

如果不慎丢失了私钥或证书文件,可以在 Cloudflare 的 SSL/TLS → 源服务器页面中点击 “撤消” 旧证书,然后重新创建新证书。注意,撤销后需要重新部署到源服务器。

9.3 多层 CDN 场景

如果您同时使用了其他 CDN 服务(如又拍云、阿里云 CDN 等),Cloudflare 源证书可能无法正常工作。建议在多层 CDN 场景下使用公共 CA 签发的证书。

9.4 兼容性提示

Cloudflare 源证书基于自签 CA,部分旧的客户端或库可能不信任。但由于面向用户的是 Cloudflare 边缘节点的公共受信任证书(由 Google Trust Services 或 Let’s Encrypt 等公共 CA 签发),因此终端用户不会受到影响。

十、总结

Cloudflare 15 年免费 SSL 证书是一个极具性价比的解决方案。通过本文的详细教程,您应该已经掌握了从准备工作、证书申请、服务器部署到效果验证的全流程操作。相比传统免费证书每 3 个月需要续期一次的繁琐流程,Cloudflare 的源证书一次性配置即可使用 15 年,极大减少了运维工作量。

该方案特别适合以下场景:

  • 个人博客和小型网站
  • 使用 Cloudflare CDN 的中小型企业网站
  • 拥有多个子站点的通配符证书需求用户
  • 希望降低 SSL 证书运维成本的团队

如果您已经开始使用 Cloudflare CDN,那么开通 15 年免费 SSL 源证书是一个不需要任何额外成本的明智选择。花几分钟完成配置,即可享受 15 年的 HTTPS 安全保障,何乐而不为呢?

zh_CNChinese