Apache起動時にSSL証明書のパスワードを自動的に入力、省略して聞かれなくする方法

サーバー設定
Apache
スポンサーリンク

Apacheを自動起動で設定していても、SSLの証明書を設定すると自動起動時にパスワードの入力を求められます。

これをスキップする方法を調べてみました。

スポンサーリンク

SSL証明書のパスワードは厄介

httpsの証明書、SSLの証明書は、通常、パスフレーズと呼ばれるパスワードが必要です。

 

こんなのですね。

 

このパスワードがあると、以下のような点で扱いが厄介です。

  • サーバー障害が修正された後で、システムを再起動時でもパスワードが必要なので、パスワードを知っているシステム管理者が立ち会わないといけない。
  • 長い間、サーバーが安定稼働していた場合、システム管理者すらパスワードを忘れてしまった、あるいはシステム管理者が退職などでいなくなった

 

しかも、パスワードはサーバーにroot権限でログインして、コンソールから入力する必要があります。

このパスワードは運用で常時必要とはならないために、ちゃんと管理しないといけません。

 

そこで、対策としてパスワードの自動入力ができないか試してみました。

ApacheのSSLパスワードの自動入力、パスワードを聞かれなくする

調べてみると、

/etc/httpd/conf.d/ssl.conf

の中に以下のような記述がありました。

 

/usr/libexec/httpd-ssl-pass-dialog

の中身は次の通りです。

 

なるほど、起動時にはこのシェルスクリプトが呼ばれていたようです。

 

そこで、

/etc/httpd/conf/passphrase_for_ssl.sh

というファイルを作って、以下のようにパスワードをechoするようにします。

 

念のために、このファイルは他人から見られないように権限を書き換えて、ユーザーの読み取りと実行の権限のみにしておきます。

 

最後に、

/etc/httpd/conf.d/ssl.conf

を書き換えます。

 

これで、Apache再起動時にパスワードを聞かれることがなくなりました。

 

 

コメント