08 « 1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.» 10

スポンサーサイト 

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Posted on --/--/-- --. --:-- [edit]

category: スポンサー広告

TB: --    CM: --

--

名前ベースのバーチャルホストでSSLを使う(SNI:Server Name Indication) 



【お知らせ】この記事は、http://blog.apar.jp/linux/378/ に引越いたしました。


TLS拡張(RFC4366)仕様の一つ Server Name Indication(SNI、サーバー ネーム インディケーション)によって名前ベースのバーチャルホストでもSSLが使えるようになりました。

以前ディレクターの方から、SSLを使っているサイトのバーチャルホストの設定依頼を受けて「SSL使ってるとバーチャルホストは使えないっすよ」とドヤ顔で答えてしまい、少し恥ずかしい思いをしました(^^;)

昔の上司の言葉「常にアンテナを張っておけ!」を思い出します。


○ SNIの仕組み

SSLを使っていると当然ですがHTTPヘッダは暗号化されているので、クライアントがどのホスト名を指定しているのか判断できないため、先頭のパーチャルホスト(図の場合は lamp-sv)が表示されてしまいます。
SNI01.png

SNIではSSL/TLSのやりとりの中で、暗号化していないホスト名をサーバに伝えてくれるので、指定したバーチャルホストを表示することができます。
SNI02.png


○ SNIを使える条件

 ・Apache 2.2.12以降

 ・OpenSSL 0.9.8j以降

 ・ブラウザがSNIに対応

ApacheとOpenSSLは最近のサーバなら対応することができますが、ブラウザの対応状況には注意が必要です。

・参考にさせて頂いたサイト
http://e-garakuta.net/techinfo/doku.php/linux/apache-sni


○ssl.conf の設定サンプル

SNIに未対応のブラウザ用に「SSLStrictSNIVHostCheck」デレクティブを off にするのがキモです。

・SSLStrictSNIVHostCheck Directive
http://httpd.apache.org/docs/2.2/mod/mod_ssl.html#sslstrictsnivhostcheck


以上です。

スポンサーサイト

Posted on 2013/09/07 Sat. 18:16 [edit]

category: サーバ

thread: サーバー  -  janre: コンピュータ

TB: 0    CM: 1

07

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。