本环境是在35互联上做的域名解析,在1Panel DNS解析中找不到35互联,所以只能设置为手动解析和HTTP。我有一篇文章中已经介绍了HTTP申请的证书过程。这边我们只介绍DNS解析申请过程。
1、创建Acme账户
准备好邮箱,使用Let's Encrypt 申请免费的SSL证书(90天一周期)

2、点击申请证书-----Acme 账户选择上面创建的账户

3、点击申请

此时会弹出一个窗体
点 申请证书,参数这样填:
- 主域名:yourdomain.com
- 其他域名:如 www.yourdomain.com(泛域名
*.yourdomain.com只能走 DNS 验证,不能 HTTP) - ACME 账户:选上面建的
- 验证方式:手动解析(DNS) ← 这就是你要的"不用 DNS 账号"
- 自动续签:勾上(注意:手动解析模式续签时仍要人工去 35互联加 TXT,除非以后接脚本)
- 确认
此时 1Panel 不会立刻发证书,会返回一条待添加记录,类似:
名称:_acme-challenge.yourdomain.com
类型:TXT
值:xxxxxx(长串随机值)
问题:
1、

order not found 这个错不是 TXT 值填错,也不是 35互联的问题,而是 1Panel 在「手动 DNS」流程里,点「申请」到「你回面板点确认」之间,Let's Encrypt 那边的 order 会话已经失效了。
2、
Ubuntu 系统会出现这种报错DNS有问题
1Panel 里的 lego 在"自己回查 TXT 是否生效"这一步,用本机 DNS(127.0.0.53 是 Ubuntu systemd-resolved 的 stub)去查 _acme-challenge.xx.xxxx.com,查到 no such host------也就是本机认为这条记录不存在。
LE 服务端其实还没出场,是先死在本机预检上了。
dig 查询当前使用的 DNS:
bash
dig +short whoami.akamai.net
查看 /etc/resolv.conf
bash
vim /etc/resolv.conf