申请证书和自动续期

由于证书申请都是三个月为期限。所以使用acme来进行申请证书并自动续期。

1
2
3
4
apt update   ##更新系统

apt install -y socat
wget -O - https://gitee.com/neilpang/acme.sh | sh -s email=***@gmail.com ##更换自己的邮箱,接收有用的信息

编辑全局

1
sudo nano /etc/bash.bashrc

在文件末尾添加以下行:

1
alias acme.sh=~/.acme.sh/acme.sh

在nano编辑器中,按Ctrl+O保存文件,然后按Ctrl+X退出。
使更改立即生效,重新加载配置文件:

1
source /etc/bash.bashrc

默认的zero ssl证书,更换证书提供商

1
acme.sh --set-default-ca --server letsencrypt

添加cloudflare API和ZoneID

1
2
export CF_Token="更换成API"
export CF_Zone_ID="更换成zoneid"

这里申请的是主域名以及泛域名

1
acme.sh --issue --dns dns_cf -d '*.域名.com'      

安装证书到指定的文件夹

1
mkdir /home/acme   #创建一个文件夹

将证书移动至新建文件夹

1
2
3
4
acme.sh --install-cert -d '*.域名.com' \
--key-file /home/acme/域名.key \
--fullchain-file /home/acme/域名.crt \
--reloadcmd "service nginx force-reload"

赋予权限

1
chmod -R 755 /home/acme      

自动升级脚本

1
acme.sh --upgrade --auto-upgrade    

下面是acme的常用命令

升级并设置自动升级

1
acme.sh  --upgrade  --auto-upgrade

查看版本

1
acme.sh -v

列出所有证书

1
acme.sh --list

查看配置

1
acme.sh --info

查看域名配置,多域名证书填主域名

1
acme.sh --info -d xxx.com

续期
运行定时器,续期所有证书,ecc证书后面最好需要添加–ecc

1
acme.sh --cron

续期指定证书,–force 强制刷新,ecc证书后面最好需要添加–ecc

1
acme.sh --renew -d xxx.com

续期所有证书

1
acme.sh --renew-all

移除证书,只是移除自动更新和管理,证书文件不会删除

1
acme.sh --remove -d example.com --ecc

设置默认CA,目前脚本默认为zerossl

1
acme.sh --set-default-ca --server letsencrypt