V变量—建站日记 - acmh
type: channel
link: http://vvars.com/tag/acmh/
items: LNMP添加ssl证书不成功的问题

LNMP添加ssl证书不成功的问题
type: item
date: 2024-11-29T01:17:00+08:00
description: 最近重新做网站，结果发现SSL创建失败，经排查发现是LNMP带的创建SSL脚本acme.sh更换了证书提供商，从LETS encrypt 改为ZEROssl，查询教程，最终解决了该问题，整理如下。注意：由于v3，acme.sh使用 Zerossl 作为默认证书颁发机构 (CA)。需要先注册账户（一次性），然后才能颁发新证书。另请参阅： https: //github.com/acmesh-official/acme.sh/wiki/Change-default-CA-to-ZeroSSL1.注册您的账户。1a. 使用电子邮件地址acme.sh --register-account -m myemail@example.com --server zerossl1b. 持有 EAB 凭证或者，如果您注册了一个ZeroSSL 帐户，acme.sh请使用外部帐户绑定（EAB）凭据进行引导，如下所示：从https://app.zerossl.com/developer生成您的 EAB 凭证注册您的 EAB 凭证。acme.sh --register-account --server zerossl \ --eab-kid xxxxxxxxxxxx \ --eab-hmac-key xxxxxxxxx拥有 ZeroSSL 账户的用户可以从开发者控制台管理颁发的证书。2.颁发证书使用 Zerossl.com 进行以下操作--server zerossl：acme.sh --server zerossl \ --issue -d example.com \ --dns dns_cf如果不想--server zerossl每次颁发证书时都指定，可以设置zerossl为默认CA：acme.sh --set-default-ca --server zerossl阅读：https ://github.com/acmesh-official/acme.sh/wiki/Server从zerossl颁发任何证书，无需指定--server：acme.sh --issue -d example.com --dns dns_cf故障排除Le_OrderFinalize：必须指定 KeyID如果证书颁发失败，并且您在日志中看到类似这样的内容[XYZ 18 09:50:07 -02 2020] Create new order error. Le_OrderFinalize not found. {"type":"urn:ietf:params:acme:error:malformed","status":400,"detail":"A Key ID MUST be specified"}然后，重新生成您的 EAB 凭证（参考步骤 2）并重新运行证书颁发。请参阅：acme.sh/issues/3310。