SSLの導入

まず、サーバにOpenSSLが入っていることを確認します。

Debian

秘密鍵とCSR

まず秘密鍵の作成です。秘密鍵にパスフレーズを設定できますが、設定するとサーバの起動ごとにパスフレーズの入力が必要になるようです(未確認)。
一つ目のコマンドで秘密鍵を生成し、二つ目のコマンドはCSR(署名要求)で、公開鍵に対する署名を証明書の発行会社に要求します。
ここでは、256bit AESの強力な暗号を利用します。

$ openssl genrsa -out private-mlssl-2011.pem 2048 -aes256
$ openssl req -new -key private-mlssl-2011.pem -out csr-mlssl-2011.pem

これによって生成したCSRを証明書の発行会社に送ります。数日で中間証明書と証明書が来ます。それをApacheの設定で読み込ませ、サーバーをリスタートさせます。
CSRのファイルをなくしても秘密鍵からCSRを作成できますが、秘密鍵をなくしてしまうとSSL通信もできないばかりか、CSRも作成できなくなります。
Cf. https://www.verisign.co.jp/ssl/help/csr/capache_new.html

サーバの設定

# vim /etc/apache2/sites-available/default-ssl
# 証明書
SSLCertificateFile    /etc/ssl/certs/missinglink-ssl-cert2011
# 秘密鍵
SSLCertificateKeyFile /etc/ssl/private/private-mlssl-2011.pem
# 中間証明書
SSLCertificateChainFile /etc/apache2/ssl.crt/mlssl-ca.crt

変更点はこれだけでした。この設定をバーチャルホストごとに行います。

CentOS

# yum -y install mod_ssl

で、/etc/httpd/conf.d/ssl.confをDebianのApacheに対して行ったように変更します。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>