Apacheでワイルドカード証明書で複数のサブドメインにSSLサイトを構成する
Apache2.4.7以前で1つのIPアドレスにワイルドカード証明書を設定して、
複数のサブドメインにSSLサイトを構築する手順ます。
追加するサブドメイン の設定手順は下記をご参考下さい。
注意:Apache 2.4.8以降のバージョンをご利用の方
サーバ証明書と中間CA証明書の保存、指定ディレクティブが違います。 必ずApache 2.4.8以降のバージョンのマニュアルをご参照下さい。
■ステップ1 現在の構成状態が下記のとおりであると仮定して作業を進めます
ホスト名 | ポート443 |
---|---|
www.yourdomain.com | 設定済み |
shop.yourdomain.com | |
blog.yourdomain.com |
すでにwww.yourdomain.comにワイルドカード証明書はインストール済み(ssl.confなどに設定済み)で、 shop.yourdomain.com、 blog.yourdomain.comなどのサブドメインの設定を追加します。
サイトの名前、IPアドレスはお客様の環境に置き換えて下さい。
■ステップ2 対象サイトにサーバ証明書を設定する
ssl.confなどの設定を変更する前に、必ずバックアップを保存して下さい。# cp ssl.conf ssl.conf_20130219.backup
[設定例]
#以下はすでに設定済みの(www.yourdomain.com)の設定例
#XXX.XXX.XXX.XXX はIPアドレス
NameVirtualHost XXX.XXX.XXX.XXX:443
<VirtualHost XXX.XXX.XXX.XXX:443>
DocumentRoot "/var/www/domain1/html"
ServerName www.yourdomain.com:443
SSLCertificateFile /etc/httpd/conf/ssl.crt/wildcard_2103.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/wildcard_2103.key
SSLCACertificateFile /etc/httpd/conf/ssl.crt/wildcard_2103.ca
</VirtualHost>
#以下は追加ドメイン(shop.yourdomain.com)の設定の追加例
<VirtualHost XXX.XXX.XXX.XXX:443>
DocumentRoot "/var/www/domain1/shop"
ServerName shop.yourdomain.com:443
SSLCertificateFile /etc/httpd/conf/ssl.crt/wildcard_2103.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/wildcard_2103.key
SSLCACertificateFile /etc/httpd/conf/ssl.crt/wildcard_2103.ca
</VirtualHost>
#以下は追加ドメイン(blog.yourdomain.com)の設定の追加例
<VirtualHost XXX.XXX.XXX.XXX:443>
DocumentRoot "/var/www/domain1/blog"
ServerName blog.yourdomain.com:443
SSLCertificateFile /etc/httpd/conf/ssl.crt/wildcard_2103.crt
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/wildcard_2103.key
SSLCACertificateFile /etc/httpd/conf/ssl.crt/wildcard_2103.ca
</VirtualHost>
- 上記の設定例は一例であり、ご利用のサーバのApacheの構築環境に応じて適切な設定に置換えて下さい。
- IPアドレスがひとつの場合や動的に取得している場合は*:443で全てのIPアドレスにマッチさせることが可能です。
- IPアドレスごとに違うコンテンツを表示させる場合は引数にIPアドレスを設定してください
- IPベースの場合は
のIPアドレスを個々に設定してください。
■ステップ3 Apacheの停止・起動
設定の追加が完了しましたら、ssl.confを上書き保存して、Apacheを停止・起動して下さい。【ご注意】
この文書に記載されている情報は予告なしに変更されることがあります。 この文書に記載されている情報に従ってユーザが操作を行い、いかなる損害を被ろうとも、当社は一切の責任を負いません。 また、ユーザは自己の責任において使用する事に同意したものとみなされます。