nginx 启用 SSL 加密

用自己的 VPS 的一个好处就是可以开 SSL 加密,可以实现在公共场所管理博客的安全,以及减小某些自然因素导致连接异常中断的几率。Debian 6 软件源里的 nginx 已经带了 SSL 模块,所以很简单就可以开启 SSL。只要把 /etc/nginx/sites-available/default 复制一份成 default-ssl,做下面的修改就行。

server {
    listen              443;
    server_name         localhost;
    ssl                 on;
    ssl_certificate     lic.crt;
    ssl_certificate_key lic.key;
}

or(下面这种直接改 default 就行)

server {
    listen              80;
    listen              443 ssl;
    server_name         localhost;
    ssl_certificate     lic.crt;
    ssl_certificate_key lic.key;
}

其中的 lic.crt 和 lic.key 记得改成自己的证书路径。

但是最难弄到的就是 SSL 证书,VeriSign 和 Thawte 的证书每年没个五六百 RMB 是搞不到的。目前有以下几种途径可以获取免费的 SSL:

1. 自己生成证书,方法自行谷歌。

优点:方便。缺点:用任何浏览器浏览都会报证书不信任错误。

2.StartSSL

跟 VeriSign 一样,StartSSL(网址:http://www.startssl.com,公司名:StartCom)也是一家 CA 机构,它的根证书很久之前就被一些具有开源背景的浏览器支持(Firefox 浏览器、谷歌 Chrome 浏览器、苹果 Safari 浏览器等)。

 在今年 9 月份,StartSSL 竟然搞定了微软:微软在升级补丁中,更新了通过 Windows 根证书认证程序(Windows Root Certificate Program)的厂商清单,并首次将 StartCom 公司列入了该认证清单,这是微软首次将提供免费数字验证技术的厂商加入根证书认证列表中。现在,在 Windows 7 或安装了升级补丁的 Windows Vista 或 Windows XP 操作系统中,系统会完全信任由 StartCom 这类免费数字认证机构认证的数字证书,从而使 StartSSL 也得到了 IE 浏览器的支持。

 注册成为 StartSSL(http://www.startssl.com)用户,并通过邮件验证后,就可以申请免费的可信任的 SSL 证书了。

以上摘自 http://blog.s135.com/startssl/。申请教程这篇文章里也有。

优点:可以被大多数浏览器(除 Opera)信任。缺点:需要人工审核,而且免费的 TK 域名无法使用,还要一年续期一次。

3.CAcert,自己谷歌。

CAcert.org 是一个社群推动的公共认证机构。它可以对个人发放免费公钥证书 (其他证书颁发机构需要收费)。该机构目前已经有 200,000 名认证用户,以及接近 800,000 份证书。

摘自维基。CACert 的证书是程序自动签发的,不会有人工审核,证书可信度也不高,所以别想让它和 StartSSL 一样搞定微软了。别想了。

优点:可以被大多数开源背景浏览器信任。缺点:需要人工审核,没有可信度,还要一年续期一次。

SCIM 抽风的解决办法
下一篇文章 »