Tiwb

我的业余生活博客.

Nginx下SSL的使用

有些服务(比如git)还是用https协议安全点,这次需要在nginx服务器上启用https。

从StartSSL获取证书

StartSSL提供免费的SSL认证,申请过程比较麻烦,中间需要等待人工审核。证书有效期为一年,虽然有很多限制, 不过够用了。

用StartSSL的向导生成私钥,并获取网站的证书。 私钥解密后存放为tiwb.com.key

证书需要3个,首先是自己网站的证书, 然后需要Class 1 Intermediate Server CAStartCom Root CA。 后面2个可以从StartSSL的控制面板中下载到。将这3个证书按顺序合并:

$ wget https://www.startssl.com/certs/ca.pem
$ wget https://www.startssl.com/certs/sub.class1.server.ca.pem
$ cat tiwb.pem sub.class1.server.ca.pem ca.pem >tiwb.com.crt

配置nginx

最后需要配置nginx,配置文件如下:

server {
  listen        443;
  server_name   tiwb.com;

  ssl                   on;
  ssl_certificate       /etc/nginx/ssl/tiwb.com.crt;
  ssl_certificate_key   /etc/nginx/ssl/tiwb.com.key;

  ssl_session_timeout   5m;

  ssl_protocols  SSLv2 SSLv3 TLSv1;
  ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
  ssl_prefer_server_ciphers   on;

  location / {
    root   /data/www/www.tiwb.com;
    index  index.html index.htm;
  }
}
Next