惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

腾讯CDC
IT之家
IT之家
有赞技术团队
有赞技术团队
WordPress大学
WordPress大学
Apple Machine Learning Research
Apple Machine Learning Research
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
人人都是产品经理
人人都是产品经理
The Cloudflare Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 【当耐特】
V
V2EX
Last Week in AI
Last Week in AI
H
Help Net Security
The GitHub Blog
The GitHub Blog
S
SegmentFault 最新的问题
F
Fortinet All Blogs
I
InfoQ
宝玉的分享
宝玉的分享
A
About on SuperTechFans
MongoDB | Blog
MongoDB | Blog
Microsoft Azure Blog
Microsoft Azure Blog
Blog — PlanetScale
Blog — PlanetScale
B
Blog

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
一日一技 | 一篇教你搞定 SSL 证书监控和续签 - 少数派
2024-04-17 · via 少数派

数字证书颁发机构 Gworg(光网)宣布,从 2023 年 12 月 31 日开始,将停止签发为期一年的「TRUSTASIA」单域名 SSL 证书,这是市场上最后一款提供一年期免费 SSL 证书的产品。

鉴于阿里云等国内服务商广泛采用此证书,这意味着使用免费证书的网站需要每 3 个月进行一次续期。而网站的 SSL 证书一旦过期,网站便无法通过 HTTPS 安全访问,在主流浏览器中将无法打开,或者会显示安全警告。这一调整使得管理多个域名或子域的难度显著增加,许多个人网站和图床也面临因证书过期而暂时下线的威胁。

本文将介绍几种有效的 SSL 证书续签和监控方法,并通过申请免费的泛域名证书来简化域名管理流程。

Certbot 自动续签

Certbot 是一个免费的开源应用,用于自动获取并续签 Let's Encrypt 提供的 SSL/TLS 证书。Certbot 支持泛域名的免费 SSL 证书,用户仅需一次性申请,即可实现对所有子域名的覆盖,大大简化了证书的管理工作。然而,Certbot 的自动续签功能依赖于 80 端口的访问,这在国内的家用宽带环境中常常受限。针对这种情况,可以使用反向代理工具 Nginx Proxy Manager 来实现自动续签。

XZg2byppjoqurpx5UfbcAAH0nWb

以下是使用 Certbot 在 Debian 11 系统上,通过 certbot-dns-aliyun 插件自动获取和续签阿里云托管域名的泛域名 SSL 证书的具体步骤。如果你使用的是其他域名托管服务,如 Cloudflare,则将插件替换为 certbot-dns-cloudflare,其他步骤相同。

1. 安装 Certbot 和插件

首先,安装 Certbot:

sudo apt update

sudo apt install certbot

然后,安装 certbot-dns-aliyun 插件,以允许 Certbot 自动配置 DNS 记录,验证域名所有权。由于这个插件不在 Certbot 的官方仓库中,你可能需要使用 pip 来安装:

sudo apt install python3-pip

sudo pip3 install certbot-dns-aliyun

2. 配置 AccessKey 凭证

  1. 在阿里云控制台创建一个拥有 DNS 配置权限的 AccessKey 密钥。
  2. 创建一个文件来保存你的 AccessKey 凭证,并确保文件权限安全:
sudo mkdir /etc/letsencrypt
sudo touch /etc/letsencrypt/aliyun.ini

sudo chmod 600 /etc/letsencrypt/aliyun.ini
  1. 编辑 /etc/letsencrypt/aliyun.ini 文件,输入你的 AccessKey 密钥信息:
dns_aliyun_access_key = YOUR_ACCESS_KEYdns_aliyun_access_key_secret = YOUR_ACCESS_SECRET

3. 使用 DNS 插件获取证书

运行 Certbot 并指定 DNS 插件及配置文件:

sudo certbot certonly \--authenticator dns-aliyun \
  --dns-aliyun-credentials /etc/letsencrypt/aliyun.ini \

  --dns-aliyun-propagation-seconds 60 \-d "*.newzone.top" \-d newzone.top

-d 参数用于指定你想要证书覆盖的域名。上方的命令会为 newzone.top 和所有子域 *.newzone.top 获取证书,证书在同一个文件。如果有多个域名,可以用 -d 添加多个参数。

