yum install git
cd ~
git clone https://github.com/acmesh-official/acme.sh
cd acme.sh
alias acme.sh=~/acme.sh/acme.sh
acme.sh --register-account -m example@mail.com --server zerossl
[2024年 06月 01日 星期六 11:21:10 CST] Create account key ok.
[2024年 06月 01日 星期六 11:21:10 CST] No EAB credentials found for ZeroSSL, let's get one
[2024年 06月 01日 星期六 11:21:12 CST] Registering account: https://acme.zerossl.com/v2/DV90
[2024年 06月 01日 星期六 11:21:16 CST] Registered
[2024年 06月 01日 星期六 11:21:16 CST] ACCOUNT_THUMBPRINT='*******************'
yum install epel-release
yum install snapd
sudo systemctl enable --now snapd.socket
sudo ln -s /var/lib/snapd/snap /snap
cd /snap/
sudo snap install core
sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
certbot certificates
# 需要在DNS中配置TXT解析,查看输出
# nslookup -type=txt _acme-challenge.example.com 8.8.8.8 查看解析
certbot certonly --preferred-challenges dns --manual -d *.***.***(泛域名) -***.***(主域名) --server https://acme-v02.api.letsencrypt.org/directory
echo "0 0,12 * * * root python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew -q --deploy-hook 'systemctl reload nginx'" | sudo tee -a /etc/crontab > /dev/null
echo 0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew
systemctl list-timers
# 更新
certbot renew
# 静默更新
certbot renew -q
# 更新完执行脚本
certbot renew -q --deploy-hook 'systemctl reload nginx'
# 手动强制更新
certbot --force-renewal
# 查看已经生成的证书(证书名称、域名、到期时间、证书路径)
certbot certificates
# 注销证书
certbot revoke --cert-path /etc/letsencrypt/live/example.com/fullchain.pem
# let's encrypt 的日志路径
/var/log/letsencrypt
//等待整理
certbot certonly --preferred-challenges dns --manual -d *.joylifeint.com -d joylifeint.com --key-type rsa --manual-auth-hook "alidns" --manual-cleanup-hook "alidns clean" --dry-run
//参考
https://github.com/justjavac/certbot-dns-aliyun?tab=readme-ov-file