公司博客 // 2026-05-17 · BY IDCBOT

免费SSL证书申请教程:Let’s Encrypt一键部署HTTPS(自动续期)

如今没有HTTPS的网站寸步难行:浏览器标”不安全”、搜索引擎降权、支付接口拒绝对接。好消息是SSL证书早就不用花钱了——Let’s Encrypt提供免费、受全浏览器信任的证书,配好自动续期后一劳永逸。本文给出面板党和命令行党两套方案。

一、前置条件

只需两点:域名已解析到你的服务器IP(香港节点免备案,解析即生效)、服务器80/443端口对外开放。没有服务器的话,机器云香港VPS支持24小时免费试用,足够完整练习本教程。

二、方案A:宝塔/1Panel面板一键申请(2分钟)

面板用户最简单:进入站点设置 → SSL → 选择 Let’s Encrypt → 勾选域名 → 申请。成功后开启“强制HTTPS”,面板会自动处理续期。到这一步,90%的用户已经可以关闭本文了。

三、方案B:Certbot命令行(5分钟,更通用)

以 Debian/Ubuntu + Nginx 为例:

apt install certbot python3-certbot-nginx -y
certbot --nginx -d example.com -d www.example.com

Certbot会自动完成域名验证、签发证书并改写Nginx配置(含HTTP跳转HTTPS)。验证自动续期是否就绪:

certbot renew --dry-run

Let’s Encrypt证书有效期90天,Certbot安装时已注册系统定时任务自动续期,无需人工干预。

四、进阶:泛域名证书(*.example.com)

子域名很多的站群或多应用场景,可申请泛域名证书,需改用DNS验证方式:

certbot certonly --manual --preferred-challenges dns -d "*.example.com" -d example.com

按提示在域名DNS添加指定的TXT记录后继续。如果DNS托管在Cloudflare等支持API的服务商,可安装对应插件(如 python3-certbot-dns-cloudflare)实现泛域名证书的全自动续期

五、常见报错排查

  • 验证失败(Connection refused):80端口未放行或被占用,检查防火墙与Nginx状态;
  • DNS问题(NXDOMAIN):域名解析未生效,先 ping 域名 确认指向正确IP;
  • 申请频率限制:同一域名每周签发有上限,调试时加 --staging 参数用测试环境,跑通后再正式签发;
  • 证书到期没续上:多为定时任务被删或端口关闭,跑一次 certbot renew --dry-run 即可定位。

配好HTTPS后顺手开启HTTP/2,安全与速度双收。整个流程在免费试用VPS上演练一遍只需十分钟,从此告别”不安全”警告。

// LEAVE A COMMENT

Your email address will not be published. Required fields are marked *