4. 自动续签证书

Certbot 默认会设置自动续签。你可以通过以下命令测试续签是否成功:

sudo certbot renew --dry-run

如果测试成功,Certbot 将自动处理证书续签。当证书剩余有效期不足 30 天时,系统便会自动续签,将有效期恢复至 90 天。

在使用 Certbot 与某些云服务提供商(如阿里云)进行首次自动续签时,Certbot 的自动续签行为有时可能被云服务平台误认为是异常的 Access Key 调用行为,导致系统自动触发安全警报。比如,阿里云半夜给我打电话通知风险(还好我开启了免打扰,尽管这类通知十分必要)。如果你接收到了此类通知,不必太担心,只需进行正常检查即可。

CDN 手动续签

对于使用图床或 CDN 服务的用户,由于云服务商的授权问题,证书可能无法通过 Certbot 等服务自动续签。例如,阿里云和七牛云都提供了 SSL 证书的相关接口,但根据客服的说法,这些接口并不能用于替换 CDN 的域名证书,自动续签只支持付费 SSL 证书,免费用户必须手动执行证书续签过程

即使是手动续签,你依然可以继续使用通过自动化工具获得的泛域名证书。下面介绍手动续签的具体步骤:

一、定位证书文件

Certbot 的泛域名证书通常存放在 /etc/letsencrypt/live 目录下。对于使用 nginx-proxy-manager 的用户,证书则存储在 config/letsencrypt/archive 目录中,该目录下包含多个以 npm- 开头的编号文件夹,例如 npm-1,这里的数字表示证书的申请序号。

QGA3bPCi0oU4TuxQ6RLcYw3MnVf

二、上传证书至 CDN

在 CDN 的管理界面中自定义上传证书来替换旧的泛域名证书。粘贴 fullchain.pem 文件的内容作为证书(公钥),privkey.pem 文件的内容作为私钥。

J5SRbBirZoxAFyxQGRfcQYXTn6d

定期监测 SSL 证书的状态是维护网站安全和可靠性的关键环节。这不仅有助于确保数据传输的加密,还能及时发现并解决证书过期或其他相关问题,避免网站访问受到影响。

我使用 Uptime Kuma 来监控 SSL 证书的状态,以下是监控设置步骤:

  1. 进入 Uptime Kuma 实例,点击右侧「+」按钮来添加一个新的监控项目。
  2. 选择监控类型。对于 SSL 证书监控,选择「HTTP(s)」类型,因为这涉及到监测一个使用 SSL 证书的网站或服务。
  3. 在下方「高级」设置中,勾选启用「证书到期时通知」。
HGhtbadIzohx0bxHS4Pcnk9zn0e

完成这些步骤后,Uptime Kuma 将开始监控指定网站的 SSL 证书状态。如果证书接近到期日期,你将根据你的通知设置收到警报。Uptime Kuma 默认会在 TLS 证书剩余有效期少于 21 天、14 天、7 天时发送提醒通知。你也可以在设置>通知>TLS 证书过期通知,修改提前通知天数。

更多

我很难理解国内云服务商对 SSL 证书的做法。提高 SSL 证书费用的同时增加免费证书续签的难度,这样的策略似乎是为了鼓励用户购买付费证书。然而,这种做法可能没有充分考虑到国内用户的付费习惯。对于像我这样的用户,云服务开销主要集中在服务器和 CDN 流量上,不会考虑昂贵的 SSL 证书。目前市场上,单域名 SSL 证书的年费用已超过 300 元,若需覆盖多个子域名,则需购买泛域名证书,费用更是高达 1000 元以上,这甚至超过了我为服务器所支付的费用。

云服务商的这种定价策略可能源自他们自身面临的高运营成本,如昂贵的商业宽带费用等。面对这样的压力,他们可能无奈地将成本转嫁到 SSL 证书等终端产品上。尽管这可以理解,但对于像我这种个人用户来说,当 SSL 证书的开销超过服务器本身时,显然难以接受。这也是我写这篇文章的原因。

> 下载少数派 客户端、关注 少数派小红书,感受精彩数字生活 🍃

> 实用、好用的 正版软件,少数派为你呈现 🚀