想要让网站变成https而又不想花钱去买SSL证书,该怎么做呢?这里提供一个免费的方案:使用let's encrypt的免费SSL证书。
下面以ubuntu14.04为例,让我们一起开始安装免费SSL证书吧!
一、申请SSL证书
首先确保域名解析正确,然后接着往下看。
如果没有安装git,需要先安装一下
sudo apt-get install git
然后依次输入以下命令
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto certonly --standalone --email example@mail.com -d example.com
其中,example@mail.com填写你的邮箱地址,而example.com是你的网站域名。
-d example.com表示你要申请SSL证书的网站域名,如果同时对带有www的域名的绑定,可以这么写
./letsencrypt-auto certonly --standalone --email example@mail.com -d example.com -d www.example.com
如果上述命令报ipv4的错误,那么需要指定网站根目录,替换最后一步命令为
./letsencrypt-auto certonly --webroot --email example@mail.com -d example.com
然后它会让你输入网站根目录,输完后就申请好了。此时会在"/etc/letsencrypt/live/example.com/"目录下生成以下文件
cert.pem - apache服务器端证书
chain.pem - apache根证书和中继证书
fullchain.pem - nginx所需要的ssl_certificate文件
privkey.pem - nginx所需要的安全证书KEY文件
二、配置SSL证书
这里使用nginx来配置SSL证书。
在server节点下添加
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
然后重载nginx就可以了
nginx -t
nginx -s reload
也可以参考nginx实现no-www和www跳转里面的https配置。
三、续费SSL证书
let's encrypt免费SSL证书每3个月需要手动续费一下,命令为
./letsencrypt-auto certonly --renew-by-default --email example@mail.com -d example.com
网友评论