CentOS7 LNMP环境安装Let’s Encrypt免费SSL证书

  • A+
所属分类:挨踢技术

我先抱怨一下,开始我只是想让偶乃秋辰由https://链接形式访问而已,但是由于我对Linux系统知识的匮乏,期间差点把全部数据丢失,并且经历了换系统、换虚拟主机面板、网站搬家等情况,最终在每天只睡4个小时的情况下折腾了整整10天,终于实现了目标。虽然这次经历要以“悲惨”来形容,但也令我学到了很多东西。
CentOS7 LNMP环境安装Let's Encrypt免费SSL证书

介绍一下秋辰生产环境,我使用的Linux系统是CentOS7,配置军哥的LNMP,我搜索了一下网络上并没有CentOS7安装Let’s Encrypt的教程,因为CentOS7相较CentOS6有很大的区别,所以安装方法也就不一样,写下这篇教程,即帮助别人又给自己备忘。

在做任何操作之前,先备份自己的数据库和网站文件,虽然正常情况下不会丢失文件,但是小心驶得万年船,以防万一吧。

1、我们需要把域名的DNS临时更换到国外的域名商,国内DNS的肯定是不行的,包括DNSPod国际版也不行。可以使用NameCheap、LinodeDNS等免费的DNS域名商(更换到国外DNS后别忘了做A记录),虽然有些麻烦但是只需Let's Encrypt申请成功后即可换回以前的,续期也不影响。(现在不用了,使用DNSPod国内版就可以。)

2、打开/usr/local/nginx/conf/vhost/你的绑定网站.conf(比如我的是onqc.com.conf),然后把以下这段代码删掉(找不到就跳过这一步):

  1. location ~ /\.
  2. {
  3. deny all;
  4. }

删掉以后保存并上传覆盖原文件并执行命令:

  1. service nginx restart

3、安装epel、certbot等必要组件:(这期间会提示你输入几个“y”并回车,直到安装完成。)

  1. yum install epel-release
  2. yum install certbot

4、开始安装命令:

  1. certbot certonly --email chilsion@qq.com(更换成你自己的邮箱) --agree-tos --webroot -w /home/wwwroot/onqc.com -d onqc.com(如果就需要绑定一个网址把后面的删掉即可) -d www.onqc.com(改成自己的网站)

5、这时就会出现一个蓝色的直接回车就好
CentOS7 LNMP环境安装Let's Encrypt免费SSL证书

6.、当显示下面这张图里的内容,就说明完成了,并且备份/etc/letsencrypt/live/文件夹的内容,你的Let's Encrypt证书文件就在这个文件夹内。
CentOS7 LNMP环境安装Let's Encrypt免费SSL证书

7、Let’s Encrypt证书虽然只有90天的期限,但是可以无限续期;我们可以通过设置Crontab自动续期,避免自己手动续期的麻烦,运行以下命令:

  1. yum install vixie-cron crontabs      //安装Crontab
  2. systemctl enable crond.service      //设为开机自启动
  3. systemctl start  crond.service        //启动

然后我们添加crontab任务:

  1. crontab -e

然后按键盘上的“i”键,在空白行输入:

  1. 0 3 */20 * * certbot renew --dry-run && service nginx reload

再按ESC键,再输入“:wq” (输入“”以内,不包括“”,如果有输错的,需要按着Ctrl+Backspace删除)回车即可。
以下命令可以查询crontab任务列表:

  1. crontab -l

好了,大功告成了!
CentOS7 LNMP环境安装Let's Encrypt免费SSL证书
PS:如果偶尔原意手动续期也可以直接输入:

  1. certbot renew --dry-run && service nginx reload

如果需要把以前的http网址301重定向到新的https网址请阅读《“https://”LNMP的301重定向设置

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: