- ベストアンサー
サーバ認証のSNI SSLとドメイン認証の違いは?
SSLサーバ認証の取得をしたいと思います。 法人格を持たないのでドメイン認証で考えていますが、「SNI SSL」という用語に出くわし、ドメイン認証と同じ意味なのか混乱しています。 ドメイン認証は固定IPアドレスと紐付いていないと理解していますが、企業認証やEV認証であってもネームベースで申請できる(共用サーバーで申請できる)ということでしょうか? 知識をお持ちの方に、簡潔なご説明をいただければ助かります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
SNI は証明書発行時の認証方法とは異なるモノです。 従来の TSL/SSL ではグローバルIPアドレス一つにつき一つのサーバ証明書しか利用できませんでしたが、SNI ではグローバルIPアドレス一つで複数のサーバ証明書が利用できるようSSLハンドシェイク時に接続先のホスト名を指定できるようにプロトコルの仕様が拡張されたモノで、名前ベースのバーチャルホストで個々に SSL/TSL 通信ができるようになっています。 ドメイン認証と言っているのは、サーバ証明書申請時にそのドメイン名の特定のメールアドレス(postmaster@ とか)にメールを送るなどして、そのドメインの利用者が申請しているか確認して申請者の真贋を確認する手法の事です。 企業認証やEV認証は登記簿を確認するなどしてより厳密に申請者の真贋を確認する手法の事です。 ドメイン認証、企業認証、EV認証はサーバ証明書の申請者の真贋確認の手法、SNI はサーバ証明書を使った暗号化通信の際のプロトコルの仕様なので、全く別モノと言う事になります。 ドメイン認証、企業認証、EV認証、いずれの方法で取得したサーバ証明書でも SNI を使って一つのグローバルIPアドレスを使って複数のサイトを運用する事が可能です。
その他の回答 (1)
- superside0
- ベストアンサー率64% (461/711)
通常は、 IPアドレス × ポート番号の組み合わせごとに 1つのサーバー証明書が割り当てられます。 つまり、ネームベースのバーチャルドメインでは SSLサーバー証明書をドメインごとにも割り当てるということができません。 このため、複数のサーバー証明書をドメインごとに切り替えたいときは、 以下のいずれかの方法を使うことになります。 ・1台のサーバーに複数のIPアドレスを割り当てて、ドメインごとにIPを使い分ける (ネームベースでなく、IPベースのバーチャルドメインにする) ・ポート番号をドメインごとに分ける(https://example.net/とhttps://example.org:444/ など) ・マルチドメインのサーバー証明書を使う ・ワイルドカードのサーバー証明書を使う ・WebサーバーのSNI機能を使って切り替える 上の最後のSNIが、ご質問の件となるのですが、これを使うときは、 WebサーバーがこのSNI機能を搭載してあることは当然のことながら、 WinXPのIEやiOS3以前やAndroid2以前など、SNI非対応のブラウザがあり、 全てのユーザーが使える訳ではない点に注意が必要です。 なので、これを使う場合は、サイトの特性や利用状況等を考えて判断するのがよいかとおもいます。
お礼
さまざまな手法とともに、具体的なアドバイスをいただきありがとうございます。 今回のケースでは、ブラウザ側の対応状況には問題ないと考えていますが、Apache 1.3系だとSNI機能は搭載されていない(できない)ということになるでしょうか…
お礼
的確なご説明でよく理解できました。 ありがとうございました!