ACME

ACME

简介

Automatic Certificate Management Environment (ACME) 协议是一种通信协议,用于自动化生成和续期 SSL 证书。

使用方式

acme.sh

使用如下命令即可完成安装:

1
curl https://get.acme.sh | sh -s email=<email>

如果没有 nginx 服务器则使用如下命令:

1
2
yum install -y socat
acme.sh --issue -d <domain> --standalone

如有 Nginx 服务器则使用如下命令:

1
acme.sh --issue -d <domain> --nginx /etc/nginx/conf.d/<domain>.conf

注:配置需手动修改,默认签发的证书会在 ~/.acme.sh/ 目录下

使用证书(nginx):

1
2
3
4
acme.sh --install-cert -d <domain> \
--key-file /path/to/keyfile/in/nginx/key.pem \
--fullchain-file /path/to/fullchain/nginx/cert.pem \
--reloadcmd "service nginx force-reload"

使用证书(standalone):

1
2
3
4
5
acme.sh --install-cert -d <domain> \
--key-file /path/to/keyfile/in/nginx/key.pem \
--fullchain-file /path/to/fullchain/nginx/cert.pem \
--pre-hook "cd <dir> && docker-compose stop" \
--reloadcmd "cd <dir> && docker-compose restart"

注:由于续签证书的时候需要 80 端口运行服务进行验证所以需要提前让容器终止运行,然后再进行续期。

查看证书相关信息:

1
acme.sh --info -d <domain>

在安装完成后会自动添加 cronjob ,检查 cronjob 可以使用如下命令:

1
crontab  -l

参考资料

维基百科

acme.sh 官方项目


ACME
https://wangqian0306.github.io/2023/acme/
作者
WangQian
发布于
2023年4月28日
许可协议