原谅我当一次标题党 \^_^
网站为什么要配置 HTTPS,以及配置 HTTPS 有什么优点就不再解释了,我们直奔主题,使用 Certbot 工具让你的网站秒配 HTTPS 证书。
Certbot
介绍
Certbot is an easy-to-use client that fetches a certificate from Let’s Encrypt—an open certificate authority launched by the EFF, Mozilla, and others—and deploys it to a web server. Certbot是由 Let’s Encrypt 一个开放免费证书颁发机构的EFF、Mozilla和其他开发者推出的,易于客户端获取网站加密证书。 自嘲:英语翻译的好烂(\^o^)
特点
- 简单易用、免费
- 自动化配置证书
- 效率极高,一次安装,再配置其他站点 https 证书只需要 3 分钟
官方网站: https://certbot.eff.org
- 选择自己的服务器和操作系统环境,Certbot 官方会给出详细的安装过程和使用方法,我的环境是 Nginx + Ubuntu 14.04,安装过程如下
$ 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
加入系统全局变量 PATH 中。
- 获取证书前需要先停止 Nginx 服务
service nginx stop
- 生成单域名证书
certbot certonly –standalone –email your@email.com -d yourdomain.com
一次生成多域名证书:
certbot certonly –standalone –email your@email.com -d yourdomain.com -d yourdomain2.com
证书配置成功后提示:
- 查看网站生成的证书
tree /etc/letsencrypt/live/
- 配置 Nginx ``` …… 其他配置
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/{yourdomain}.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/{yourdomain}.com/privkey.pem; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; ```
- 重启 Nginx
service nginx start
此时再加上 https://
访问你的网站,就会有一把可爱别致的小绿锁 Secure
\^_^
Let’s Encrypt 生成的免费证书为3个月时间,使用 certbot renew
可以无限免费续签 Https 证书
certbot renew
- 在生成证书的时候遇到一个问题 Problem binding to port 443: Could not bind to IPv4 or IPv6.. Skipping
这是因为 nginx 服务没有关闭,执行 service nginx stop
即可。
觉得有用是不是该点赞呢?