如何免费获取 SSL 证书
本页内容
SSL 证书能把 http:// 变成 https://:它加密访客与网站之间的连接,并证明网站确实属于你。没有证书的网站会被浏览器标记为“不安全”,而如今你已经不必再为证书付费。
本指南介绍证书的作用,比较各种免费方案,并演示如何在 cPanel 和 VPS 上获取证书、续期是如何进行的,以及续期失败时该怎么办。
SSL 证书的作用
严格来说,如今的连接使用的是 SSL 的继任者 TLS,但大家仍然习惯称之为“SSL 证书”。证书主要做两件事:
- 加密:密码、表单和支付信息以加密形式传输,网络上的任何人都无法读取或篡改。
- 身份:证书颁发机构(CA)已核实申请证书的人确实控制着该域名。
免费证书属于域名验证型(DV)证书:CA 只核实你控制该域名,仅此而已。其加密强度与付费证书完全相同。付费的 OV 和 EV 证书会额外核验网站背后的组织,有些企业需要这一点,但浏览器对它们显示的都是同一把锁。
免费方案对比
| 方案 | 你能得到什么 | 适合谁 |
|---|---|---|
| Let's Encrypt | 免费的非营利 CA。证书通过 ACME 协议自动签发和续期,包括通配符证书 | 几乎所有人:已内置于 cPanel,并受 Certbot 支持 |
| ZeroSSL | 免费的 ACME 证书,包括通配符证书;ACME 客户端需要从其控制台获取账户凭据 | 作为替代 CA,或与 Let's Encrypt 并用的第二个 CA |
| Cloudflare Universal SSL | 为使用 Cloudflare 代理的网站在 Cloudflare 服务器上提供的免费证书 | 已经接入 Cloudflare 的网站 |
| Cloudflare Origin CA | 用于你自己服务器的免费证书,有效期最长 15 年,但只有 Cloudflare 信任它 | Cloudflare 与你的服务器之间的连接 |
它们的加密效果都一样好。区别在于签发和续期的方式,而这一点一年比一年重要。
为什么自动续期很重要
整个行业的证书有效期都在缩短。根据 CA/Browser Forum 的规定,公开证书的最长有效期自 2026 年 3 月起为 200 天,2027 年 3 月起为 100 天,2029 年 3 月起为 47 天。
Let's Encrypt 证书目前的有效期为 90 天。其默认证书将在 2027 年 2 月缩短为 64 天,在 2028 年 2 月缩短为 45 天。此外,Let's Encrypt 已于 2025 年停止发送到期提醒邮件,所以证书过期前不会有人提醒你。
实际的结论是:永远不要手动续期证书。使用能自动续期的工具,例如 cPanel 中的 AutoSSL 或 VPS 上的 Certbot,并不时检查它是否正常工作。
共享主机:cPanel 中的 AutoSSL
在 cPanel 主机上,通常什么都不用做。AutoSSL 会为账户中每个指向该服务器的域名申请 Let's Encrypt 证书,自动安装,并在到期前续期。
- 将域名指向主机:设置主机商提供的域名服务器(nameserver)或 A 记录,然后等待 DNS 生效。
- 在 cPanel 中打开 Security → SSL/TLS Status。每个域名都会显示是否已覆盖、即将到期,或者 AutoSSL 出了问题。
- 如果某个域名尚未覆盖,点击 Run AutoSSL。只有当域名已解析到该服务器时才能成功。
- 用
https://打开你的网站并检查锁形图标。如果使用 WordPress,也要把站点地址改为https://。
在 HytHost 网站主机上,所有套餐都启用了基于 Let's Encrypt 的 AutoSSL,你添加的每个域名和子域名只要指向服务器就会被覆盖。cPanel 的其他功能请参阅什么是 cPanel。
每个 HytHost 网站主机套餐都通过 AutoSSL 提供免费 SSL,自动续期,低至 €0.99/月。
查看网站主机套餐VPS:Certbot 搭配 nginx
在你自己的服务器上,由 EFF 开发的 Certbot 负责获取并续期 Let's Encrypt 证书。在 Ubuntu 上的官方方法是使用 snap 软件包:
sudo snap install --classic certbot sudo ln -s /snap/bin/certbot /usr/local/bin/certbot
确认域名的 A 记录指向该 VPS,nginx 中已为该域名配置 server_name,并且防火墙已开放 80 和 443 端口。然后运行:
sudo certbot --nginx -d example.com -d www.example.com
Certbot 会证明你控制该域名,将证书安装到 nginx 配置中,并可将 HTTP 重定向到 HTTPS。它还会安装一个定时器来自动续期证书。先测试一次续期:
sudo certbot renew --dry-run
拥有完整 root 权限,运行你自己的 Web 服务器:HytHost KVM VPS 套餐低至 €2.92/月。
查看 VPS 套餐使用 Cloudflare 时
如果你的域名经由 Cloudflare 并开启了橙色云朵,访客连接的是 Cloudflare,看到的是它免费提供的 Universal SSL 证书。但这只覆盖了一半路程:Cloudflare 仍然要连接到你的服务器。
- 将 SSL/TLS 模式设为 Full (strict)。这样 Cloudflare 会要求你的服务器上有有效证书,整条链路都经过加密和验证。
- 为服务器配置证书:通过 AutoSSL 或 Certbot 获取的 Let's Encrypt 证书即可,也可以用免费的 Cloudflare Origin CA 证书。Origin CA 证书只受 Cloudflare 信任,所以一旦关闭代理,访客就会看到错误。
- 避免使用 Flexible 模式。它会让到你服务器的连接处于未加密状态,还经常导致重定向循环。
常见 SSL 问题及解决方法
- 证书无法签发:域名尚未指向该服务器,或 DNS 仍缓存着旧地址。检查 A 记录并耐心等待。
- 被 CAA 记录阻止:如果你的 DNS 中有 CAA 记录,它们必须允许你使用的 CA,例如
0 issue "letsencrypt.org"。 - VPS 上验证失败:Let's Encrypt 默认通过 80 端口进行验证,所以即使网站会重定向到 HTTPS,也要保持 80 端口开放。
- 有证书却仍显示“不安全”:页面通过
http://加载了图片或脚本(混合内容)。把这些链接改为https://。 - 通配符证书:
*.example.com需要 DNS 验证,因此只有在使用能创建验证记录的 DNS 插件或服务商时才可行。 - 证书已过期:自动续期已停止工作。检查 cPanel 中的 SSL/TLS Status 页面,或在 VPS 上运行
certbot renew --dry-run并查看错误信息。
常见问题
就加密而言,是的。免费和付费证书使用相同的加密方式,显示同样的锁形图标。付费的 OV 和 EV 证书只是额外核验网站背后的公司,并不提供更强的加密。
Let's Encrypt 证书目前有效期为 90 天,2027 年将缩短为 64 天,2028 年缩短为 45 天。只要续期是自动的,比如使用 cPanel 中的 AutoSSL 或 Certbot,这就不是问题。
大多数 cPanel 主机都通过 AutoSSL 提供。每个 HytHost 网站主机套餐都包含,账户中的每个域名都会自动续期 Let's Encrypt 证书。
可以。Let's Encrypt 和 ZeroSSL 都免费签发通配符证书,但需要 DNS 验证,这要求你的 ACME 客户端能够自动更新 DNS 服务商的记录。
需要。浏览器会把所有 HTTP 页面标记为“不安全”,有些功能只能在 HTTPS 下使用,而且访客更信任带锁的网站。既然证书是免费的,就没有理由不用。
这篇指南对你有帮助吗?