使用Let’s Encrypt的acme.sh申请泛域名证书

Let’s Encrypt是一个非常不错的域名证书机构,致力于普及https,现在早已能够签发泛域名证书(俗称“野卡”),而且还是免费的,要知道其它机构的泛域名证书可贵的很。
下面就简单介绍一下如何申请Let’s Encrypt证书。

安装acme.sh:

在Linux下在线安装脚本,使用以下命令

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

wget -O - https://get.acme.sh | sh

更改默认证书

# zerossl default
acme.sh --register-account -m [email protected]

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

生成证书

域名提供商api自动解析

阿里

export Ali_Key="111111111111"  
export Ali_Secret="XXXXXXXXXXXXXXXXXXXX"

生成证书

acme.sh --issue --dns dns_ali  -d aabbcc.cn -d *.aabbcc.cn

安装证书

主域名

acme.sh --install-cert -d aabbcc.cn \
--key-file /etc/nginx/cert/aabbcc.cn.key.pem \
--fullchain-file /etc/nginx/cert/aabbcc.cn.fullchain.pem \
--reloadcmd "service nginx reload"

nginx配置

主域名配置

vim /etc/nginx/conf.d/aabbcc.cn

server {
    listen       80;
    server_name  aabbcc.cn;
    root         /home/wwwroot/aabbcc.cn;
}
server {
    listen 443 ssl;
    server_name aabbcc.cn;
    ssl_certificate /etc/nginx/cert/fullchain.pem;
    ssl_certificate_key /etc/nginx/cert/key.pem;
    
    location / {
        proxy_pass  http://aabbcc.cn;
    }
}

最后

nginx -t
nginx -s reload

参考:使用ACME申请证书(证书自动续期)