そもそもSSLとは
SSLは「Secure Sockets Layer」の略で、Webサイトとあなたのスマホ・PCの間の通信を「暗号化」する仕組みです。現在は技術的にはTLSという後継規格が使われていますが、慣習で「SSL」と呼び続けられています。
SSLがないと、Wi-Fi経由で送ったパスワードや個人情報が、途中で誰かにのぞかれる可能性があります。SSLを使えば、通信は暗号化されて、たとえ盗み見られても内容が読めない状態になります。
httpとhttpsの違い
URLの最初が「http://」か「https://」かで、暗号化の有無が変わります。「s」はsecureの頭文字。Chromeなどのブラウザでは、httpのサイトを開くと「保護されていない通信」と警告が出ます。Googleの検索ランキングでも、httpsのサイトが優遇されます。
SSLが守ってくれる場面
特に注意したいのが、街中のフリーWi-Fi。SSL(https)がない通信は、同じWi-Fiにつないだ第三者から内容を盗み見られる可能性があります。今は主要サイトの多くがhttpsになっていますが、見知らぬサイトを開くときは念のためURLの「s」を確認する習慣をつけましょう。
無料でSSLを設定する方法
「Let's Encrypt」という非営利の認証局が、SSL証明書を無料で発行してくれます。VPSやレンタルサーバーの管理画面では、ボタン1つで自動設定できることがほとんど。GitHub Pages・Netlify・Vercel・Cloudflareなら、独自ドメインを設定するだけでSSLが自動で有効になります。
2010年代には年数千円〜数万円かかっていたSSL証明書ですが、Let's Encryptが2014年に登場してから、誰でも無料で使えるようになりました。
実際の運用では、証明書の「更新」も重要です。SSL/TLS証明書には有効期限があり、期限切れになるとブラウザに警告が出ます。多くのレンタルサーバーやホスティングサービスは自動更新してくれますが、VPSで自分で設定する場合は自動更新が動いているか確認しましょう。
気をつけたい落とし穴
- 「httpsだから安全」と決めつけない。詐欺サイトもhttpsを使う時代なので、URLの綴り(amazon-jp.comなど)も確認する
- SSL証明書には期限がある(通常90日〜1年)。期限切れだとブラウザに警告が出てサイトが使えない
- 古い「SSL 3.0」「TLS 1.0」は脆弱なため、サーバー側で最新のTLS 1.2/1.3を使う設定にする
将来どう役立つ?
SSLや暗号通信の知識は、Webエンジニア・セキュリティエンジニア・インフラエンジニアの全員に必要です。SSLの仕組みを理解しておくと、フィッシング詐欺サイトを見抜く力がつき、家族や友人をネット詐欺から守ることにもつながります。
また、SSLは「鍵マークがあるから絶対安全」という意味ではありません。通信が暗号化されていても、サイト自体が偽物なら危険です。エンジニアとしては証明書、ドメイン、リダイレクト、混在コンテンツ、更新期限をまとめて見る必要があります。利用者としても、URLのドメイン名まで確認する習慣が大切です。
今日からできること
- 普段使うアプリ・サイトのURLを確認し、httpsになっているかチェックする
- ブラウザの鍵マークをクリックして、証明書の発行元を見てみる
- 自分のホームページを公開している場合、SSL設定が有効になっているか確認する
まとめ
確認 鍵マーク(HTTPS)の意味は?