安装工具
卸载:
acme.sh --uninstall
下载工具:
git clone https://github.com/acmesh-official/acme.sh
添加别名:
alias acme.sh=/usr/local/acme.sh/acme.sh
注册acme账号:
acme.sh --register-account -m test@foxmail.com
安装工具:
./acme.sh --install -m test@foxmail.com
配置nginx:
server {
listen 80;
listen [::]:80;
server_name www.test.com;
location ^~ /.well-known/acme-challenge/ {
default_type "text/plain";
root /etc/letsencrypt/;
allow all;
}
error_page 404 /404.html;
location = /404.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
注:生成证书的地址必须让nginx可以访问
生成证书:
acme.sh --issue -d admin.test.com -w /etc/letsencrypt
注:No EAB credentials found for ZeroSSL, let’s get one
执行:
acme.sh --set-default-ca --server letsencrypt
安装证书:
acme.sh --install-cert -d www.test.com --key-file /etc/letsencrypt/live/www.test.com.key --cert-file /etc/letsencrypt/live/www.test.com.cer --reloadcmd "docker exec -it nginx /bin/bash -c 'service nginx force-reload'"
注:如果安装证书的目录不存在,则无法安装成功,所以必须手动创建安装证书的目录。
acme.sh本身的自动更新
开启:
acme.sh --upgrade --auto-upgrade
关闭:
acme.sh --upgrade --auto-upgrade 0
acme更新:
acme.sh --upgrade
全部证书更新:
acme.sh --renew-all --force
单个证书更新:
acme.sh --renew -d www.test.com --force
更新最佳方案:
开启acme自动更新:
acme.sh --upgrade --auto-upgrade
使用crontab定期更新证书:
* 1 1 * * acme.sh --renew-all --force
注:crontab 参见本人博客:https://blog.csdn.net/qq_36493719/article/details/109740330