おやじさま
先日、大変お世話になりました。
現在SSLの導入にチャレンジしております。
導入も先日うまくいきました。
ですが、一点気になることがあるのです。
以前、こちらのサイトを参考にさせていただき、Windowsでのサーバーを構築しSSLを導入した際には、
1.UserDirもSSL化するのであれば、ssl.confに記述をしないと、UserDir動作しなかった。
2.バーチャルホストを組んだ時には、1番上の記述のみが、SSL化されて、2番目以降はSSL化できなかった。
(IP単位でしか、構築できないので、私のようにIP1つで動的では無理? ← 記憶が定かではありません^^; )
だったと思います。
が、Linuxで現在SSLを導入して、動作させてみたら、
1に関しては、ssl.confにUserDirの記述をしなくても、即ちこちらのサイトで言えば、
DocumentRoot "/home"
ServerName www.aconus.com:443
ServerAdmin oyaji@mail.aconus.com
の設定を、ssl.confにしただけで、UserDirでも動作するのです。
2に関しては、バーチャルホストを行っているものすべてで動作するのです。windowsでは、1番上だけしか動作しなかったのに。
単純に仕様の問題でしょうか?
気分的には、動作していても、ssl.confにきちんと記述してあげた方が自然のような気がしますが、関係ないでしょうか?
アドバイスよろしくおねがいします。
> ですが、一点気になることがあるのです。
> 以前、こちらのサイトを参考にさせていただき、Windowsでのサーバーを構築しSSLを導入した際には、
>
> 1.UserDirもSSL化するのであれば、ssl.confに記述をしないと、UserDir動作しなかった。
> 2.バーチャルホストを組んだ時には、1番上の記述のみが、SSL化されて、2番目以降はSSL化できなかった。
> (IP単位でしか、構築できないので、私のようにIP1つで動的では無理? ← 記憶が定かではありません^^; )
>
> だったと思います。
>
> が、Linuxで現在SSLを導入して、動作させてみたら、
>
> 1に関しては、ssl.confにUserDirの記述をしなくても、即ちこちらのサイトで言えば、
> DocumentRoot "/home"
> ServerName www.aconus.com:443
> ServerAdmin oyaji@mail.aconus.com
> の設定を、ssl.confにしただけで、UserDirでも動作するのです。
>
> 2に関しては、バーチャルホストを行っているものすべてで動作するのです。windowsでは、1番上だけしか動作しなかったのに。
> 単純に仕様の問題でしょうか?
> 気分的には、動作していても、ssl.confにきちんと記述してあげた方が自然のような気がしますが、関係ないでしょうか?
1項は、単なる思い違いか、正確に状況把握できていなかったので、ssl.confにUserDir関係の設定をしたら動いたように見えただけでしょう。おやじのApacheのSSL化のコンテンツの中ではWindowsにしろLinuxにしろUserDirを設定しないと駄目とは書いていないはずです。単純に同じコンテンツを両方で公開するだけならssl.confに無くてもいいと思います。但し、SSL側しか関係ない内容や、ログを分けたい等があるのと、しっかり意識しておくならssl.confに書いておいたほうがいいかもしれません。
2項については、「2がすべて動作する?」という意味がよくわかりませんが、「2番目以降は、SSL化できなかった。」というのが、IPアドレス1個で名前ベースのバーチャルホストを動かすと、先頭のバーチャルホスト以外はCA証明書をクライアントに入れても、ホスト名が一致しないというエラーが出た、というものであるなら、これはLinuxだろうがWindowsだろうが関係なく、名前ベースの場合な先頭のバーチャルホスト以外にSSLアクセスすれば、ホスト名不一致のエラーはでます。Windows版のバァーチャルホストのところに少し書いてありますが、SSLの認証を行う時点ではクライアントがアクセスしてきたホスト名がわからないので先頭のホストの証明書で認証するしかないからなので、これは認証の仕組みに依存する話なのでOSや設定、更に言えばApacheかどうかも一切関係ありません。
今一わかりにくいところがありますが、Apacheはドキュメントが整備されているので、よく読めばほとんどの問題は解決できますよ。
私が、素人なので確かに単なる思い違いという可能性の方が高いと思うのですが、
> 1項は、単なる思い違いか、正確に状況把握できていなかったので、ssl.confにUserDir関係の設定をしたら動いたように見えただけでしょう。
1週間くらいずっと悩んでいて、解決が分からず会社のエンジニアさんに聞いて行った方法がssl.confにUserDir関係を追加した方法でして、それを追加したら、SSLが動作して消したらまた、動作しなくなってしまったのを覚えております。
違う原因との因果関係でそうなってしまっただけなのでしょうか。。。
>おやじのApacheのSSL化のコンテンツの中ではWindowsにしろLinuxにしろUserDirを設定しないと駄目とは書いていないはずです。単純に同じコンテンツを両方で公開するだけならssl.confに無くてもいいと思います。
確かにそうなんですよね。
LinuxではそれでOKだったので実はビックリしていたのです。。。
> 2項については、「2がすべて動作する?」という意味がよくわかりませんが、「2番目以降は、SSL化できなかった。」というのが、IPアドレス1個で名前ベースのバーチャルホストを動かすと、先頭のバーチャルホスト以外はCA証明書をクライアントに入れても、ホスト名が一致しないというエラーが出た、というものであるなら、これはLinuxだろうがWindowsだろうが関係なく、名前ベースの場合な先頭のバーチャルホスト以外にSSLアクセスすれば、ホスト名不一致のエラーはでます。Windows版のバァーチャルホストのところに少し書いてありますが、SSLの認証を行う時点ではクライアントがアクセスしてきたホスト名がわからないので先頭のホストの証明書で認証するしかないからなので、これは認証の仕組みに依存する話なのでOSや設定、更に言えばApacheかどうかも一切関係ありません。
はい。
その通りです。
Linuxでその現象を確認しました。
ですが、windowsの方ではSSLが動作せず、エラーでページが表示されてました。。
> 今一わかりにくいところがありますが、Apacheはドキュメントが整備されているので、よく読めばほとんどの問題は解決できますよ。
初めての導入で困惑していたのか、記憶がや現象が定かではないのかもしれませんね。
おやじさまの言うことの方が正しいと思うので^^
ドキュメントを読んでもう少し理解を深めてみます。
ありがとうございました。
> はい。
> その通りです。
> Linuxでその現象を確認しました。
>
> ですが、windowsの方ではSSLが動作せず、エラーでページが表示されてました。。
>
> > 今一わかりにくいところがありますが、Apacheはドキュメントが整備されているので、よく読めばほとんどの問題は解決できますよ。
>
> 初めての導入で困惑していたのか、記憶がや現象が定かではないのかもしれませんね。
>
> おやじさまの言うことの方が正しいと思うので^^
これは、大きな誤りです。おやじの間違い、勘違いは過去にも多々あります。
ここの内容を検証するだけならデフォルトコンフィグをチョット変更すればできるはずですから、Windows版をいれて成長した自分の目で改めて確認し、理解・納得するべきではないでしょうか?
中途半端な知識は、自分が混乱するだけですよ。
おやじは単なる年寄りの遊び。rieさんはこの分野のプロなら、なおさらではないでしょうか?
ご返信遅くなりまして申し訳ありません。
確かに、今再度windowsで構築してみると新たなる発見があるかもしれませんね。
勉強も兼ねて時間がとれるときにでも試してみたいと思います。
現在は、Linuxでの構築に悪戦苦闘しているので、少し先の話になっちゃうかもしれませんが試してみます。
おやじさま いつもありがとうございます。