Fork me on GitHub
Google

快速搞出一个可以用的Https证书

最新的chrome版本已经全面剿杀不安全的HTTP站点,而业界也已经把Https当做一种标准,HTTPS比HTTP传输更安全,Google 认为,安全对于 Web 至关重要,HTTPS 协议才能更好地保护网站上的用户数据。基于这种趋势,势必让自有的博客支持HTTPS。(Chrome 68 发布

只是自有博客使用,所有市面上免费的HTTPS正式比较合适,从google上找一下,发现Let's Encrypt是一个不错的选择。我的bolg是搭建ubuntu 16.04,使用nginx 作为web服务器,所有下面的所有操作也是基于此进行验证。

前提:

现有的blog已经支持http访问了,相应的nginx配置等都已经配置好,相应的文档可以参考我的博客迁移记录

安装Certbot

Certbot是个什么东西呢?根据参考文档,实际上就是用来管理Let's Encrypt证书,申请,更新配置,删除等操作都是基于这个软件进行操作。

sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:certbot/certbot
sudo apt-get update
sudo apt-get install -y python-certbot-nginx

申请证书

使用certbot命令可以给指定的域名申请HTTPS证书,并将证书写入到nginx配置中。 certbot --nginx -d www.wangyuxiong.com -n --email yxiong.wang@gmail.com --agree-tos 执行成功后,如下图显示的。 -w899

从上面的内容看出,Let's Encrypt证书的有效期只有3个月,看到有朋友介绍说,Certbot会通过Cron和systemd timer自动更新证书,所以证书的时效性不用担心。

碰到的一点问题

  • 部分文章上看到说是执行 certbot --nginx -d www.wangyuxiong.com -n 即可,但是我这里执行会有异常如下. 碰到这样情况的朋友,可以执行按我上面的操作执行。 异常:You should register before running non-interactively, or provide --agree-tos and --email <email_address> flags. -w831

刚刚启用HTTPS,后续再观察下效果。

comments powered by Disqus

top