SSL を有効にしてApacheを起動させるには

カテゴリー:Linux OS, Linux VPS, Linux 専用サーバー タグ:, ,
 

この文書ではご利用Linuxサーバーにおいて、SSLを有効にしてWebサーバーを起動する方法を記載します。

1.利用した環境

・Linuxサーバー
 CentOS 5.2
・ソフトウェア
 httpd-2.2.3
 mod_ssl-2.2.3
・設定ファイル
 /etc/httpd/conf.d/ssl.conf

関連記事:CSRの生成

2.mod_sslの確認とインストール

mod_sslがインストールされているかを確認します。

# rpm -qa mod_ssl

このコマンドの結果として何も表示されなければ mod_ssl はインストールされていません。
下記コマンドを実行し、インストールします。

※ CentOS 4.x , CentOS 5.x , Red Hat Enterprise Linux 5.xの場合
# yum install mod_ssl

yumコマンドを実行すると、OSメジャーバージョン別のyumレポジトリに収録されている最新バージョンのパッケージがダウンロードされます。インストールするかどうかを確認されるので間違いなければインストールを行います。

※Red Hat Enterprise Linux ES 4 の場合
# up2date install mod_ssl

up2dateコマンドを実行するとインストールされます。

3.SSLサーバー証明書とキーのインストール

ssl.confを開き下記の場所に証明書とキーを置くか、証明書とキーを置いた場所を記載します。

# vi ssl.conf
SSLCertificateFile /etc/pki/tls/certs/server.crt任意の場所、ファイル名に変更してOK
SSLCertificateKeyFile /etc/pki/tls/private/server.key任意の場所、ファイル名に変更してOK

中間証明書が必要な場合は、下記行も編集します。

SSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt任意の場所に変更してもOK

4.Apache起動/再起動時のパスフレーズの入力について

ApacheをSSL対応で起動させる場合にはパスフレーズの入力を求められます。正しいパスフレーズを入力するまではApacheが起動しないため、自動再起動などをさせることができません。これに対応したい場合いくつかの方法がありますが、ここではサーバーキーにパスフレーズを埋め込む方法をご紹介します。
※毎回、自身でパスフレーズを入力する場合は不要です。

# cd /etc/pki/tls/private/
# openssl rsa < server.key > server.key.new
Enter PEM pass phrase:パスフレーズを入力
# mv server.key server.key.org
# mv server.key.new server.key

5.起動ファイルの編集

証明書とキーの設置を行ったら、自動起動ファイルを SSL 対応させます。
/etc/init.d/httpd ファイルの start 部分を以下のように変更します。

start() {
echo -n $”Starting $prog: ”
check13 || exit 1
daemon $httpd -DSSL $OPTIONS
RETVAL=$?
}

6.確認

編集したファイルの内容が正しいかどうか確認します。
syntax OKと表示されれば文法的な誤りはないと判断できます。

# apachectl -t
Syntax OK

文法に間違いがあった場合、下記のようにファイル名とその行数が表示されるので修正します。

Syntax error on line 37 of /etc/httpd/conf.d/ssl.conf

但し証明書とキーのペアが合ってない場合など、文法だけでは判断できないミスがあった場合でも Syntax OK と表示されます。
設定内容に不備があった場合 Web サーバーは起動しないので十分注意を払って修正してください。

7.Webサーバー再起動

編集が終了し、内容に間違いがなければApacheの再読み込みをします。

# service httpd reload

8.ブラウザでの確認

ブラウザで、https://DOMAINNAMEを閲覧します。
InternetExplorer6.Xであればブラウザの右下に、InternetExplorer7系や8系であればアドレスバー上に鍵のマークがあるので、それを開いて証明書を表示させると「運営者」、「認証局」、「有効期限」などが確認できます。