使用acme.sh申请ZeroSSL证书

首先建议去ZeroSSL的官方网站注册一个帐号,然后在开发者页面里面的EAB Credentials for ACME Clients下边,点击Generate,里面生成的两个字符串,记得保存一下。

接着在系统上安装acme.sh,我使用的是FreeBSD,用pkg安装即可。

pkg install -y acme.sh

切换到创建的acme用户。

su - acme

将默认的CA改成ZeroSSL,最新版的可以不用,因为默认就是它了。

acme.sh --set-default-ca --server zerossl

然后将上边保存的那两串东西,填到下边的命令里面,然后回车运行。

acme.sh --register-account --server zerossl \
--eab-kid <你的kid> \
--eab-hmac-key <你的key>

新建一个目录,比如/usr/local/www/ssl,记得要给acme写入的权限,还有www读取的权限。

将下边这段配置加入到对应申请证书域名的NGINX配置文件中。

server {
listen 80;

server_name <你的域名>;

root /usr/local/www/ssl;

}

记得加完之后重新启动NGINX,同时记得开80端口。

接着申请证书。

acme.sh --issue -d 你的域名 --webroot /usr/local/www/ssl

最后安装你的证书,不过记得给acme这个用户提升一下权限,比如sudo什么的。安装证书的位置自己选一个,比如这里的是/usr/local/etc/acme/certs

acme.sh --install-cert -d <你的域名> \
--cert-file /usr/local/etc/acme/certs/<你的域名>.cert \
--key-file /usr/local/etc/acme/certs/<你的域名>.key \
--fullchain-file /usr/local/etc/acme/certs/<你的域名>.fullchain \
--reloadcmd "sudo service nginx restart"

Leave a Reply

Your email address will not be published. Required fields are marked *