ACME
简介
Automatic Certificate Management Environment (ACME) 协议是一种通信协议,用于自动化生成和续期 SSL 证书。
使用方式
使用如下命令即可完成安装:
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 可以使用如下命令:
参考资料
维基百科
acme.sh 官方项目