nginxでSPDYを導入する一連の流れ(オレオレ証明書作成)


nginxをSPDYの構築方法を綺麗にまとめておきました。SSLはオレオレ証明書でrapid-sslなどを使えば3,000円で実用のSPDYサーバが立てられます。

openssl1.0.1をincludeしないといけないので自分で準備します。

# cd /usr/local/src
# wget http://www.openssl.org/source/openssl-1.0.1c.tar.gz
# tar zxvf openssl-1.0.1c.tar.gz

次にnginxをdownloadしてpatchをあて、configureです。

# cd /usr/local/src
# wget http://nginx.org/download/nginx-1.3.11.tar.gz
# tar zxvf nginx-1.3.11.tar.gz
# cd nginx-1.3.11
# wget http://nginx.org/patches/spdy/patch.spdy.txt
# patch -p1 < patch.spdy.txt
# apt-get install libpcre3 libpcre3-dev libpcrecpp0 libssl-dev zlib1g-dev
# ./configure ./configure --with-openssl=/usr/local/src/openssl-1.0.1c  --with-http_ssl_module --with-http_spdy_module
# make
# make install

標準では/usr/local/nginxにインストールされるので/usr/local/nginx/sbinをPATHに追加の必要があります。
オレオレSSL証明書は下記の方法で作成します。

# mkdir /usr/local/nginx/ssl
# cd /usr/local/nginx/ssl
# openssl genrsa -aes128 1024 > cert.key # 秘密鍵
# openssl req -new -key cert.key > cert.csr # 公開鍵
# openssl x509 -in cert.csr -days 365 -req -signkey cert.key > cert.pem # 証明書

あとはnginx.confにSSLの設定を書くだけ。

server {

    listen 443 ssl spdy;
    server_name yourdomain.com ;
    ssl on;

    # 秘密鍵 (cert.key ※1)
    ssl_certificate_key  /usr/local/nginx/ssl/cert.key;

    # 合体証明書 (cert.pem ※2)
    ssl_certificate      /usr/local/nginx/ssl/cert.pem;

    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;

    access_log /var/log/nginx/ssl_yourdomain.com.log;
    error_log /var/log/nginx/ssl_yourdomain.com.error.log;
    root /var/www/yourdomain.com;
    index index.php;

}

/var/log/nginxにlog用のdirectoryは作っておいてくださいね。

下記が参考になります:
http://nginx.org/en/download.html
http://nginx.org/patches/spdy/README.txt

  • このエントリーをはてなブックマークに追加

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です