sync-cdn-ssl + acme.sh,阿里云和七牛 CDN 免费 HTTPS 证书一劳永逸

10 小时 38 分钟前
 yedaxia

AI 写了个自动部署阿里云 CDN 免费 HTTPS 证书

如果大家有印象,以前阿里云有免费一年的 SSL 证书,后来变成 3 个月的,可以申请 20 个域名。

如果域名比较多的情况下,一年下来根本不够用,购买一个支持通配符的 DV 证书,费用在 2000 左右一年,域名比较多的情况下,这个费用也是挺客观的。

为了把这笔费用省下来,我用 acme.sh 自动续期 Letsencrypt ,ZeroSSL 提供的 3 个月免费证书,证书是在服务器生成的,但是还得自己手动上传到阿里云控制台中。

由于我的域名比较多,这样的事情做了几次后,作为开发者的我,心情有点复杂。

于是我就萌生了写一个自动化脚本的想法,但是每次都是等到证书快过期的时候,才想起来要做这个事,又抽不出来时间,所以一直就没有实施。

这次,我把想法告诉了 AI 后,没想到它还不到 5 分钟,就搞定了,前后不到 1 个小时,就完成了测试和部署,这在以前是不敢想的。

在这里分享一下具体的步骤:

第一步:免费证书生成脚本:acme.sh

第二步:用 python 调用阿里云的 API 把证书上传部署到 CDN

第三步:在服务器添加定时任务,每个月 1 号执行一次

就这样,再也不用这个事情操心了,这个脚本会帮我实现自动续签,永久免费。

脚本已经开源:sync-cdn-ssl

718 次点击
所在节点    程序员
9 条回复
skiy
10 小时 23 分钟前
没有这么麻烦,直接上 https://nginx.org/en/docs/http/ngx_http_acme_module.html 这个模块。不过官方直接 apt 的包这模块没编译
docx
10 小时 17 分钟前
https://github.com/certimate-go/certimate
https://github.com/certd/certd

另外,七牛开发者的 CDN 免费额度只支持 HTTP ,部署证书上去应该会产生额外扣费
BeforeTooLate
10 小时 14 分钟前
没记错的通过接口部署阿里云免费的证书不存在 20 个限制
cccer
10 小时 12 分钟前
yedaxia
10 小时 12 分钟前
@docx https 是网站标配了,没办法。
yedaxia
10 小时 10 分钟前
@cccer 居然没留意到,重复造轮子了~
vfx666
8 小时 48 分钟前
@cccer 这个是逆向的接口吗?应该不是官方给的接口吧
Kaiyuan
8 小时 41 分钟前
我现在是 NAS 拿到证书推到两个 OpenWRT ,原本是另一台群晖也推的,但是被推的群晖的 WebDAV 总是证书错识,然后只能跑脚本申请一次证书了。
oser
8 小时 36 分钟前
用 caddy 配个反向代理,自动续期

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1191498

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX