由于HTTPS可以防止页面被中间人攻击、确保数据传输过程不被篡改,保证内容完整性。所以升级网站到HTTPS是大的趋向。像苹果AppStore已经禁止使用HTTP协议的接口,而且Chrome也已经将HTTP协议的网站全部标记为“不安全”,现在国外连一些成年人网站都已经全站HTTPS(此处对某些国内依旧【2018.08】HTTP的大站献上鄙视的眼神),我们又有什么懒惰的借口呢。
对于企业网站,或者对安全以及“面子”要求比较高的网站,可以去购买收费的证书。而一般的个人小站,使用Let's Encrypt提供的免费证书就完全够用了。
进入https://certbot.eff.org页面,选择所用的服务端软件和操作系统,如下图。
然后安装页面上的安装提示进行操作即可。
我的操作系统是Ubuntu
使用的是Nginx
提供服务,以此作为示例。
Certbot
团队维护的有一个PPA
的源,所以直接添加源然后apt-get
安装即可:
$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt-get update
$ sudo apt-get install python-certbot-nginx
然后使用certbot
提供的nginx
插件进行获取证书以及配置nginx
站点:
$ sudo certbot --nginx
执行以上命令或自动获取一个SSL证书,并且将相关配置写入到Nginx站点配置文件中,过程中可能有需要手动输入的操作,根据提示进行输入选择即可。如果之前的nginx不是通过apt-get安装,而是编译安装的,插件命令可能无法找到正确的配置文件。配置好之后如果不幸遇到了404的错误,可以参考下:Nginx+PHP php文件404错误的一个可能原因,希望能有帮助。
因为从Let's Encrypt获得的证书有效期只有90天,所以最好添加一个定时任务来自动更新证书。比如我们设置每个月强制更新一下证书,以延长有效期。
0 0 1 * * /usr/bin/certbot renew --force-renewal >> /data/logs/certbot.log
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。