免费申请ssl证书

注册账号
在网站 https://zerossl.com/ 注册账号，按下图步骤获取acme key , 将EAB KID 和 EAB HMAC key记录下来

安装和使用
参考网址：https://github.com/acmesh-official/acme.sh
# 安装
wget -O - https://get.acme.sh | sh

# 增加别名（非必要）
alias acme.sh=~/.acme.sh/acme.sh

# 进入到执行目录（非必要）
cd /root/.acme.sh

# 2023-1-1 更新，更换了默认证书提供商为zerossl
# https://github.com/acmesh-official/acme.sh/wiki/ZeroSSL.com-CA

# 绑定和配置账号，填入你前面记录的EAB KID和EAB HMAC key
./acme.sh --register-account --server zerossl \
 --eab-kid <your kid> \
 --eab-hmac-key <your key>

 
# 配置默认证书提供商
./acme.sh --set-default-ca --server zerossl

# 第一步
./acme.sh --debug --issue --dns -d *.saas.vppark.cn --yes-I-know-dns-manual-mode-enough-go-ahead-please --server zerossl

# 增加DNS txt验证记录

# 申请证书，多了一个参数 --renew
./acme.sh --debug --issue --renew --dns -d *.saas.vppark.cn --yes-I-know-dns-manual-mode-enough-go-ahead-please --server zerossl

# 查看本地证书

./acme.sh --list

# 更新所有的证书
acme.sh --renew-all --server zerossl

# 安装证书， 主要是两个文件，私匙(key)和证书(cer)
key: *.saas.vppark.cn.key
cer: fullchain.cer

# 查看证书过期日期
openssl x509 -enddate -noout -in fullchain.cer
openssl x509 -text -noout -in fullchain.cer

# 如果后续进行更新，使用的是zerossl，需要到zerossl网站下载更新的证书。并且将两个证书进行合并，否则会提示证书链不完整。

# 升级软件
acme.sh --upgrade

使用 阿里云 dnsapi自定添加域名认证
更多其他域名提供商api使用方法：https://github.com/acmesh-official/acme.sh/wiki/dnsapi
使用阿里云dns api时，需要先获取到Ali_Key和Ali_Secret,获取方法为

进入阿里云账号，点击 AccessKey管理

获取和创建你的api key

# 参考网站：https://github.com/acmesh-official/acme.sh/wiki/dnsapi#dns_ali

# 设置阿里云dns api需要的key和secret
export Ali_Key="<key>"
export Ali_Secret="<secret>"

# 申请证书

./acme.sh --issue --dns dns_ali -d *.iovhm.com -d iovhm.com

# --dns dns_ali 使用阿里云dns api
# key保存于 /root/.acme.sh/account.conf
# 保存的key和secret被重命名为 SAVED_Ali_Key='<key>'和SAVED_Ali_Secret='<secret>'

# 如果你的dns提供商不支持acme api或者你没有权限管理主域名，可以使用dns cname模式

# 使用dns别名自动验证域名并申请证书
./acme.sh --issue --dns dns_ali -d vppark.cn -d *.vppark.cn -d *.saas.vppark.cn -d *.ihg.vppark.cn -d *.devops.vppark.cn --challenge-alias acme-vppark-cn.iovhm.com --force

# --challenge-alias acme-vppark-cn.iovhm.com 指定dns别名，acme 将自动在别名域名上添加相关认证记录，使认证域名记录变成 _acme-challenge.acme-vppark-cn.iovhm.com

# 既主域名设置的别名于别名记录有一定的匹配关系

# 主域名的别名设置应该是 _acme-challenge.saas.vppark.cn => _acme-challenge.acme-vppark-cn.iovhm.com

# 而不是 _acme-challenge.saas.vppark.cn => acme-vppark-cn.iovhm.com

# 证书列表
./acme.sh --list

# 重新申请证书
./acme.sh --renew -d iovhm.com --force

# 更新证书
# 只需要写主域名既可以自动将所有证书全部更新
./acme.sh --renew -d iovhm.com --force

# 查看证书过期日期
openssl x509 -enddate -noout -in fullchain.cer
openssl x509 -text -noout -in fullchain.cer

