Webサイトのセキュリティ「SSLサーバ証明書」についてまとめてみた

こんにちは、チカッパであります(◉∀◉ )ゞ

私の案件のサイトが近いうちに常時SSLになる予定があり、それに備えSSLについて絶賛勉強中です。
今回は、わかっているようでわかっていなかったSSLサーバ証明書についてまとめてみました。

SSLサーバ証明書っていったいなんだろう…何を導入すればいいかわからない…という方の参考になれば嬉しいです。

SSLについて復習してみよう

まずは、SSLとはどのようなものなのか、簡単におさらいしてみましょう。

Webサイトは、サーバと端末、またはサーバとサーバの間でデータをやり取りしています。
この時にWebサーバーから受信したデータをブラウザなどのクライアントで表示させるための呪文、それが「httpHyper Text Transfer Protocolの略です。

でも、このhttpは何からも守られていない状態。その気になれば誰でも通信内容を盗み見できる環境(!)なのです。

守られていないWeb

ここで登場するのがSSLサーバ証明書Secure Sockets Layer)。
これを導入すると、通信の内容を暗号化し、情報を読み取れないようにしてくれるのです。

また、SSLを導入したことでセキュアになったプロトコルは「httpsHyper Text Transfer Protocol Secureになり、ユーザはクレジットカードや住所などの大切な個人情報を安心して送信できるようになります。

このSSLサーバ証明書、実際にどのような役割があるのでしょうか?

SSLサーバ証明書ってなんだろう?

SSLサーバ証明書には二つの役割があります。
一つ目は先述した通り通信内容を暗号化すること、そして二つ目は「誰がサイトを運営しているかユーザに証明する」役割です。

銀行サイトなどではURLの頭に鍵マークがついているのを見かけますよね。あれはSSLサーバ証明書が発行されている証です。

httpとhttps

でも、同じSSLが導入されているサイトでも、鍵マークだけだったり、アドレスバーが緑だったり…様々です。これは導入しているSSLサーバ証明書の種類が違うからなのです。

次はSSLサーバ証明書の種類について少し学んでみましょう。

SSLサーバ証明書ってどんな種類があるの?

SSLの証明は様々な会社(機関)が発行しており、サービス内容も価格も若干異なります。

また、個人でも導入できそうなお手軽なものから、公的サイトなどで使用する厳格なものまで様々なものがありますが、大きく分けると3つの種類があります。

導入を考えたら、まずはこの3つの中のどちらが自サイトにふさわしいか考えてみましょう。

特徴をざっくりと一覧にしてみました。

項目 EV SSLサーバ証明書 企業実在認証 ドメイン認証
認証レベル(信頼性) ★★★ ★★☆ ★☆☆
実在性を認証 ×
団体実在の審査 厳重な審査あり 審査あり なし
アドレスバー表示 ◎組織名を表示 × ×
個人による取得 × ×
フィッシング詐欺対策 ×
導入費用 安価

ドメイン認証(Domain Validation / DV)

3つの中でも一番お手軽で安価に導入できるSSLがこちらのドメイン認証
証明書に記載されているドメインの持ち主だと証明することができれば発行してもらえるSSLサーバ証明書です。また、個人でも簡単に導入することが可能です。

ただし、この証明書のデメリットはその手軽さにあり、実在を証明する審査がありません。すなわち、サイトを所有する団体が架空のものであっても取得することが出来てしまいます。

サイト自体はSSL化されていてもちょっぴり信頼度に欠けてしまいます。個人情報のやり取りが比較的少ない個人サイトでの使用に向いています。

httpとhttps

アドレスバーでの表示の特徴は「https」になり「鍵」のマークが付きます。

企業実在認証(Organization Validation / OV)

先ほどのドメイン認証のSSLでのデメリットの「団体の実在の証明」をカバーしたのがこちらの企業実在認証です。
審査を行った後に証明書が発行されるため、組織名を偽装することが出来ません。

httpとhttps

アドレスバーでの表示の特徴はドメイン認証と同じく「https」になり「鍵」のマークが付きます。
パッと見た感じは「ドメイン認証」のタイプを変わりません。ただし、証明書を確認することで団体の実在性を証明することが可能となります。

3つの中で最も一般的に使用されているSSLサーバ証明書です。

EV SSLサーバ証明書(Extended Validation)

