自宅Debian(wheezy)サーバーで起動時にSSL秘密鍵のパスフレーズを自動入力させる方法

自サーバーのWordPressサイトをまるごとSSL通信にした際、毎回サーバー起動時にapache2がパスフレーズの入力を求めるようになり、手入力するまで止まってしまうようになりました。

セキュリティ的にはこのままが一番良いでしょうが、自サーバーはSSHでの操作オンリーの運用なのに、サーバーの近くにいるときにしか再起動できないのは不便すぎます。

例によってググって対応した備忘録です。

パスフレーズ入力をスクリプト化

パスフレーズ解除した秘密鍵ファイルを使う方法もあるようですが、少しでもセキュリティ的に安全なパスフレーズをスクリプト入力する方法を利用します。

パスフレーズを記述したスクリプトファイルを作成

任意の場所にスクリプトファイルを作成します。

例:/etc/ssl/private/ディレクトリにmy-passphrase.shを作成します。

パスフレーズを” “で括ります。

「Ctrl+X」→Y→Enterで保存します。

管理者のみ実行権限付きパーミッションに変更します。

SSL.confファイルの記述を変更。

Debianの場合は、/etc/apache2/mods-available/ssl.conf です。

36行目あたりを変更します。

36行目をコメントアウト、37行目を追加しています。

「Ctrl+X」→Y→Enterで保存します。

動作確認

apacheを再起動します。

エラーが出なければOKです。

バーチャルホストで複数の秘密鍵パスフレーズがある場合

当サイトは、バーチャルホストで二つのサイトに別々のSSL証明書を使っています。

その場合は、スクリプトファイルの記述を下記のようにすると良いとのこと。

 ※アドレスなどは自サーバーの場合の例です。

apacheを再起動します。

エラーが出なければOKです。

参考にさせて頂いたサイト

Apacheの起動時にSSLのパスフレーズを省略する方法

http://takuya-1st.hatenablog.jp/entry/20110208/1297157015

こちらの記事もどうぞ

コメントを残す

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