免费SSL证书申请及nginx配置https访问实践

ssl-icon

免费证书申请

www.startssl.com是一家提供SSL证书的网站,各大主流浏览器基本都支持。并且还提供了一年的免费Class 1证书,非常适合个人及小型企业使用。

  • 注册

startssl的注册非常特别,并不是使用帐号密码登陆,而是要在注册时填写非常完整的个人信息,提交后等待审核,通过之后安装该网址的数字证书才能登陆.之后只能在安装了数字证书的电脑上才能登陆,最好将证书备份出来方便在其它电脑上登陆。
sign-up

  • 域名验证

注册成功之后,登陆网站,完成域名的验证
domain-valid-1
domain-valid-2

  • 私钥(key)和 证书请求文件(csr)

我使用的是Ubuntu系统,自带openssl命令
openssl req -new -newkey rsa:2048 -nodes -out pachttps.csr -keyout pachttps.key
运行上面脚本后并按提示填写相应的信息后生成key和csr文件

  • 证书(crt)生成

crt-1
crt-2
crt-3
crt-4
crt-5
将生成的crt文件上传到服务器上。

Nginx配置https支持

/etc/ssl/pachttps.key
/etc/ssl/pachttps.csr
/etc/ssl/pachttps.crt

假设三个ssl文件存放于上面目录中,使用vim编辑nginx.conf文件 ,添加对ssl的支持

listen 443 ssl;
ssl_certificate /etc/ssl/pachttps.crt;   
ssl_certificate_key /etc/ssl/pachttps.key; 

重启nginx,使用https前缀刚才的子域名,一切正常

https-success

证书续期

在证书到期前两周左右,会收到startssl发来的证书将过期邮件。到时到更新此博文 :)