メニューSSL証明書 - メニュー
【SSL証明書】よくある質問(FAQ)

ApacheにSSL証明書をインストール

ページ更新日:2023/05/13

ApacheへSSL証明書をインストールする手順について。

インストールの流れ

  1. CSR作成
  2. SSL証明書のご購入 → 審査 → 発行
  3. httpd.conf (ssl.conf) 修正
  4. Apacheリスタート

CSR作成から、SSL証明書発行まで

OpenSSLでCSR作成CSR作成ツール でCSRを作成します。
SSL証明書のご注文 から、CSRを張り付けてオーダーいただきます。
審査(DV証明書はドメイン確認のみ)完了後にSSL証明書が発行されます。

Apache(2.4.8より前のバージョン)で重要な設定値

Apache(2.4.8より前のバージョン)では、httpd.conf (ssl.conf) の重要な設定値は次の3つです。

SSLCertificateKeyFile:秘密鍵のファイルを指定
SSLCertificateFile:サーバー証明書のファイルを指定
SSLCertificateChainFile:中間証明書のファイルを指定(中間証明書が無い場合は省略可)

Apache(2.4.8以降のバージョン)で重要な設定値

Apache(2.4.8以降のバージョン)では、httpd.conf (ssl.conf) の重要な設定値は次の2つです。

SSLCertificateKeyFile:秘密鍵のファイルを指定
SSLCertificateFile:サーバー証明書のファイルを指定

※Apache 2.4.8以降では SSLCertificateChainFileが廃止となり、SSLCertificateFile でSSL証明書と中間証明書を重ねて設定します(詳細は下記)。

httpd.conf (ssl.conf) 設定例

以下のような設定を httpd.conf (ssl.conf) などに追加します。
すでに ssl.conf などに VirtualHost 443 ポートが設定済であれば、それを次のように変更します。

<VirtualHost (IPアドレス):443>
    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3
    SSLHonorCipherOrder on
    SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS

    SSLCertificateKeyFile   /root/sslfiles/server.key
    SSLCertificateFile      /root/sslfiles/server.crt
    SSLCertificateChainFile /root/sslfiles/server.chain ## Apache 2.4.8以降は不要で、SSLCertificateFile にSSL証明書と中間証明書を重ねて指定する

    ServerAdmin  (設定値)
    DocumentRoot (設定値)
    ServerName   (設定値)
    ErrorLog     (設定値)
    CustomLog    (設定値)
</VirtualHost>

なお、上記の設定例では「POODLE」脆弱性対策としてSSL3を無効にしています。
また、秘密鍵などのファイル(上記の/root/sslfiles/*)は、rootユーザーのみでしか参照できないように chown root:root および chmod 400 しておくことが推奨です。

Apache 2.4.8 以降での中間証明書設定

Apache 2.4.8 以降では、SSLCertificateFile で指定するファイルに、SSL証明書と中間証明書を次のように重ねて設定します。

上:SSL証明書
下:中間証明書

※クロスルート証明書を設定する場合には、中間証明書の下にさらに重ねて設定します。

Apache リスタート

OS環境にあわせて、次のようなコマンドを入力して、Apacheをサービスリスタートします。

# systemctl restart apache2.service
または
# /etc/rc.d/init.d/httpd restart
など。

リスタート前に、次のコマンドで設定ファイルに構文エラーがないかを事前確認することもできます。

# apachectl -t

↑ 上へ 注文 検索