WebサイトのURLが https:// で始まっているサイトは、SSL/TLS証明書によって通信が暗号化されています。現在はHTTPS化がSEO・セキュリティ・信頼性の面でデファクトスタンダードとなっており、HTTP のままのサイトはブラウザに「保護されていない通信」として警告が表示されます。
SSL証明書の仕組み
SSL証明書には主に2つの役割があります。
- 暗号化: ブラウザとサーバー間の通信を暗号化し、第三者による傍受を防ぐ
- 認証: サーバーが正規のものであることを証明し、なりすましを防ぐ
証明書には「認証局(CA)」が電子署名を付与します。ブラウザはあらかじめ信頼する認証局のリストを持っており、そのリストに含まれる認証局が発行した証明書のみを有効と判断します。
証明書の種類
| 種類 | 認証レベル | 特徴 |
|---|---|---|
| DV(ドメイン認証) | ドメイン所有確認のみ | 取得が簡単・無料(Let's Encrypt等) |
| OV(組織認証) | 法人実在確認 | 企業情報が証明書に記載される |
| EV(拡張認証) | 厳格な法人審査 | かつてはアドレスバーが緑色に |
個人サイトやブログ・中小企業サイトではDV証明書で十分です。Let's Encryptの普及により、無料でSSL証明書を取得できるようになりました。
有効期限と更新
SSL証明書には有効期限があります(現在は最大397日)。期限切れになるとブラウザにエラーが表示され、サイトにアクセスできなくなります。
多くのサーバーでは自動更新が設定できますが、設定漏れや更新失敗で証明書が切れるケースは少なくありません。定期的な監視が重要です。
HSTSとは
HSTS(HTTP Strict Transport Security) は、ブラウザに「このドメインは必ずHTTPSで通信する」と記憶させる仕組みです。一度HSTSを受信したブラウザはHTTPへのリクエストを自動的にHTTPSに変換するため、SSL剥奪攻撃を防げます。
.htaccess での設定例:
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
## 証明書の状態確認
SSL証明書が正しく設定されているか、有効期限はいつかはSSL証明書・HTTPS設定確認ツールで即座に確認できます。HTTPSリダイレクト・www統一・HSTSの設定状況もあわせてチェックできます。