使用acme.sh申请Let's Encrypt免费SSL证书

873 词

acme.sh 实现了 acme 协议, 可以从 letsencrypt 生成免费的证书.

安装acme.sh

1
curl https://get.acme.sh | sh

申请证书

1
acme.sh --issue -d domain.tld -d www.domain.tld --webroot /home/wwwroot/domain.tld/ --server letsencrypt

替换domain.tld为你的域名,/home/wwwroot/domain.tld/为你的网站根目录
携带--server letsencrypt是因为新版acme.sh默认使用了ZeroSSL,需要注册账号使用,所以我们使用Let’s Encrypt
如果你已经注册了ZeroSSL账号,可以不携带--server letsencrypt参数

生成的证书默认存放在~/.acme.sh/domain.tld/目录下

安装证书

Apache example:

1
2
3
4
5
acme.sh --install-cert -d example.com \
--cert-file /path/to/certfile/in/apache/cert.pem \
--key-file /path/to/keyfile/in/apache/key.pem \
--fullchain-file /path/to/fullchain/certfile/apache/fullchain.pem \
--reloadcmd "service apache2 force-reload"

Nginx example:

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

自动更新证书

1
acme.sh --upgrade --auto-upgrade
留言