最も認証レベルが高い、つまり信頼性が高いのがこのEV。EVは世界標準の認証ガイドラインがあり、サーバ証明書の中で最も厳格な審査が行われます。

httpとhttps

EV認証を行うとアドレスバーが緑色に変わり、サイトを所有している企業名や国が表示されるようになります。銀行などのサイトでよく見かけますよね。

この緑色のバーを目印に怪しいサイトに引っかからないよう注意喚起ができるため、ユーザをフィッシング詐欺から守ることができます

この緑色のバーがEV SSLサーバ証明書を導入する大きなメリット。導入費用は高くなりますが、最も信頼できるのはこちらです。

参考:Symantec SSLサーバ証明書の種類と比較 / Globalsignc SSSLの種類の比較と利用用途

EVは一番セキュリティが高いってほんと?

こうして3つのSSLの種類を見比べると「導入費用が高い…ということは…EV SSLサーバ証明書が一番セキュリティが高いんだな…!」と思ってしまいますが、認証レベル(信頼性)はセキュリティの高さ(レベル)を示すものではありません

EVの導入費用が高くなる理由は審査の数が多いため。Whois情報はもちろん、電話番号や会社の所在地(住所)などの実在を確認があり、かなり厳格な審査が行われます。

認証レベルが上がるほど多くの審査を通過する、そのため審査で関わる機関や人の数が多くなることが理由だそうです。

EVの目的は信頼性の高いSSLサーバ証明書が導入されていることを知らせることです。

(余談ですが、実際のセキュリティの強度は使用するサーバやクライアント側のブラウザなど、サイト側のシステムなどに依存しています。)

SSLサーバ証明書情報の確認してみよう

では、最後にSSLサーバ証明書情報を確認してみようと思います。
ブラウザによって確認方法が異なりますので、Google Chromeと、Internet Explororのそれぞれの確認方法をお伝えします。

Internet Explororでの確認方法

早速確認してみましょう。アドレスバーの鍵マークをクリックします。
Webサイトの認証」のポップアップが表示されますので、この「証明書の表示」をクリック。

アドレスバーの鍵マークをクリック

するとSSLサーバ証明書の情報のウィンドウが開きます。
ここでは(1)Webサイトの所有者(2)証明書の発行機関(3)証明書の有効期限の3つが確認できます。

証明書情報の画面がポップアップ

さらに詳細を見てみましょう。
上部のタブから「詳細」をクリックします。すると、証明書に関する様々な情報の一覧を確認する画面に移動します。

ここから「サブジェクト」を選択すると、画面下のエリアに運営団体についての詳細が表示されます。
この「サブジェクト」では(4)Webサイトの団体名を確認することができます。

証明書情報の詳細

このエリアでは団体名の他に、コモンネーム所在地などを確認することができます。

さらに運営元の情報を調べる

次はChromeでも確認してみましょう!

Google Chromeでの確認方法

Chromeは少し前に仕様変更があり、鍵をクリックしただけでは証明証情報を確認できなくなってしまいました。今は「開発者ツール」から証明書の情報を確認することができます。

右クリック、もしくはCtrl+Shift+iで「検証」を開きます。

Chromeの場合は開発者ツールから確認

タブの中から「Security」を探し、クリックします。

Securityをクリック

以下の画面中央にある「View certificate」のボタンをクリックすると、先ほどのIEと同様の「SSLサーバ証明書情報」のウィンドウが表示されます。

View certificate

以上がSSLサーバ証明書の確認方法です。

次回は

次回は、サイトを常時SSL化するとどのようなメリットがあるのかをテーマにお伝えしていきたいと思います。

▼ 続きはこちらです
Googleも推奨!サイト全体を「常時SSL化」するべき理由とメリットについて
常時SSL化前に考える事、対応する事

今週は以上です!チカッパでした!

SSLについて以下のサイトを参考にさせていただきました。ありがとうございました!

SSLサーバ証明書の種類と比較 | Symantec
SSL/TLSの解説と選び方まとめ | Geotrust
SSLの種類の比較と利用用途 | Globalsign

以下の2点は昔の記事ですが今でも十分に参考になります。ブログをまとめた本も出版されており、とても面白かったのでお勧めしたいです。
SSLって何だろう?| 小悪魔女子大生のサーバエンジニア日記
SSLサーバ証明書を確認してみよう! | 小悪魔女子大生のサーバエンジニア日記