Apache2 + SSL 自動起動
Apache2 + SSL を自動起動する方法としては、サーバーのプライベートキーをパスフレーズを空にして作成するというものがよく紹介されています。セキュリティ的にどうかということで、一応パスフレーズつきのプライベートキーでApacheの自動起動をする方法を調べてみました。
Fedora Core 3 で動作させているため、その環境で説明しますが、他のOSでも同様にしてできます。まず、/etc/httpd/conf.d/.passphrase.sh を作成します。
#! /bin/sh
echo “passphrase”
echo “passphrase”
ファイルの所有者とモードを設定します。
# chown apache:apache /etc/httpd/conf.d/.passphrase.sh
chmod 700 /etc/httpd/conf.d/.passphrase.sh
chmod 700 /etc/httpd/conf.d/.passphrase.sh
SSLの設定で、次のようになっているところを修正します。
SSLPassPhraseDialog builtin
使用するプログラムを指定するので、次のようになります。(http://httpd.apache.org/docs/2.0/mod/mod_ssl.html#sslpassphrasedialogが参考になります)
SSLPassPhraseDialog exec:/etc/httpd/conf.d/.passphrase.sh
この方法の問題点は、passphraseが暗号化されていない点でしょうか。手を抜かないで暗号化に対応したプログラムを指定すればもっと安全になります。なお、指定したプログラムには第1パラメータとして servername:portnumber 、第2パラメータとして、RSA か DSA が渡されるようです。複数のポートで別々のパスワードを指定する場合にも対応できるようです。