acme实用技巧:稳妥的自动更新证书之宝塔面板_acme证书-CSDN博客
acme实用技巧:稳妥的自动更新证书之宝塔面板
1. 安装 acme.sh
安装很简单, 一个命令:
curl https://get.acme.sh | sh -s email=my@example.com把 my@example.com 改成自己的邮箱
安装成功后,会为你自动创建定时任务, 如果快过期了, 需要更新, 则会自动更新证书。
默认情况下,证书将每60天更新一次。
- *
切换默认证书
目前 acme.sh 支持 Let’s Encrypt、Buypass、ZeroSSL、SSL.com 和 Google Public CA,默认使用 ZeroSSL,如果需要更换可以使用下面命令:
#切换 Let's Encrypt
acme.sh --set-default-ca --server letsencrypt
#切换 Buypass
acme.sh --set-default-ca --server buypass
#切换 ZeroSSL
acme.sh --set-default-ca --server zerossl
#切换 SSL.com
acme.sh --set-default-ca --server ssl.com
#切换 Google Public CA
acme.sh --set-default-ca --server google2. 设置DNS验证
文档:https://github.com/acmesh-official/acme.sh/wiki/dnsapi
以 CloudFlare为例:使用全局API密钥
准备:全局API密钥在 我的个人资料–API令牌–Global API Key 获得
设置CloudFlare DNS自动验证使用下面命令:
export CF_Key="763eac4f1bcebd8b5c95e9fc50d010b4" #API密钥
export CF_Email="123456@qq.com" #登录邮箱3. 生成证书
如果之前安装过证书,后面加 --force 参数,
acme.sh --issue --dns dns_cf -d xxx.com -d *.xxx.com成功之后,会在 ~/.acme.sh/目录生成以域名为名称的文件夹,里面包含了证书和各种信息
不要通配符,可以去掉:-d *.xxx.com ,如果有多个子域名,后面加 -d x.xxx.com
--dns dns_cf 表示使用CloudFlare DNS 自动验证
4. 安装证书(重点)
假设:你网站使用的是nginx,使用以下命令
acme.sh --install-cert -d xxx.com -d *.xxx.com \
--key-file /www/server/panel/vhost/cert/xxx.com/privkey.pem \
--fullchain-file /www/server/panel/vhost/cert/xxx.com/fullchain.pem \
--reloadcmd "service nginx force-reload"使用这条命令时先要生成证书(第三步)
不要通配符,可以去掉:-d *.xxx.com ,如果有多个子域名,后面加 -d x.xxx.com
命令解读
--install-cert#安装证书--key-file#指定安装证书密钥路径--fullchain-file#指定安装证书路径--reloadcmd#重新加载nginx生效
为什么要使用那么多参数
- 因为acme证书虽然60天更新一次,但是更新的证书路径是:
~/.acme.sh/xxx.com - 你的域名指向的证书路径并不是在
~/.acme.sh/ - 不能使用~/.acme.sh/文件夹中的证书文件,它们仅供内部使用,文件夹结构将来可能会更改
- 这些参数会被acme保存起来,下次自动更新时就会自动把证书安装到指定的路径,然后帮你重新加载nginx生效
宝塔面板安装证书
你要先知道你的域名证书指向的路径在哪,以宝塔面板为例:

/www/server/panel/vhost/cert/xxx.com/fullchain.pem
/www/server/panel/vhost/cert/xxx.com/privkey.pem可以看到宝塔的证书路径是:/www/server/panel/vhost/cert/
如果还没有安装过证书,那么此路径是没有域名证书文件夹的,
宝塔面板默认的证书路径格式是:
/www/server/panel/vhost/cert/{域名}
所以,生成证书后,到~/.acme.sh/目录下找到域名文件夹,复制证书
fullchain.cer #证书
xx.com.key #密钥复制到配置ssl证书的地方, 
再查看证书路径:

最后再执行以下命令,记得修改为你的证书路径
acme.sh --install-cert -d xxx.com -d *.xxx.com \
--key-file /www/server/panel/vhost/cert/xxx.com/privkey.pem \
--fullchain-file /www/server/panel/vhost/cert/xxx.com/fullchain.pem \
--reloadcmd "service nginx force-reload"不是复制了证书生效了吗,为什么还要执行上面的命令?因为这些参数会被保存起来,之后的自动更新才有效!
5. 签发ECC证书
使用以下命令 (以nginx为例)
acme.sh --install-cert -d xxx.com -d *.xxx.com --keylength ec-256 \
--key-file /www/server/panel/vhost/cert/xxx.com/privkey.pem \
--fullchain-file /www/server/panel/vhost/cert/xxx.com/fullchain.pem \
--reloadcmd "service nginx force-reload"多了 --keylength ec-256 参数
6.强制更新证书
所有证书将每60天自动更新一次,但你要强制更新的话
acme.sh --renew -d xxx.com --force或者,对于ECC证书:
acme.sh --renew -d xxx.com --force --ecc如何停止证书续订
要停止证书的续订,您可以执行以下操作以从续订列表中删除证书:
acme.sh --remove -d xxx.com [--ecc]不会从磁盘中删除证书/密钥文件。
您可以自己删除相应的目录 (例如 ~/.acme.sh/xxx.com )。
如何升级 acme.sh
您可以将acme.sh更新为最新代码:
acme.sh --upgrade您还可以启用自动升级:
acme.sh --upgrade --auto-upgrade然后acme.sh将自动保持最新。
禁用自动升级:
acme.sh --upgrade --auto-upgrade 0
{!{data:image/webp;base64,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k5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPfbJyHvtk5D32ych77ZOQ99snIe+2TkPWAAD+/60eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA}!}