美文网首页java后端集群化专题
使用Let's Encrypt免费证书实现https

使用Let's Encrypt免费证书实现https

作者: 江江的大猪 | 来源:发表于2018-04-25 17:02 被阅读6次

Let's Encrypt最为免费CA和主流浏览器厂商都有合作,它的免费证书上线到现在可以说很大的推动了全网https化,尤其是小型站点。大型站点出于安全考虑还是会买更贵的证书,那些证书的审批更加严格,而且会有保证金,如果因为证书认证造成损失的会赔很多钱。但是对于中小站点,只能说Let's Encrypt是业界良心,新手福音~

本文的环境是centos7+nginx,Let's Encrypt提供的证书生成软件在不同的环境也不一样。不同的环境去官网看资料,很详细,无脑照着做就行了
PS: Let's Encrypt生成证书的工具只支持*nix系统,win的小伙伴没有办法用哦

  • 官网说推荐所有人都用Certbot客户端生成证书
  • 点进去之后根据自己的服务器环境选择,我这里选择nginx+centos7,根据说明certbot已经包含在epel源中了,所以可以直接安装
# 安装certbot客户端
yum install certbot-nginx
# 生成证书,如果不加certonly,certbot会自动修改nginx的配置文件。我只想让它生成证书,配置nginx的工作自己做。
# 执行之后会有好多选项,输入邮箱、阅读协议是否同意、是否允许Let's Encrypt往邮箱发一些通知邮件、选择要生成证书的域名
certbot --nginx certonly
  • 执行之后会显示私钥和证书的位置,其实所有的东西都在 /etc/letsencrypt,它还提示我们可以把这个文件夹备个份,证书的过期时间是三个月后(Let's Encrypt的证书是三个月),执行certbot renew可以续约
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/www.laifuzhi.cn/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/www.laifuzhi.cn/privkey.pem
   Your cert will expire on 2018-07-24. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot
   again. To non-interactively renew *all* of your certificates, run
   "certbot renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
  • 在nginx中使用刚生成的私钥和证书,相关配置可以看我的上一篇文章,上一篇文章使用的自签名证书,现在当然就不用了~
  • 要注意的是certbot默认是证书到期前30天内才允许续签,如果我们想随时都能更新证书,可以修改默认配置,修改/etc/letsencrypt/renewal下对应域名的配置,将# renew_before_expiry = 30 days的注释去掉,并且改成90天。后续可以配置crontab实现定期续约
  • 最后附上最终的小绿锁效果图

相关文章

网友评论

    本文标题:使用Let's Encrypt免费证书实现https

    本文链接:https://www.haomeiwen.com/subject/lbsylftx.html