用 Let's Encrypt 加密,如果有多台 reverse proxy,那怎么得到证书呢?

2016-11-28 19:52:00 +08:00
 doubleflower

以前只有一台前端 proxy 时,官方认证工具我都是装在 proxy 端的,proxy -> 源 是走 http ,现在需要多台 proxy ,那怎么处理好?在每个 proxy 都运行认证工具来取得证书应该不行吧,难道要想个办法在其中一台运行认证工具,再定时同步生成的证书到所有别的 proxy 上去?

PS. 我用的是官方工具,在 web root 下加文件的方式。

3290 次点击
所在节点    服务器
13 条回复
sneezry
2016-11-28 19:56:50 +08:00
有多台 proxy 肯定是需要在每台上都部署证书的,你说的思路应该就是通常的做法
doubleflower
2016-11-28 20:01:17 +08:00
@sneezry 在每台上都运行工具来得到 /更新同一个域名的证书没有问题吗?
sneezry
2016-11-28 21:40:48 +08:00
@doubleflower 有问题啊,用一台机器更新证书,其他的机器和它同步
doubleflower
2016-11-28 22:29:58 +08:00
@sneezry 打算换用 acme.sh 的 dns 方式。用官方的 web 方式是有验证问题, acme.sh 的 dns 方式我不确定分别在不同的机器上分别签发有没有问题。目前还是打算麻烦点在本地 dns 方式得到证书并定期同步到所有服务器算了。
neilp
2016-11-28 22:37:48 +08:00
用 dns 方式当然是首选了, 你可以在多个 proxy 上同时申请.

如果你用 http 回源的方式也可以. 通过 `--post-hook` 来通过 ssh 命令部署到所有的 proxy 上.
zealic
2016-11-28 22:40:03 +08:00
Caddy Automatic TLS
kuretru
2016-11-28 22:41:55 +08:00
用 Certbot ,计划任务定时更新的时候顺便同步到其他服务器
sneezry
2016-11-28 23:16:46 +08:00
@doubleflower 也可以使用我写的 SSL.md ,昨天刚加的 API ,几台服务器定期去 wget 就行了,如果已签发证书过期时间距离现在不到 20 天 API 就会返回新证书,否则返回旧证书,几台服务器去抓,第一个抓到的会续签证书,后面几个得到的证书回和第一台拿到的相同,不会出现重复签发的问题。

https://www.v2ex.com/t/323677
doubleflower
2016-11-28 23:42:41 +08:00
@sneezry 话说如果用 acme.sh 在不同的服务器上同一时间分别用 dns 方式签证书会有问题吗?会分别在不同的 proxy 上得到不同的证书内容吗?如果内容不同是不是会有问题?(文档里没提这个,刚才本地试了下好象每次重签内容都不同)

我还是想偷个懒,如果没问题的话只要在每个服务器上运行个脚本设置下就行了,就省了同步了这个麻烦事了。
cnnblike
2016-11-29 02:22:03 +08:00
@sneezry 不是说单个 IP 每天申请的数量有上限吗?
lightening
2016-11-29 03:45:49 +08:00
有上限,每周每个域名 20 个证书,每个证书可以重复 5 次。
sneezry
2016-11-29 10:06:39 +08:00
@cnnblike https://letsencrypt.org/docs/rate-limits/

似乎签发证书的数量限制仅针对域名,不针对 ip
cnnblike
2016-11-29 11:30:59 +08:00
@sneezry 噢噢噢噢……原来是这样!谢谢大佬指点!

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

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

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

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

© 2021 V2EX