ブラウザは非HTTPSサイトを「安全でない」と表示しますが、数あるWebサイトをセキュリティで守るべき理由の一つです。
この記事を読み終えると、以下のことができるようになります。
関連コンテンツ
是非、Cloudflareが毎月お届けする「theNET」を購読して、 インターネットで最も人気のある洞察をまとめた情報を入手してください!
記事のリンクをコピーする
HTTPSは、 TLS暗号化を使用したHTTPです。HTTPSはTLS(SSL)を使用して通常のHTTP要求と応答を暗号化し、より安全でセキュアにします。HTTPSを使用するWebサイトのURLの先頭には、https://www.cloudflare.comのように、http://ではなくhttps://と表示されます。
なぜWebサイトで HTTPSを使用する必要があるのか?
HTTPSを使用するWebサイトは、レストランで自治体の食品衛生基準合格証を掲示するようなものです。潜在的な顧客は、大きな悪影響を経験することなくビジネスをひいきにすることができると信頼できます。そして今日、HTTPを使用することは、基本的に食品衛生基準の「不合格」証を掲示しているようなものです。顧客にひどいことが起こらないという保証はありません。
HTTPSはSSL/TLSプロトコルを使用して通信を暗号化し、攻撃者がデータを盗むことができないようにします。SSL/TLSは、Webサイトサーバーが主張している本人であることも確認し、なりすましを防ぎます。これにより、さまざまな種類のサイバー攻撃が阻止されます(食品の安全性が病気を予防するように)。
一部のユーザーはSSL/TLSの利点を知らないかもしれませんが、最新のブラウザはWebサイトの信頼性を確実に認識しています。
Googleは、数年にわたってWebサイトをHTTPSの組み込みに向けて少しずつ前進させるための措置を講じてきました。Googleは、検索結果を返す方法の品質係数としてHTTPSも使用します。Webサイトのセキュリティが高いほど、訪問者がGoogleが提供するリンクをクリックすることで間違いを犯す可能性が低くなります。
2018年7月のChrome 68のリリース以降、セキュリティで保護されていないすべてのHTTPトラフィックがURLバーで「セキュアでない」としてフラグ付けされました。この通知は、有効なSSL証明書のないすべてのWebサイトに表示されます。他のブラウザもこれに続きました。
HTTPSを使用すると、データは転送中に双方向で暗号化されます。配信元サーバーからの送信と、返信の両方向です。プロトコルは、悪意のある者がどのデータが送信されているかを観察できないように、通信を安全に保ちます。その結果、ユーザーがフォームに入力したときに、ユーザー名とパスワードが転送中に盗まれることはありません。WebサイトまたはWebアプリケーションがユーザーに機密データや個人データ(銀行口座情報など)を送信する必要がある場合、暗号化によってそのデータも保護されます。
UberやLyftなどのライドシェアアプリのユーザーは、運転手が迎えに来た、と言っているからといって、信頼してなじみのない車に乗る必要はありません。代わりに、アプリは、名前と外観、運転する車の種類、ナンバーなど、ドライバーに関する情報を伝えます。ユーザーは、すべてのライドシェアの車は異なっていて、ドライバーを見たことがなくても、これらのことを確認することで、正しい車に乗ろうといしていることを確認できます。
同様に、ユーザーがWebサイトに移動するとき、実際に実行しているのは、見たこともない人が管理している、知らない遠くのコンピューターに接続することです。HTTPSを有効にするSSL証明書は、ライドシェアアプリのドライバー情報に似ています。これは、Webサーバーが主張している本人であるという信頼できる第三者による外部検証を表します。
これにより、攻撃者がWebサイトを偽装またはスプーフィングして、ユーザーが実際には偽のサイトにいるにもかかわらず目的のサイトにいるものと思わせるような攻撃を防止することができます。HTTPS認証は、会社のWebサイトが正当なものであることを見た目からも示すのにも役立ちます。
多くのWebサイトでは、HTTPSの採用に時間がかかっています。これがなぜそうなのかを探るには、歴史を振り返らなければなりません。
HTTPSが最初に展開され始めたとき、適切な実装は困難で、時間がかかり、高価でした。適切に実装するのが難しく、インターネットリクエストが遅くなり、高価な証明書サービスが必要になるためコストが増加しました。これらの障壁はいずれも現在は真実ではありませんが、多くのWebサイト所有者は依然として恐れを感じており、それが、一部の人々をより良いセキュリティへの飛躍から妨げています。HTTPSについての神話をいくつか調べてみましょう。
「Webサイトで機密情報を処理しないため、HTTPSは必要ありません」
Webサイトがセキュリティを実装していないよくある理由は、セキュリティが目的に対して過剰だと考えるためです。結局のところ、機密データを扱っていないのなら、詮索されても気にする必要があるでしょうか?この見方が、Webセキュリティを過度に単純化している、と言える理由はいくつかあります。たとえば、一部のインターネットサービスプロバイダーは、実際にHTTPで提供されるWebサイトに広告を挿入します。これらの広告は、Webサイトのコンテンツに一致する場合もそうでない場合もありますが、Webサイトプロバイダーが創造的なインプットもできず収益の分配も受けないという事実は別として、広告が不快感を与える可能性もあります。これらの挿入された広告は、サイトが保護されると実行できなくなります。
最新のWebブラウザは、安全でないサイトの機能を制限するようになりました。Webサイトの質を向上させる重要な機能には、HTTPSが必要になりました。位置情報、プッシュ通知、およびプログレッシブWebアプリケーション(PWA)の実行に必要なサービスワーカーはすべて、高度なセキュリティを必要とします。これは理にかなっています。ユーザーの位置などのデータは機密情報であり、不正な目的に使用できるからです。
「ページ読み込み時間を増やしてWebサイトのパフォーマンスを低下させたくない」
パフォーマンスは、ユーザー体験と、Googleが検索結果を返す方法の両方で重要な要素です。当然のことながら、レイテンシーの増加は真剣に考えなければなりません。幸いなことに、HTTPSは時間の経過とともに改善され、暗号化された接続のセットアップに必要なパフォーマンスのオーバーヘッドが削減されました。
HTTP接続が発生すると、Webページを要求しているクライアントとサーバーの間で何度かの行ったり来たりの更新が発生します。HTTPSを使用するには、TCPハンドシェイクに関連する通常のレイテンシー(以下の青で表示)以外に、追加のTLS/SSLハンドシェイク(黄色で表示)が発生する必要があります。
TLSセッションの再開やTLS False Startなど、接続作成の合計レイテンシーを削減するための改善がTLSに実装されています。
セッション再開を使用することにより、サーバーは追加の要求に対して同じセッションを再開することにより、接続をより長く維持できます。接続を維持することにより、クライアントがキャッシュされていないオリジンフェッチを必要とする場合に接続の再ネゴシエーションに費やされる時間を節約し、総RTTを50%削減します。
暗号化されたチャネルを作成する速度を改善する1つの点は、TLS false startと呼ばれるプロセスを実装することです。これは、クライアントが認証を完了する前に暗号化されたデータを送信することでレイテンシーを削減します。詳細については、 TLS/SSLは、CDN上でどのように機能するかをご確認ください。
最後に、TLS 1.3は、さらに大幅なパフォーマンスの向上を実現しています。TLS 1.3のTLSハンドシェイクは1回のラウンドトリップしか必要としません。クライアントが以前に接続していた場合は、ゼロラウンドトリップです。Cloudflareにサインアップすると、WebプロパティのTLS 1.3を簡単に有効化することができます。
「HTTPSを実装するのは高すぎます」
ある時点でこれは真実だったかもしれませんが、今ではコストはもはや問題ではありません。Cloudflare は、Webサイトにトランジットを無料で暗号化する機能を提供します。SSLを無料で提供した最初の企業であり、引き続き提供しています。インターネットセキュリティ全般を改善することで、インターネットをより安全かつ高速にすることができます。
「サイトをHTTPSに移行しているうちに検索ランキングが下がるでしょう」
Webサイトの移行に関連するリスクはあります。不適切に実行すると、SEOに悪影響を及ぼす可能性があります。潜在的な落とし穴には、Webサイトのダウンタイム、クロールされていないWebページ、およびサイトの2つのコピーが同時に存在する場合のコンテンツの重複に対するペナルティが含まれます。ただし、ベストプラクティスに従うことで、WebサイトをHTTPSに安全に移行できます。
最も重要な2つの移行プラクティスは次のとおりです
1) 301リダイレクトの使用と、2)canonicalタグの適切な配置です。HTTPサイトでサーバー301リダイレクトを使用してHTTPSバージョンを指すことにより、Webサイトはすべての検索およびインデックス作成の目的で新しい場所に移動するようにGoogleに指示します。canonicalタグをHTTPSサイトのみに配置することにより、Googlebotなどのクローラーは、新しいセキュアコンテンツが今後正規と見なされるべきであることを認識します。
多数のページがあり、再クロールに時間がかかりすぎることが心配な場合は、Googleに連絡して、Webサイトに送信しても良いトラフィックの量を伝えます。ネットワークエンジニアは、クロールレートを上げて、サイトをすばやく解析し、インデックスに登録できるようにします。