LoginSignup
12
3

More than 5 years have passed since last update.

SSLサーバー証明書に関する選ぶときの細かなあれこれ

Last updated at Posted at 2016-12-04

Qiita初投稿がファーストサーバのAdventCalenderという、:beginner:itamitoです。

なにを書こうかと思いましたが、itamitoが最近一番悩まされた、SSLサーバー証明書に関しての重箱の隅を書きます。

:beginner:SSLサーバー証明書に関する選ぶときの細かなあれこれ

 2日目の投稿常時SSL化(AOSSL)に向け、合わせて点検・対応すべきことでもありましたが、昨今、常時SSL化の波が押し寄せてきています。

「うちのもHTTPS化するか~」
となったときのSSLや証明書の選び方は各販売元に任せるとして、選ぶ際に意外と見逃しそうな点を、どこかにまとめておきたいなぁと思ったので、オレ得的に記載します。

証明書のラインナップを見てみても…普通に…

  • サーバー証明書の種類がある
  • サーバー証明書のベンダーがたくさんある
  • サーバー証明書のベンダーごとに証明書の特徴がある
  • サーバー証明書のベンダー内でも仕様違いがたくさんある

といった具合で…複雑怪奇。その仕様に関するところでは、多くの会社が説明していますが、

  • 認証レベル
  • 暗号強度
  • クライアント対応率
  • シールの有無
  • 金額
  • 発行までの所要期間
  • etc

とこれもまたたくさんあり、検討要素満載です。。

証明書のモノとしては同じなのに、細かく違っている…これじゃ、利用者は何をみたらいいか、わかりづらいですよね。
(いや、売ってる側として、すんません…

:ear:仕様面で見逃しがちだけど気をつけるべきこと(私見)

 証明書を選ぶとき、認証レベルを気にしましょうとか、シールの有無は?みたいなことはまだ分かりやすいですが、次のようなものはどうでしょうか?

気をつける項目 内容
ライセンス 購入すべき枚数。サーバー単位とかコモンネーム単位とか
SANs example.comのコモンネームで取得したら、www.example.comでも使えるようになる とか
保証・補償 もし証明書のぜい弱性とかで、証明書の機能をなさなくなったときの補償
中間証明書 有・無/クロスルートか否か

 正直、なんのこと?とか、あまり気にしなくていいんじゃない?ってなるかもしれません。
いや、でも…ちょっと気にしてみてください。

:one:ライセンス

 証明書を使う上で、1サイトのみを1台のサーバーで運用する場合は、ライセンスとしてはあまり悩む必要はありません。
ライセンシーとして、WEBアクセスするURLに含まれるホスト名をコモンネームとして1枚取得して、WEBサーバーに設定すればそれでいいからです。

 これが、「複数台のWEBサーバーを持つシステムに適用したい」だとか、「証明書を使っているサイトがアクセス集中で重くなったので、CDNを導入したい。」となったときには簡単でなかったりします。
前者の「複数台の…」では、その台数分のライセンスが必要となったり、
後者の「CDNを…」では、証明書をコピーして入れる必要が出てくる場合がありますが、ライセンスで許してない場合があります。

ベンダーや証明書によりまちまちなのがライセンスで、
  コモンネームにつき1枚とっておけば、何か所でも同じ証明書を適用してもよい、
といったライセンスのものあれば、
  1バーチャルドメイン設定1個所ごとに1枚必要、
  証明書仕様でSANsに登録されているものについてはそれぞれに1個所は許可する
といった特殊なライセンス体系のモノもあります。

※ちなみに当社のZenlogicでは、ここらへんの制御を全て機能化しています。死ねましたよ。:sweat_smile:

:two:SANs

 ここでいうSANsは、ベンダーごとに呼び名が違いますが、「特定条件下で、コモンネームと、そのコモンネームにwww.がついたものをSANsに入れて提供されること」を指したいと思います。(自動設定SANsとか、wwwオプションとか、2WAY-SANsとかベンダーによりいろいろな呼び名があります。)

 この、コモンネーム意外にwww.付きでも利用できるようにしたSANs、実はベンダーごとにばらばらの仕様で提供されています。

一方のベンダーでは、

  • 第2レベルドメインまでのコモンネームであればwww.も適用されるが、第3レベルドメイン以上でのコモンネームであればwww.は適用されない

他方のベンダーでは、

  • 申し込まれればwww.は適用される

というような仕様違いがままあります。

ただ、この各社提供仕様が異なる状況を鑑みてか、CA/Blowserフォーラムでは統一化を図っているようです。
近々、呼び名も含めて統一されるかもしれませんね。

:three:保証・補償

 サーバー証明書が売りだされたころからあったと思っているのですが、証明書自体の危殆化などによって何らかの被害を被ったときに、補償を受けられることを謳ったモノがあります。

 ただ…会社の業務内で、いろんなベンダーの補償を調べたことがあるのですが、これが結構マチマチなんです。
古くからのベンダーや、大手であれば、ついているほうが多いですが、中には保証なんてないものもあります。
無償のものであれば、無くても仕方がないと思いますが、有償のモノでは、どうかと思います。
中には、CPS(Certification Practice Statement)をよく読むと、「保証しない」と書かれているところもあります。

もちろん、これまで証明書の危殆化による被害は聞いたことが無いですが、気にされる方は見ておいたほうがよいでしょうね。

:four:中間証明書

 証明書と聞くと、発行されたもののみ設定、で良いと思われがちですが、実はそれだけでは足りない場合があります。
証明書本体と併せて設定するものが、中間証明書です。
たぶん、いま発行されているほとんどの証明書で、中間証明書も必要となっていると思います。

 中にはクロスルートと呼ばれる方法で設定する必要があるものもあります。
クロスルートは古い端末からのアクセスをカバーするために設定するものです。
(ベンダーによって、クロスルートとそうでないものを選択できる場合がアリ、クライアント対応率はクロスルートのほうで記載されているような場合もあります。)

※これが結構厄介で、正常に設定されていない場合でも、主要なブラウザではエラーが発生しないことがあります。
 OSやブラウザ自身が中間証明書を持っている場合や、過去アクセスしたキャッシュが残っている場合にエラーが見えなくなります。

:frowning2:唐突ですが…最後に…

 つたない文章ですが、読んでいただけた方の役に立てていれば幸いです。
 (これ、投稿後にあとからEDITできるのかなぁ…)

12
3
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
3