[インストール] Apache1.3 + mod_ssl + OpenSSL (新規・更新)

最終更新:2024年11月29日

本マニュアルは、手順をご案内するものです。コマンドの意味等につきましては、各情報サイトや参考書籍等でご確認ください。

※弊社では以下の手順にて動作検証をおこなった際の一例をご紹介しており、動作を保証するものではございません。本手順について内容の変更等や誤りがあった場合、弊社では一切の責任を負いかねることを予めご了承ください。 詳細は各アプリケーションのドキュメント等をご参照ください。

※Apacheはオープンソースのアプリケーションです。脆弱性などの問題がないか、随時情報を確認いただき、万一問題が発見された場合は、該当サービスの停止や、対応パッチがリリースされている場合は速やかに適用するなど、運用には十分ご注意ください。

※2020年8月14日にクイック認証SSLの中間CA証明書が新しくなりました。以降発行される証明書(再発行と更新も含まれる)は新しい中間CA証明書とともにインストールする必要がありますのでご注意ください。

本例では以下環境を前提としています。お客様の環境に合わせて任意に読み替えてご覧ください。

コモンネーム ssl.globalsign.com
confディレクトリまでのパス /usr/local/apache/conf/
apache起動コマンド /usr/local/apache/bin/apachectl
証明書の保存ディレクトリ /usr/local/apache/ssl.crt/
サーバ証明書ファイル名 ssl.globalsign.com.crt
中間CA証明書ファイル名 dvcacert.cer
  1. 契約者、技術担当者宛に送信しております「サーバ証明書発行のお知らせ」メール本文から「◆証明書」のデータ(-----BEGIN CERTIFICATE----- から -----END CERTIFICATE----- まで)
    をコピーしてサーバに保存します。
    ※GSパネルにログインし、「サーバ証明書」タブにある「証明書一覧」メニューから取得をすることもできます。

    保存先の例
    /usr/local/apache/conf/ssl.crt/ssl.globalsign.com.crt
  2. メールから「◆中間CA証明書」のデータ
    (-----BEGIN CERTIFICATE----- から -----END CERTIFICATE----- まで)をコピーしてサーバに保存します。

    保存先の例
    /usr/local/apache/conf/ssl.crt/dvcacert.cer
  3. Apacheの設定ファイル httpd.confにSSLの設定を行います。
    ※赤字表記の部分は例ですので、お客様の環境によって読み替えてください。
    ※本例はVirtualHostでサイトを運用している場合を前提としています。VirtualHostでサイトをご利用ではない場合、VirtualHostの外に証明書を設定いただいて問題ございません。

    <VirtualHost xxx.xxx.xxx.xxx:443>
    DocumentRoot "/usr/local/apache/htdocs"
    ServerName ssl.globalsign.com

    SSLEngine on
    SSLCertificateChainFile /usr/local/apache/conf/ssl.crt/dvcacert.cer
    SSLCertificateFile /usr/local/apache/conf/ssl.crt/ssl.globalsign.com.crt
    SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/ssl.globalsign.com.key
    </VirtualHost>

    ※「SSLCertificateChainFile」の行は中間CA証明書の設定です。

  4. Apacheのデーモンを再起動し、変更した設定を反映させます。
    ※毎回、起動の際に秘密鍵のパスフレーズの入力が必要になります。
    restartでは、正常に読み込まれない場合がありますのでご注意ください。

    # /usr/local/apache/bin/apachectl stop
    # /usr/local/apache/bin/apachectl startssl

    ※ご利用の環境によっては、コマンド(apachectl startssl、httpd start)が異なる場合がございます。

  5. SSL通信に問題がないか確認してください。
    PCブラウザでは、中間CA証明書がインストールされていない場合でも、自動的にそれを補完するため、エラーが出ないものがあります。正しくインストールされているか確認するには、opensslコマンドが有効です。
    SSL接続時の証明書情報をopensslコマンドで確認したい。
    ※秘密鍵と証明書はペアでバックアップを取ることをお勧めします。パスフレーズが設定されている場合は、こちらもお忘れにならないようご注意ください。

補足

[ ] の部分はお客様の環境に合わせて読み替えてください。

1. 秘密鍵の内容を確認
# openssl rsa -text -noout -in /[FilePath]/[KeyFile]

2. 秘密鍵のパスフレーズを解除
(Windows版のApacheでは、秘密鍵のパスフレーズを解除する必要があります。)
# cp /[FilePath]/[KeyFile] /[FilePath]/[KeyFile].org (元ファイルのバックアップ)
# openssl rsa -in /[FilePath]/[KeyFile] -out /[FilePath]/[KeyFile]

3. CSRの内容を確認
# openssl req -text -noout -in /[FilePath]/[CSR]

4. 証明書の内容を確認
# openssl x509 -text -noout -in /[FilePath]/[CertFile]