免费SSL证书Let's Encrypt安装使用教程

日期:2017年07月31日 作者: 分类:运维 浏览:4280

Let's Encrypt有什么样的背景有多牛逼,请自行Google

本文内容参考官网教程,需要的可以直接浏览官网教程,上面有各种环境下配置使用的教程。

本人博客使用Nginx + CentOS 7组合,要查看官方教程,请浏览https://certbot.eff.org/#centosrhel7-nginx

安装

Let's Encrypt官方提供了certbot这个工具供我们管理证书使用,certbot软件包已经收录在epel源中,epel源安装可以直接参考使用中科大epel镜像源,国内使用速度更快。已经安装的可以跳过此步骤。

完成epel源安装后,执行如下命令:

$ yum -y install yum-utils
$ yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional

执行安装完成后,就可以安装certbot了,命令如下

$ sudo yum install certbot-nginx

开始

certbot 内置nginx插件,使用nginx的网站可以使用如下命令自动申请签发SSL证书:

$ sudo certbot --nginx

上述命令运行后,它会检测到目前正在运行中的所有站点的域名,并以列表的形式展示,输入需要申请SSL证书的域名编号,然后回车开始申请签发。

如果要同时申请多个域名证书,就输入多个域名的编号,以逗号或空格分开。

申请成功后会提示如何使用HTTPS,内容如下:

1: Easy - Allow both HTTP and HTTPS access to these sites
2: Secure - Make all requests redirect to secure HTTPS access

此处我选择 1 ,即允许同时使用HTTP和HTTPS

选择后,certbot会将证书配置写入到相应域名下的配置文件中,至此,证书申请已经完成。

最后注意查看命令结束后的IMPORTANT NOTES:,如果成功,里面会有Congratulations提示,并说明证书文件的存放路径。

自动更新证书

为了安全,Let's Encrypt签发的证书有效期为90天,我们要配置任务在证书到期前自动申请并更新新的证书。

首先我们测试更新功能:

sudo certbot renew --dry-run

上述命令如果没有错误,说明自动更新功能正常,但并未实际更新证书。

实际使用时手动执行如下命令更新证书:


sudo certbot renew

为了做到自动化,我们要设置计划任务定时检查更新

编辑/etc/crontab增加一行规则


0 23 * * * root certbot renew --quiet

该规则表示每天23时0分以root用户静默执行检查更新命令

标签:

除非注明,戊辰人博客文章均为原创,转载请以链接形式标明本文地址

本文地址:https://wanglu.info/2017/07/1290.html