使用ACME自颁发免费SSL证书

本篇主要目的是为启用BTP Custom Domain整体流程中,涉及到的CA机构颁发的SSL证书环节,如下图橙色部分所示,使用自颁发的方式临时启用Custom Domain的。其中涉及的CA机构是Let's Encrypt。
image

前期准备工作

curl https://get.acme.sh | sh -s email=sam@sap.com
export ACME=/Users/I304185/.acme.sh
export PATH=$ACME$PATH 
acme.sh --set-default-ca --server letsencrypt

  • 准备好CSR。由BTP Custom Domian生成好的CSR文件,参看自定义域名服务ui新功能 中,《管理服务器证书》章节。
  • 拥有域名管理员权限。能够添加DNS解析的权限。

自颁发证书中会涉及到自动和手动方式。针对于自动DNS,支持的域名机构请参看域名机构名单 。手动方式需要有DNS管理添加DNS记录完成验证工作。以下会分别针对两种方式完成自颁发证书的操作指南。

自动DNS API生成证书(阿里云为例)

自动生成证书以阿里云为例,购买的域名和DNS服务由阿里云负责运维。

  1. 创建Aliyun RAM账号并且分配DNS控制权限。

登录阿里云管理员RAM管理员界面,创建RAM用户同事分配DNS管理权限。并且记录下AccessKey ID和AccessKey Secret用于后面API调用时使用。
image
image

  1. 写入第一步获得的ID和Secret,设置环节变量。
export Ali_Key="LTAI5tA*****N57aZEjL3gz"
export Ali_Secret="xd2OwMnpAf*****F6E1oXBuRFmsk"
  1. 进入CSR所载路径,开始颁发证书
acme.sh --signcsr --dns dns_ali --csr samisu-csr.pem

image
image

  1. 合并Fullchain.cer和Let's Encryt根证书

下载[ISRG Root X1.cer](https://blog-1310245433.cos.ap-shanghai.myqcloud.com/File/ISRG Root X1.cer)到Fullchain.cer的目录下

cat fullchain.cer ISRG\ Root\ X1.cer > samisu.pem

image

  1. Copy 新生成的pem的内容去Custom Domain激活
    image
    image

手动DNS生成证书

有一些DNS机构不支持API的方式调用DNS的服务,因此需要手动方式验证生成证书。

  1. Issue生成DNS TXT记录
acme.sh --issue -d "*.shibei.samisu.cn" -d "shibei.samisu.cn" --dns
 --yes-I-know-dns-manual-mode-enough-go-ahead-please

image

  1. 在DNS服务中,添加TXT的记录

在第一步生成的TXT的记录,需要DNS的管理去管理域名记录,添加上面产生的记录。
image

3.DNS记录生效检查

因为DNS同步需要一些时间,需要去检查记录是否生效。通常5-10分钟就能生效。

nslookup -q=txt _acme-challenge.shibei.samisu.cn

image

  1. 执行Renew操作,完成CA验证TXT的记录
acme.sh --renew -d "*.shibei.samisu.cn" -d "shibei.samisu.cn" --yes-I-know-dns-manual-mode-enough-go-ahead-please

image

此时会产生一个未用CSR生成的证书,因此我们需要删除系统产生无用证书的文件夹。文件夹的地址请参考最后生成时的目录。

rm -r ~/.acme.sh/*.shibei.samisu.cn_ecc
  1. 利用BTP生成CSR生成新证书
acme.sh --signcsr --dns --csr shibei-csr.pem --yes-I-know-dns-manual-mode-enough-go-ahead-please

image
image

7.剩下的操作可以参考自动生成5-6步骤操作
image

到此为止关于自动DNS颁发和手动DNS颁发SSL证书的操作就算全部结束了。
注意:自颁发的SSL的证书通常有效期为90天,因此想要长期稳定使用可以采买官方机构的颁发一年有效期的证书。

posted @ 2025-03-31 10:19  Journey&Flower  阅读(3)  评论(0)    收藏  举报