OpenSSL:mod_sslサーバー証明鍵にパスフレーズを埋め込む
技術ドキュメント目次 -> OpenSSL -> mod_sslサーバー証明鍵にパスフレーズを埋め込む本技術ドキュメントは、2002~2004年頃に作成したものが多いです。
内容が古くなっていることもあるかと思いますが、ご了承ください。
【低価格SSL証明書】弊社運営の低価格SSL証明書販売サイト、翌月末払いなど請求書払いも可能。
◆ はじめに
mod_ssl(http://www.modssl.org/)モジュールをApacheに組み込むことで、HTTPSの環境の環境を構築することができます。mod_ssl のインストール方法の詳細はここでは省略しますが、
次のようなコマンドを入力してインストールするのが一般的かと思います。
# cd apache_1.3.27 # ./configure --prefix=/usr/local/apache --enable-shared=max # cd ../mod_ssl-2.8.12-1.3.27 # ./configure --with-apache=../apache_1.3.27 --prefix=/usr/local/apache \ --enable-shared=ssl --with-ssl=/usr/local/ssl # cd - # make # make certificate 1. Country Name 2. State or Province Name 3. Locality Name .... などの情報を入力 # make install |
インストールが終了した後、
/usr/local/apache/bin/apachectl startssl
を実行することで HTTPSが有効になった Apache を起動することができますが、
このままだと、次のように Apache 起動の度にパスフレーズの入力を求められ、
自動起動の設定を設定を行いたいときなどに不便かと思います。
# /usr/local/apache/bin/apachectl startssl Apache/1.3.27 mod_ssl/2.8.14 (Pass Phrase Dialog) Some of your private key files are encrypted for security reasons. In order to read them you have to provide us with the pass phrases. Server ********:443 (RSA) Enter pass phrase: Ok: Pass Phrase Dialog successful. /usr/local/apache/bin/apachectl startssl: httpd started # |
◆ サーバー鍵へのパスフレーズの埋め込み
mod_ssl のサーバー鍵のファイル(/usr/local/apache/conf/ssl.key/server.key)に、OpenSSL のコマンドを使用してパスフレーズを埋め込んでおくことで、
Apacheを起動する度にパスフレーズの入力を求められることがなくなます。
サーバー鍵にパスフレーズを埋め込んでおくためには、次のようにしてください。
# cd /usr/local/apache/conf/ssl.key/ # openssl rsa < server.key > server.key.out read RSA key Enter PEM pass phrase: (パスフレーズを入力) writing RSA key # mv server.key server.key.org # mv server.key.out server.key |
(もちろん、セキュリティ上の理由などから、Apacheの起動のたびにパスフレーズの入力を行いたい場合は、このような設定は行わないでください。)
■ OpenSSL についての他のドキュメント
- opensslコマンド(基本:md5,des3.blowfish)
- opensslコマンド(AES)
- mod_sslサーバー証明鍵にパスフレーズを埋め込む
■ 他のグループのドキュメント
Apache / Linux / FreeBSD / OpenSSL / Perl / HTTPプロトコル / Jakarta Tomcat / Java / NetBSD / Oracle / PostgreSQL / UNIX の C言語 / UNIX のコマンド / Windows / bind / システム運用TIPS