使用acme.sh工具申请SSL泛域名证书
1、安装acme.sh
cd /tmp
[[ -f master.tar.gz ]] && rm -f master.tar.gz
wget https://github.com/acmesh-official/acme.sh/archive/refs/heads/master.tar.gz --prefer-family=IPv4 --no-check-certificate
tar zxf master.tar.gz
cd acme.sh-*
./acme.sh --install ${acme_sh_sudo} --log --home /usr/local/acme.sh --certhome /usr/local/nginx/conf/ssl -m [email protected]
2、配置阿里云DNS解析
由于泛域名证书申请的时候需要使用DNS解析作为认证,为了保证自动申请证书成功,我们需要申请一个Access_Key来进行操作,这里以阿里云为例
[[email protected] /usr/local/acme.sh/dnsapi]# pwd dns_ali.sh
/usr/local/acme.sh/dnsapi
在里面找到Ali_Key和Ali_Secret两个字段,将申请到的阿里云access_key填入里面,注意在阿里云中创建了子用户之后,需要授予对应的权限才能对DNS解析进行操作
3、生成证书
我们以阿里云DNS申请泛域名证书为例,执行下列命令则可以生成对应的证书
./acme.sh --issue --dns dns_ali -d rzsmt.com -d *.rzsmt.com
对于ecc证书,我们只需要在后面加上--keylength ec-256
./acme.sh --issue --dns dns_ali -d rzsmt.com -d *.rzsmt.com --keylength ec-256
对于生成的证书,证书链和公钥是分开的,在nginx中,为了保证证书的完整性,我们一般使用带有证书链的公钥,也就是对应这里生成的fullchain.cer文件就包含了公钥和证书链,我们可以直接使用。
- 0000
- 0000
- 0000
- 0000
- 0004