acme云服务器生成证书_使用acme.sh申请&自动续期LetsEncrypt免费SSL证书

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

alias acme.sh=~/.acme.sh/acme.sh

使用DNS方式验证 ,本文以CloudXNS(此服务商已经停止为免费用户提供dns服务,建议使用阿里云的云解析dns,方法同理)为例,其他DNS服务商见文章结尾

事实上,acme.sh支持http方式和DNS方式验证域名所有权,但考虑到有时会失效和部分用户服务器无web服务,此处使用DNS验证方式。

1.验证域名

登录DNS控制台,进入API管理页面(不同DNS服务商的页面不同,见文章结尾),记录下API信息

导入API信息到acme.sh,运行命令

export CX_Key="1234"export CX_Secret="sADDsdasdgdsf"

2.签发证书

[1]签发指定域名,如example.com,运行命令

acme.sh --issue --dns dns_cx -d example.com -d www.example.com --reloadcmd "/nginx/nginx/sbin/nginx -s reload"

#签发ECC证书请使用以下命令

acme.sh --issue --dns dns_cx -d example.com -d www.example.com --keylength ec-256 --reloadcmd "/nginx/nginx/sbin/nginx -s reload"

[2]签发泛域名,运行命令

acme.sh --issue --dns dns_cx -d example.com -d *.example.com --reloadcmd "/nginx/nginx/sbin/nginx -s reload"

#签发ECC证书请使用以下命令

acme.sh --issue --dns dns_cx -d example.com -d *. example.com --keylength ec-256 --reloadcmd "/nginx/nginx/sbin/nginx -s reload"

请注意:reloadcmd非常重要,--reloadcmd "" 中为重启对应服务命令,如上为博主自己服务器上重启nginx服务命令。如果没有正确的“reloadcmd”,证书可以自动续订,但是证书可能无法刷新到您的服务器(如nginx或apache),那么您的网站将无法在60天内显示续订证书。

保持最新的acme

acme.sh --upgrade --auto-upgrade

请注意,命令中export CX_Key、export CX_Secret、–dns dns_cx为CloudXNS的参数,请根据你的服务商修改

各大DNS商API获取方法请参考官方文档(本教程在第三点,阿里云在第11),如下:

签发成功!

默认新签发的证书路径为: /root/.acme.sh/签发的域名/ 目录下。

你可能感兴趣的:(acme云服务器生成证书)