获取Let`s Encrypt证书的三种方式

1,acme.sh 方式

1)获取acme脚本

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

2)开始获取证书

acme.sh强大之处在于,可以自动配置DNS,不用去域名后台操作解析记录了,我的域名是在阿里注册的,下面给出阿里云解析的例子,其他地方注册的请参考这里自行修改:传送门

请先前往阿里云后台获取App_KeyApp_Secret 传送门,然后执行以下脚本

export Ali_Key="xxxxxxxxxxxxxxxxx"
export Ali_Secret="xxxxxxxxxxxxxxxx"

注释: xxxxxxxxxxxxxxxx自行替换

acme.sh --issue --dns dns_ali -d  domain.com -d *. domain.com

注释:domain.com自行替换为自己的域名

注意:步骤2我的操作的路径在root用户目录下,/root/.acme.sh/下,执行上述命令后, 生成的证书位于/root/.acme.sh/domain/下 

acme.shcertbot的方式更加自动化,省去了手动去域名后台改DNS记录的步骤,而且不用依赖Python,墙裂推荐 

第一次成功之后,acme.sh会记录下App_Key跟App_Secret,并且生成一个定时任务,每天凌晨0:00自动检测过期域名并且自动续期。对这种方式有顾虑的,请慎重,不过也可以自行删掉用户级的定时任务,并且清理掉~/.acme.sh文件夹就行

2,docker方式

docker run --rm  -it  
  -v "$(pwd)/out":/acme.sh  
  -e Ali_Key="xxxxxx" 
  -e Ali_Secret="xxxx" 
  neilpang/acme.sh  --issue --dns dns_ali -d domain.com -d *.domain.com

成功之后,证书会保存在当前目录下的out文件夹,也可以指定路径,修改上面第一行 "$(pwd)/out",改为你想要保存的路径即可。同理,domain.com自行替换

详细用法,可以参考:传送门

3,certbot方式

证书的配置及cerboot方式获取证书参考申请 Let’s Encrypt 泛域名证书 及 Nginx/Apache 证书配置

原文地址:https://www.cnblogs.com/peteremperor/p/10031522.html