最新消息:斯于道者,安有己道?

CentOS使用acme.sh部署Let’s Encrypt免费泛域名ssl证书

源码 大爷 25720浏览 0评论

部署 HTTPS 网站的时候需要证书,证书由 CA 机构签发,大部分传统 CA 机构签发证书是需要收费的,但是Let’s Encrypt这个CA机构签发的证书是免费的!利用acme.sh脚本就可以自动生成Let’s Encrypt证书,并且现在支持域名泛解析证书,意思就是*.shileiye.com旗下所有的子域名都可以使用同一个证书,而不用每个域名都得申请单独的证书。

下面我们就 开始 一步一步使用acme.sh部署Let’s Encrypt免费泛域名ssl证书,并设置证书的自动续期。

一、安装依赖环境

二、下载并安装acme.sh

三、获取并设置域名API

1、以阿里云为例,登录阿里云【 控制台 】—【我的头像 】 — 【accesskeys】 —【创建AccessKey】 —【验证手机短信】—【生成并记录AccessKey ID和Access Key Secret】

2、将获取到的AccessKey ID和Access Key Secret使用以下命令设置保存到服务器以便生成证书时调用。

3、可能的话,最好使用以下命令注册自己的电子邮件地址以接收证书过期提示和管理生成的证书,此项非必须。

四、生成并保存证书到对应路径

如果是Apache服务器请将--reloadcmd "service nginx restart" 修改为--reloadcmd "service httpd restart",此命令意思是在生成证书后执行重启WEB服务器,您也可以删除这句命令,避免出现配置错误,稍后配置好WEB服务器证书配置后再手动重启WEB服务器,不过该处命令也会在续期时执行,如无此句,证书自动续期后可能不会自动重启WEB服务。
acme.sh参数列表:https://github.com/Neilpang/acme.sh/wiki/Options-and-Params
你也可以直接输入命令:acme.sh 则可显示所有命令及选项帮助。

五、手动配置证书到Nginx或Apache

Nginx参考配置:

Apache参考配置

六、重启服务器

重启WEB服务成功后,重新打开浏览器访问https://你的域名,页面正常显示、地址栏加锁则配置成功!如存在问题可 运行nginx -t检查nginx配置文件是否正确

七、证书续期

生成证书时的acme.sh脚本已经添加自动续期的计划任务,可通过 crontab -l 来查看续期任务是否存在。

转载请注明:追风逐雨 » CentOS使用acme.sh部署Let’s Encrypt免费泛域名ssl证书

您必须 登录 才能发表评论!