Let's Encrypt 免费证书申请:certbot 实操和自动续期
申请 HTTPS 证书之前,我做了挺足的心理建设:当年听说这东西要生成 CSR、验证域名、每年手动续期,还要花钱买,感觉是地狱难度。结果 certbot --nginx 一行命令,五分钟搞定,我坐在屏幕前有种"就这?“的空虚——比去 DMV 排队办 Real ID 顺利多了。 这篇把我当时走的完整流程记下来,包括自动续期怎么验证。Let’s Encrypt 的证书免费,有效期 90 天,靠自动续期续命,设好之后基本不用管。 动手前确认两件事 第一,域名已经解析到我的 VPS,在 Cloudflare 那边是灰云状态(先别开小黄云代理,申请完再开——开了代理,certbot 的域名验证偶尔会抽风,我吃过这个亏)。 第二,Nginx 正在跑,80 端口能正常访问。certbot 的 --nginx 模式会往你的 Nginx 配置里自动加证书相关的段,所以 Nginx 必须是正常工作的状态。 安装 certbot sudo apt install certbot python3-certbot-nginx -y python3-certbot-nginx 是 Nginx 插件,让 certbot 能自动读写 Nginx 配置。装完不用配,直接用。 一行命令申请证书 sudo certbot --nginx -d opusmia.com -d www.opusmia.com 把主域名和 www 一起写上,一张证书管两个,省得以后麻烦。运行后它会问几个问题:填邮箱(证书快过期或出问题时通知你,别乱填)、同意服务条款、要不要把 HTTP 自动跳转到 HTTPS(选 yes,省得自己写跳转)。 几分钟后,看到 “Congratulations!” 就成了。certbot 已经自动干了三件事:下载证书、改 Nginx 配置加上 443 和证书路径、设置 80 跳 443。你可以看一眼它改的配置,确认一下: ...