質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

1回答

683閲覧

同じIPアドレスの3つのドメインに対して別々のSSL証明書を実装したい。

soritan

総合スコア13

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

1クリップ

投稿2018/09/18 08:28

前提・実現したいこと

CentOS5.11 x Apache 2.2
同じIPアドレスの3つのドメインに対して別々のSSL証明書を実装したい。

発生している問題・エラーメッセージ

最初に設定してしていたSSL証明書が他2つのドメインに対しても反映されてしまう。(設置されてしまう。)

1. sys.hoge.com (最初に設定してしていたSSL証明書) 2. mhoge.com (これから設置したい証明書) 3. www.hoge.com (これから設置したい証明書)
  1. は、2. と3. を導入する前からSSLの設定がされてまして、今回は、2. と3. の追加をトライしております。

該当のソースコード

ssl.conf

Listen 443 Listen 444 Listen 445 NameVirtualHost *:443 NameVirtualHost *:444 NameVirtualHost *:445 AddType application/x-x509-ca-cert .crt AddType application/x-pkcs7-crl .crl SSLPassPhraseDialog builtin SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000) SSLSessionCacheTimeout 300 SSLRandomSeed startup file:/dev/urandom 256 SSLRandomSeed connect builtin SSLMutex default <VirtualHost *:443> DocumentRoot /home/hoge/sys ServerName sys.hoge.com ErrorLog /var/log/httpd/sys.hoge.com-error_log TransferLog /var/log/httpd/sys.hoge.com-access_log SSLEngine on # SSLProtocol all -SSLv2 -SSLv3 SSLCertificateChainFile "/etc/httpd/conf/ssl/syshoge/ssl.globalsign.com.cer" SSLCertificateFile "/etc/httpd/conf/ssl/syshoge/ssl.globalsign.com.crt" SSLCertificateKeyFile "/etc/httpd/conf/ssl/syshoge/ssl.globalsign.com.key" <Directory "/home/hoge/sys"> Order allow,deny Deny from all Allow from all </Directory> </VirtualHost> <VirtualHost *:444> DocumentRoot /home/mhoge/htdocs/ ServerName mhoge.com ErrorLog /var/log/httpd/mhoge.com-error_log TransferLog /var/log/httpd/mhoge.com-access_log SSLEngine on # SSLProtocol all -SSLv2 -SSLv3 SSLCertificateChainFile "/etc/httpd/conf/ssl/mhoge/globalsign.com.cer" SSLCertificateFile "/etc/httpd/conf/ssl/mhoge/globalsign.com.crt" SSLCertificateKeyFile "/etc/httpd/conf/ssl/mhoge/globalsign.com.key" <Directory "/home/mhoge/htdocs/"> Order allow,deny Deny from all Allow from all </Directory> </VirtualHost> <VirtualHost *:445> DocumentRoot /home/hoge/htdocs/ ServerName www.hoge.com ErrorLog /var/log/httpd/hoge.com-error_log TransferLog /var/log/httpd/hoge.com-access_log SSLEngine on # SSLProtocol all -SSLv2 -SSLv3 SSLCertificateChainFile "/etc/httpd/conf/ssl/hoge/globalsign.com.cer" SSLCertificateFile "/etc/httpd/conf/ssl/hoge/globalsign.com.crt" SSLCertificateKeyFile "/etc/httpd/conf/ssl/hoge/globalsign.com.key" <Directory "/home/hoge/htdocs/"> Order allow,deny Deny from all Allow from all </Directory> </VirtualHost>

試したこと

上記、ポートは、全て解放済みで、中間証明書や秘密鍵にも間違えが見つかっていないため、
ssl.confの問題とみておりますが、どこが間違っているかが分かっていない段階で調査を続けております。
httpdのエラーログでもエラーは、出ていないです。

補足情報(FW/ツールのバージョンなど)

Macのターミナルで作業をしております。

アドバイスをいただきたいです。
宜しくお願いいたします!!

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

soritan

2018/09/18 08:44

ご質問ありがとうございます。いえ、しないです。。そういう想定では、なく、https://mhoge.comhttps://www.hoge.com にてアクセスしたいです。上記の設定ですと、URL+ポート番号が必須になりますか?
CHERRY

2018/09/18 08:46 編集

Webブラウザからアクセスする URL を ` https://mhoge.com `のように ポート番号を省略すると 443 が使われて接続されるので、サーバー側は 443 の証明書が使われます。 ポート番号を変えていますが、SNI を使って、443 のバーチャルホストで、解決するという話ではないのでしょうか?
guest

回答1

0

ベストアンサー

ポート番号で VirtualHost を分けているので、「https://mhoge.com:444/」、「https://www.hoge.com:445/」とポート番号をつけてアクセスする必要があります。

すべて、<VirtualHost *:443> として、ServerName のホスト名で VirtualHost を分けることもできますが、CentOS 5.11 の openssl-0.9.8e が SNI に対応していないため、別々の証明書を使うことができません。

投稿2018/09/18 08:50

TaichiYanagiya

総合スコア12146

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

soritan

2018/09/18 10:18 編集

ご回答、ありがとうございます!! 何か実現する方法は、ありますでしょうか? (SNIに対応するようにする等) https://blog.adachin.me/archives/8736
TaichiYanagiya

2018/09/18 14:21

CentOS 5 はもうアップデートも提供されませんし、CentOS 7 などを別途用意した方がいいと思います。
soritan

2018/09/21 03:36

同サーバーでシステムも運用しているのであたらに新しいバージョンを用意することは、検討してませんでしたが、いずれ、やらないといけないので検討課題とさせていただきます!!分かりやすいご解説有り難うございました!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問