GoogleのHTTPSサイト優遇方針で待ったなし! Webサイト常時SSL化の効果と実装ポイント
現状では、SSL化しているのは入力フォームのページだけというWebサイトが多い。しかし、グーグルがHTTPSのWebサイトをランキングで優遇すると2014年に発表したこともあり、サイト全体をHTTPS化する「常時SSL」の実装を検討する時代になっている。
シマンテック・ウェブサイトセキュリティの中川氏は「Web担当者Forum ミーティング 2016 春」における「GoogleのHTTPSサイト優遇方針で待ったなし! Webサイト常時SSL化の効果と実装ポイント」セッションで、その効果と実装のポイントについて解説した。
常時SSL化によるWebサイトの価値向上
常時SSLとは、入力フォームの有無にかかわらず、全ページをHTTPSにすることだ。サーバーとクライアント間の通信を暗号化するSSLはセキュリティ対策として知られてきたが、ここ数年でそれ以外のメリットも出てきた。
通信速度の向上
かつては、SSLを導入すると暗号化オーバーヘッドのためWebサイトが遅くなるというのが常識だった。しかし、サーバー側、クライアント側ともにCPUの性能が向上したことで、もはやオーバーヘッドはほとんど感じられなくなっている。それだけでなく、SSL化によりHTTP/2というプロトコルを利用できるようになり、むしろ速くなるケースもある。
HTTP/2は、グーグルが開発したSPDYを元にしたプロトコルで、接続の多重化やヘッダ圧縮などによって通信を高速化する。HTTPとHTTPSの速度の違いをテストできるサイトがあるので試してみるといいだろう。注意点としては、HTTP/2は2015年にRFC化されたばかりの新しいプロトコルであり、まだ環境が100%整っているとはいえない。しかし下位互換性があり、古い環境からアクセスされた場合はHTTP1.1で接続できるので心配はない。
検索順位の優遇(グーグル)
グーグルは2014年に、検索結果でHTTPSのサイトを優遇するロジックを実装した。HTTPS化すれば魔法のように検索順位が上がるというわけではないが、HTTPとHTTPSで同じようなコンテンツがあればHTTPSが優遇される。
また、SEOをするのは、通常はトップページやハブになるページなど、ページビューの多いページだろう。元々ページビューが少ないページにコストをかけても、効果が小さいからだ。
しかしSSL化すると、深い階層のFAQやそれほど見られていないロングテール商材の詳細ページのような、通常はSEOをしていないページのSEOにもなる可能性がある。しかも、HTMLコーディングの変更も必要ない。注意点としては、グーグルはSSL証明書のチェックをしているので、正しく実装する必要がある。
Webサイトの信頼性向上
SSL証明書にはいくつか種類があるが、EV SSLの場合はアドレスバーに認証済みの企業名が出る。全ページで社名が出ることで、本物のサイトだということがエンドユーザーにわかりやすい。
常時SSL化によるセキュリティの強化と管理の効率化
SSL化すると、通信が暗号化され外から盗み見られない。これが従来からのセキュリティの価値だ。
特に最近はスマートフォンやタブレットを公衆無線LANにつないで使うことも多いが、公衆無線LANでは攻撃者によるなりすましAPの危険性もある。SSL化してあれば、あなたのサイトを訪れるユーザーが万が一、公衆無線LANでなりすましAPに接続してしまったとしても、通信内容を見られることはない。
また、社内のイントラネットでは、社員しか接続しないという安心感から暗号化しないことも多いが、攻撃者は内部に潜んで通信を盗み見ていることもあるので、暗号化はしておく方がいい。
さらに、常時SSLにすることで、開発や管理の効率化もはかれる。
Webアプリ開発の効率化
HTTPとHTTPSのページが混在していると、Cookie情報のやり取りをするページとしないページを作り分ける必要がある。常時SSLにすれば作り分けが不要になるので、アプリ開発がシンプルになる。
Web解析の精度が上がる
Web解析では、HTTPSページからの訪問を判別できないことが問題になる。RFCによるHTTPの仕様で、ブラウザはHTTPSのサイトからHTTPのサイトへ来たリファラー情報を渡さないと決まっているからだ。このため、HTTPSのページからのアクセスでは参照元が取れないわけだが、この問題はSSLのサイトが増えるほど深刻になる。
2016年4月にはヤフーも「一年かけて全サービスを常時SSLにする」と発表しているため、ヤフーからの流入もわかりにくくなる可能性がある。HTTPSサイトからHTTPSサイトへのリファラー情報は引き渡す仕様になっているため、自社サイトをSSLにすればこの問題は解決する。
常時SSL化の現状と実装方法
現在、常時SSLのWebサイトが増加している。グーグルやツイッター、ヤフー、マイクロソフトなど海外の大手が多いが、国内でもオンラインバンクやECサイトで導入が進んでいる。また、米政府は「2016年末までに全ての“.gov”サイトを常時SSL/TLS化」することを宣言している。ブラウザベンダーも、従来はSSLの実装が間違っている場合にのみ警告を出していたが、暗号化されていないHTTPでのアクセスで警告を出すことを検討中だ。
インターネット上のトラフィック総量のうち、HTTPSトラフィックの占める割合は、2010年に2%だったが、2015年には24%になっている。常時SSL化されたWebサイトの数で見ると、2016年3月の時点でトップ1万のサイトの10.6%という調査結果もある。
今年から来年にかけては常時SSL化がさらに進むだろうが、現状ではまだ全体の一割程度なので、今なら常時SSL化の先行者メリットを感じられるだろう。入力フォームがHTTPSでなければ不安だと感じるようになったのと同様、今後、Webサイト全体がHTTPSでなければ不安になるのかもしれない。
それを後押しするように、新しいタイプのSSL証明書や、管理ツールが登場している。無償発行の証明書「Let's Encrypt」は、いわばSSLサーバー証明書のオープンソース版だ。また、シマンテックの証明書オートメーションサービス「CIC(Certificate Intelligence Center)」では、社内の証明書を一元管理するほか、証明書の自動更新エージェントを提供する。
HTTPのサイトを常時SSLにするには、まずHTTPサーバーとHTTPSサーバーを併用し、301転送を行うのがお勧めだ。常時SSLにする手順は、転送をかける以外は入力フォームのページをSSLにするのと同じで、Webサーバーを立ち上げてSSL/TLS化プラグインとSSLサーバー証明書をインストールするだけだ。ただし、いくつか注意点がある。
- HTTPS混在エラーを避けるHTML記述(「http://」で始まる埋め込みファイルはNG)
- HTTPS対応のビーコンタグを利用(提供されていなければベンダーに聞く)
- スピードアップのため、ファイルはなるべく同じドメインのサーバーに置く
- Cookieにセキュア属性をつける
- HTTPSへの転送のブロック設定ははずす
- 印刷物にも「https://~」と記載するのも忘れずに
SSL証明書にはEV、OV、DVの3種類あるので、認証レベルに応じたものを選ぶ。
EVとOVは、実在している企業であることを第三者が確認して発行する証明書で、中を見ると運営している企業がわかり、フィッシングサイトではないと確認できる。EV SSL証明書はアドレスバーに社名が表示されてわかりやすいので、企業サイトやIRサイトはEVがお勧めだ。DVはドメイン名でだけ認証しサイトオーナーが誰かは認証しないので、社内サーバーのような特定の人しかアクセスしないサイトに適している。
証明書を入れるとシールが発行されるが、信頼性の証明であり、シールがあることでコンバージョン率が上がることもある。また、一枚ずつ購入する一般的なSSLサーバー証明書の他に、複数ドメインに対応した新しいタイプのSSLサーバー証明書も登場している。こうした証明書はフィーチャーフォンに対応していないが、最近ではスマートフォンの普及が進んだため採用しやすくなっている。
- 従来のSSL証明書(例:www.symantec.com)
ひとつのドメイン名(FQDN)に1枚の証明書を購入する。
- ワイルドカード証明書(例:*.symantec.com)
「test.symantec.com」や、「event.symantec.com」のように、複数のサブドメインに対応。将来のサブドメイン増加に容易に対応できる。スマホには対応するが、フィーチャーフォンは未対応。
- マルチドメイン対応証明書
ひとつの証明書で複数ドメイン名に対応。「www.symantec.com」「jp.symantec.com」「www.geotrust.co.jp」のように、メインのFQDNにいわば代替FQDNを追加することでマルチドメインに対応する。スマホ対応(フィーチャーフォンは未対応)。
証明書をインストールしたら、正しく設定できているかツールを使ってチェックする。シマンテックでは、SSL/TLS実装チェッカー「Symantec Crypto Report」を提供している。
常時SSL化にともなう課題として、SSLサーバー証明書の費用がかさむとの心配があるが、複数ドメインに対応する新しいタイプの証明書ならコストを圧縮できる。また、マルウェアスキャンなどがついてない、SSLの基本機能だけの低価格証明書もある。
証明書の管理負荷を軽減するには、自動化ソリューションを導入すればいいだろう。暗号化により監査ができなくなるとの懸念も聞かれるが、プロキシーサーバーを立てれば解決できる。ノウハウをためるためにも、新しいサーバーやWebサイトリニューアルは常時SSL/TLS化を前提での検討をお勧めする。
ソーシャルもやってます!