let's encrypt 能支持泛域名证书吗?

2020-03-22 10:08:57 +08:00
 darknoll

比如我的域名是 x.com,在解析里面设置了泛解析*.x.com 由于有多个二级域名,如果没有泛域名证书,a.x.com 需要弄个,b.x.com 也要弄个,实在是太麻烦了

5278 次点击
所在节点    程序员
27 条回复
belin520
2020-03-22 10:09:36 +08:00
支持
imdong
2020-03-22 10:10:20 +08:00
是支持的,-d *.doname.com 即可
herotiga
2020-03-22 10:12:23 +08:00
早就支持了
syuraking
2020-03-22 10:14:55 +08:00
支持,但是 DNS 校验不支持自动,略烦,直接花钱买了正规的泛域名证书。
有能力的,可以写个 SH,配合大厂的 API KEY,可能能省些钱。

不过好像某墙对免费的证书有认证,我有一台鸡用 let's encrypt 的证书永远就是无法访问,换成正规的,就完全正常。
ruixue
2020-03-22 10:19:26 +08:00
@syuraking acme.sh 支持 dnsapi 自动续期,有些 dns 提供商不支持 api 的也可以用 dns alias 模式迂回实现
zgoing
2020-03-22 10:20:01 +08:00
@syuraking 其他的不知道,certbot 配合 cloudflare 是可以自动更新的
xiangyuecn
2020-03-22 10:40:47 +08:00
我自己用的纯手工版教程: https://www.cnblogs.com/xiangyuecn/p/9159087.html 我现在每三个月就按标准化半自动流程手工操作一遍😂

前几天刚教一个哥们申请通配符证书,他本来想买阿里云的一年要 1 千多块,瞬间就省了,但服务费还没有给。。。

[纯手工版-申请操作步骤]
1. 如果没有域名对应的 CSR,先生成 CSR,填写所有需要的域名和泛域名,保存得到 domain.csr domian.key ,懒得配置 openssl 就用 web 版 url:https://certificatetools.com/

2. 生成 account 秘钥,如果没有生成就生成新的,如果生成了就不要再生成,账号秘钥丢了这个秘钥生成的证书以后没法管理:
openssl genrsa -out account.key 2048
openssl rsa -in account.key -pubout -out account.public

3. HTML 版申请证书( clone 源码纯本地 HTML 文件,检查 network 面板只有 Let’s Encrypt API 的请求): https://gethttpsforfree.com/
申请过程中需要用 account.key 进行签名,域名太多?懒得每次都用 openssl 签名:可以在浏览器控制台内执行 https://github.com/diafygi/gethttpsforfree/issues/164 内代码,填写 account.key 到私钥输入框后会自动签名(我写的,一样的检查 network 面板只有 Let’s Encrypt API 的请求)

申请到第 4 步需要验证域名所有权,全部进行 dns 验证,把所有的 dns txt 记录配置到 dns 解析里面,然后再来一个个点验证按钮

最后得到证书文本,把文本保存到 domian.crt 内,domain.key domian.crt 两个文件就是完整的证书了,根据 web 容器需要的格式可以把这两个文件转成需要的格式。
abcdGJJ
2020-03-22 10:46:07 +08:00
xiangyuecn
2020-03-22 10:47:53 +08:00
@syuraking #4 目测是服务器端证书里面没有完整证书链,刚好客户端机器上又从来没有下载过 Let's 的中间证书。

把 Let's 的那个中间证书追加到证书的结尾应该就没毛病了
eason1874
2020-03-22 10:48:15 +08:00
@syuraking 你用的啥,我用 acme.sh + DNSPod 可以自动配置泛域名证书啊。
darknoll
2020-03-22 10:58:35 +08:00
@eason1874 我这个域名是阿里云国际的,不知道咋弄啊
qinxi
2020-03-22 11:14:20 +08:00
@darknoll #11 如果你自己的 dns 服务商不在 acme.sh 的列表, 你可以用 DNS-alias-mode 模式 借用一个在支持列表的域名操作
eason1874
2020-03-22 11:18:19 +08:00
@darknoll #11 这个工具也支持阿里云的解析 API,去 github 看文档,我发不了链接了。

```
export Ali_Key="sdfsdfsdfljlbjkljlkjsdfoiwje"
export Ali_Secret="jlsdflanljkljlfdsaklkjflsa"
acme.(防止被识别成外链) sh --issue --dns dns_ali -d *.域名
```

如果你怕 API 密钥泄露,你可以只允许 API 设置 _acme-challenge.域名 ,因为验证的时候是给 _acme-challenge 添加 txt 记录,只需要用到这个。

这方面在 DNSPod 的做法是可以 _acme-challenge 子域名共享给另一个账号,然后那个账号就只能更改这个子记录,就可以放心用那个账号的密钥。阿里云的操作估计类似,你研究研究。
gwy15
2020-03-22 11:19:44 +08:00
@syuraking certbot 有各种插件,对不同的 DNS 提供商只要提供密钥就可以了。比如我现在用的 cf 的 DNS,只要装个 certbot-dns-cloudflare,保存 CF 的 access token 到一个 ini 文件里面,跑 certbot 的时候传参进去就可以了。
ODD10
2020-03-22 11:37:56 +08:00
以用 1 年多了
wh469012917
2020-03-22 11:43:05 +08:00
@syuraking DNS 校验也是支持自动的
andynet
2020-03-22 12:04:52 +08:00
支持
syuraking
2020-03-22 12:17:32 +08:00
@xiangyuecn 我直接就是 fullchain 的,没用,直接就是断,这点我自己懂的。
huguotai
2020-03-22 12:19:14 +08:00
可以的
syuraking
2020-03-22 12:19:20 +08:00
@eason1874 弃了,因为墙屏蔽这个免费证书,不知道什么情况。同证书挂到其它机器正常,在某些 IP 上就 RESET,域名相同,就这情况,算了,老实上收费。

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

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

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

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

© 2021 V2EX