最近気になる「SSLとは?」や「SSL証明書って必要なの?」への答え
セキュリティ効果の向上、また、SEO対策の効果も期待できるSSL化。
これからSSL化しようとしたとき、その手順が難しそうだと感じる人はもちろん、そもそも「SSLって何?」という人も多いでしょう。
そこで今回の記事では、SSL化を行う前に知っておきたい基本の知識をまとめてみました。
実は、つい最近このブログもSSL化を終えたところです。
SSL化のための面倒そうな作業も、しっかりと「SSLとは何か?」の知識を身につけておけばスムーズに進められます。
誤りなくSSL化を終えるため、ぜひ最後までお付き合いください。
SSLとは?
SSL(Secure Sockets Layer)は、以下の2つを可能にする仕組みです。この仕組みによって、webサイトをもっと安全にもっと安心して利用することができるようになります。
- 1. 通信の暗号化
- 2. Webサイトの身分証明
1. 通信の暗号化
インターネット上で通信する情報を暗号化します。暗号化することで情報を秘密にしたまま送受信できるので、安全性の高いやりとりを実現します。
2. webサイトの身分証明
WebサイトをSSLに対応させるとき必要なのが「SSLサーバー証明書」です。SSLサーバー証明書にはWebサイトの身元情報が含まれているので、「このサイトは偽物ではない、安全なのだ!」と主張することができます。
SSLで防げる3つの被害
通信の暗号化と身分証明によって以下の3つの被害を未然に防ぐことができます。
- 1. 盗聴
- 2. 改ざん
- 3. なりすまし
1. 盗聴
インターネット上でやり取りされる情報を盗み聞きしてやろうと企てる悪者がいますが、SSLの通信の下では、情報を暗号化して送受信できるので盗聴が難しくなります。
例えばネットショップの場合を想像してみましょう。ネットショップのお客様はショッピングカートの決済画面で名前やクレジットカードの番号を入力します。その注文情報はネットショップ宛に送られます。
注文情報がネットショップの方へ届く間に盗聴されては一大事です。名前や住所のような個人を特定できる情報と一緒にカード番号までもが漏れてしまいます。赤の他人にどこかで悪用されてしまうかもしれません。
そんな個人情報漏洩のリスクをSSL通信で防げます。個人情報は解読が難しい暗号に変えられ送られます。盗聴が難しくなるので個人情報を盗まれて悪用されるリスクを減らせるわけです。
2. 改ざん
改ざんとは通信中の情報を途中で書き換える行為のことです。SSLではこの改ざん行為も防ぐことができます。
再びネットショップの例で説明します。商品1個という注文情報がネットショップに届く間に100個へといたずらで書き換えられてしまったら? 当然、ショップ側にもお客様の方にも大迷惑ですよね。
SSLなら情報が途中で改ざんされるリスクを減らせるので、安心してやり取りができます。
3. なりすまし
「なりすまし」とは、Webサイトが訪問者を騙すためにまるで本物のように変装していることをいいます。SSLサーバー証明書を見れば、サイトの持ち主の情報が確認できるので、なりすましかどうかを区別することができます。
なりすましは、「フィッシング詐欺」という犯罪に利用されます。フィッシング詐欺は、あたかも本物のWebサイトのようになりすまして、悪用するために個人情報を盗もうとする犯罪行為のことです。
フィッシング詐欺の一例をあげます。ネットバンキングを利用している人は多いでしょう。仮に普段使い慣れている銀行のサイトがじつは偽物だったらどんな被害に発展してしまうでしょうか。
ログインしようと思って入力したアカウントIDとパスワードが偽サイトに盗まれてしまいます。盗んだ張本人は、しめしめと本物のサイトへログインしてあなたの財産を奪い取っていってしまいます。
このように重要な個人情報を盗む目的で作られた偽サイトがフィッシングサイトと呼ばれるものです。
フィッシングサイトに騙されるリスクは、SSLサーバー証明書を調べることで軽減できます。
SSLサーバー証明書には、webサイトの持ち主の情報が含まれているからです。偽サイトかどうかを暴くことができるわけです。本物か偽物かがわかれば、騙されて重要な情報を奪われる心配も減らせますよね。
webサイトの安全性を確認する方法
ちなみにSSLの環境下にあるかどうか、また、なりすましのサイトは以下の方法で暴くことができます。怪しいと思ったサイトはチェックしてみましょう。
SSLで通信のセキュリティが確保されているサイトはアドレスバーを見るとわかります。SSLサイトは「https://」でURLが始まります。ブラウザによって微妙に表示の仕方が変わりますが、鍵マークも閲覧中のサイトがSSL下にあることを伝えるために現れます。
これはChromeの場合です。
ただし、これだけではwebサイトの身元までは保証できません。証明書から身元を調べる方法があります。
これもChromeの場合です。デベロッパーツールというWebの制作者向けの画面で見られます。「1. 表示 > 2. 開発|管理 >
3. デベロッパーツール > 4. security > 5. View Certification」と進みます。
証明書が表示されます。サイト主の情報と証明書の発行元の情報を閲覧できます。
証明書に現れる情報は、認証レベルによって違います。上の例はUFJのネットバンキング ログイン画面で得られる証明書です。審査の難度がもっとも高いEV認証なだけに情報が多いですね。
認証レベルが低いドメイン認証の場合は、サイト主の具体的な身元までは表示されません。
SSL証明書の認証レベルとは?
SSL証明書についてもう少し突っ込んで説明してみます。
SSLサーバー証明書は、サイトの持ち主の身分を保証するためのものです。証明書といっても紙やpdfで発行されるものではなく、サーバーへインストールできる電子証明書の形式を取ってます。
SSLサーバー証明書はSSL環境の実装に必ず必要です。証明書の発行業務を行う認証局が存在し、認証局へ申請後、審査を通過すればSSL証明書が取得できます。
審査の難易度のことを認証レベルといいます。以下の3種類の認証レベルがあり、それぞれで取得できる証明書が違います。身元を保証できるレベルも三段階に分かれます。
- 1. ドメイン認証 Domain Validation (DV)
- 2. 企業認証 Organization Validation(OV)
- 3. EV認証 Extended Validation (EV)
注意したいのは認証レベルが違っても通信の安全性は同じだということです。違う点は、あくまで身分証明をする上での信頼性の度合いです。
認証レベルによって、審査の厳しさが違います。認証レベルが上がるほど難しく=より信頼できるサイトだということができます。
認証レベルが違えば証明書を取得するための費用も変わります。認証レベルがあがるほど料金は高額になります。
1. ドメイン認証 Domain Validation (DV)
一番審査がゆるく、費用面でも負担の少ない証明書です。
審査方法はメールで完了するのがほとんどで、ドメインの登録者さえきちんと確認できればOKです。そのため個人でも気軽に取得が可能です。ブロガーや自営業のフリーランスでも問題なく利用できますね。
料金も安く1年で1000円くらいのものが余裕で見つかります。
エックスサーバーのように利用者に無料で提供しているレンタルサーバーもあります。設定も難しくなく、管理画面から2、3回クリックするだけでSSLの環境が整います。
2. 企業認証 Organization Validation(OV)
企業の存在を証明することが取得の条件となる法人向けの証明書です。
審査はメールだけでなく電話で本人確認が必要です。企業の存在を証明することも求められるので面倒で、ドメイン認証よりも取得費用が高額になりますが、その手間とコストをかけられるということが法人としての信頼性をアピールできることにつながります。
3. EV認証 Extended Validation (EV)
企業認証の審査をさらに厳しくしたものがEV認証です。認証を与えるガイドラインは世界基準で定められています。申請者の本人確認、企業の所在確認はもちろん人事部や上司など申請者以外の身分もしっかり証明することが取得の取得の条件となります。
アドレスバーで身元をしっかりアピールできるのは、EV認証だけの大きなメリットです。なりすましでないことを証明し、利用者に大きな安心感を与えられます。
SSL証明書 比較
SSL証明書にはブランドがあり、認証レベルの違いや予算に合わせて選択できます。
サイフにやさしいSSL証明書がキャッチコピーのエスロジカルさんの料金表です。複数年契約するほど安くなります。
ブランド | 認証レベル | 料金 |
---|---|---|
RapidSSL | DV | 3,000円〜 |
RapidSSL ワイルドカード | DV | 24,800円〜 |
ジオトラスト QuickSSL Premium | DV | 11,500円〜 |
ジオトラスト トゥルービジネスID | OV、EV | 19,800円〜 |
ジオトラスト トゥルービジネスID ワイルドカード | OV | 78,000円 |
シマンテック(旧ベリサイン) Secure Site | OV、EV | 49,800円〜 |
シマンテック Secure Site Pro | OV、EV | 108,000円〜 |
スターフィールド スタンダードSSL | DV | 9,000円〜 |
スターフィールド デラックスSSL | OV | 22,500円〜 |
サイバートラスト SureServer | OV、EV | 38,000円〜 |
Thawte SSL123 | DV | 15,000円〜 |
SSL よくある質問エトセトラ
SSLについて調べていて、「ムム?」っと気になったことを補足しておきます。
独自SSLと共有SSLの違い
レンタルサーバーと契約すると大概の場合、共有SSlのスペースが備わっています。自分でSSL証明書を取得する必要がなく、レンタルサーバーに設定されたSSL証明書を共有する方法で利用します。
以下は例としてロリポップの共有SSLです。管理画面でSSL環境のURLを確認できます。
お問い合わせフォームのような暗号化して情報を送受信したいページだけをSSL対応させるときに使われることが多いです。
でも、URLがサイトの独自ドメインとは違うものになってしまうことに注意です。敏感なサイト利用者にはURLが変わってしまうことで怪しく思われるかもしれませんね。
また、独自SSLと比較してセキュリティに不安が残るといいます。共用の場合、ブラウザに残されるサイト利用者の行動履歴であるCookieを悪用した盗聴のリスクがあるようです。
例えば、WordPressで運用するサイト、contact form7を共用SSLで走らせるというテクニックがありました。検索すれば「止めたほうがいい」という情報がたくさんヒットします。気をつけましょう。
共有はSSLを限定的に導入したいときに便利ですが、フィッシングサイトと誤解を与えるのはかえって損ですし、安全性にも問題があるなら、導入するコストは下がってきてるのでどうせやるなら独自の方で行きましょう。
SSLとTLSの違い
SSLを調べていると、「SSL/TLS」や「TLS/SSL」のような表記を見ることがあります。TLS(Transport Layer Security)って何なのでしょうか?
細かな技術の違いを話題にしていない限り、TLSとSSLの指していることは同じです。
SSLはバージョン3.0までの開発でした。3.0以降はTLSという名称への変更がありましたが、それまで広がっていた呼び方にみんなが慣れていたので、そのままSSLと呼ぶのが一般的になりました。
CSRとは?
SSL証明書の取得に必要なものです。
CSR(Certificate Signing Request)は、日本語では「証明書署名要求」の意味で、SSL証明書を要求していることを認証局へ伝えるためのものです。
伝達される情報には、申請者の組織名や所在地など身元を識別する情報が含まれます。
レンタルサーバーを利用する場合は、だいたいはレンタルサーバーの管理画面でCSRの作成が可能です。レンタルサーバーのマニュアルを見れば方法が公開されているはずです。
Apacheのようなソフトを利用して自前でサーバーを用意する場合は、CSRの作成も自分で行います。サーバーによって異なる具体的な方法は、取得予定の証明書ブランドのサイトに行けばサーバーソフト別にマニュアルがあります。
SSLにデメリットはあるの?
メリットはいままで書いてきたとおりです。盗聴、改ざん、なりすましを防ぐことができます。
ではデメリットは?
費用の負担がまずあげられますね。無料のSSL証明書もたしかにありますが、法人が身元を保証できる認証レベルの証明書を取得する場合はわりと高額な料金が発生します。
設定がめんどくさいことも負担になります。httpからhttpsへURLが変わります。リダイレクトという引き継ぎの処理を適切に行わなければ、いままでのSEOの効果を失うリスクがあったり、サイト内のリンクもURLの変更に合わせて書き換える必要があったり。
こういう手間が面倒でこのブログもいまだ非SSLです。そのうちやりたいなあと思いながらけっこう時間が経っちゃいました。
運営途中のサイトをSSL化させるのは手間ですが、立ち上げと同時ならその面倒さはありません。セキュリティへの需要は今後もますます高まりますし、SEOに有利だという噂もあるので、今から作るサイトなら積極的にSSLの導入を検討するべきでしょう。
今回は以上です。
読み終わったらシェア!