为了网站的安全,是时候加上 https 了。https 需要申请证书, 可以选择付费(阿里云),免费(腾讯云,阿里云),当然选择免费版了,下面介绍一种方便的免费证书配置方法Let’s Encrypt:
物料准备
域名+服务器+nginx(下面以 ubuntu 为例子)
安装 cerbot 工具
$ sudo apt-get install certbot
申请证书
$ sudo service nginx stop
$ sudo certbot certonly --webroot -w webroot-path -d www.domain.com
配置 nginx
server {
listen 443 ssl http2;
server_name www.domain.com;
charset utf-8;
ssl on;
ssl_certificate /etc/letsencrypt/live/www.domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/www.domain.com/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
...
}
www.domain.com
对应替换成自己的域名
更新证书
Let’s Encrypt 证书有效期为 3 个月,需要手动更新
$ sudo service nginx stop
$ sudo certbot renew
$ sudo service nginx start
也可以将命令贴到脚本中 crontab 执行
验证证书
浏览器访问 https://www.domain.com, 出现小绿锁就代表配置成功了