SSLとは、ウェブサイトと訪問者の間の通信を暗号化する仕組みです
SSLとは、ウェブサイトとそれを閲覧しているユーザーの間でやり取りされるデータを暗号化するための技術です。「Secure Sockets Layer(セキュアソケットレイヤー)」の略称で、インターネット上の通信を安全に保護することを目的に開発されました。
SSLが導入されているサイトはURLが「https://」から始まります。ブラウザのアドレスバーに鍵マーク(🔒)が表示されているサイトは、SSL(またはその後継規格のTLS)によって保護されているサインです。
「自社のサイト、ちゃんとhttpsになっているかな?」と気になった方は、ぜひ今すぐアドレスバーを確認してみてください。
なぜSSLが必要なのか
インターネット上の通信は、何も対策をしないとデータが「素のまま」流れます。たとえるなら、封をしていないはがきのようなもの。郵便ポストに入れるまでの間、誰でも中身を読み見ることができてしまいます。
SSL化されたサイトは、この「はがき」を封書に変えるイメージです。送り手(ユーザーのブラウザ)と受け取り手(サーバー)の間の通信が暗号化されるため、途中で第三者に傍受されても内容を読み取られる心配がなくなります。
お問い合わせフォームで名前・メールアドレスを送信するとき、会員登録でパスワードを入力するとき、ECサイトでクレジットカード情報を入力するとき。こうした場面で、SSLは利用者の大切な情報を守っています。
SSLが防ぐ3つのリスク
SSLを導入することで、主に以下の3つのリスクを防ぐことができます。
盗聴(通信の傍受)
ユーザーとサーバーの通信の途中で、第三者が内容を盗み見ることを「盗聴」と呼びます。特に公共の場所で無料Wi-Fiを使っているときは、こうした盗聴のリスクが高まります。
コンビニやカフェ、空港で提供されているフリーWi-Fiは便利ですが、セキュリティが弱く、悪意のある人物が同じネットワーク上にいる場合、通信内容を読み取られてしまう可能性があります。SSLで暗号化されていれば、仮に傍受されても内容が解読できないため安全です。
なりすまし(偽サイトへの誘導)
「なりすまし」とは、本物そっくりの偽サイトを作り、ユーザーを騙してIDやパスワード、クレジットカード番号などを入力させる詐欺の手口です。フィッシング詐欺と呼ばれることもあります。
SSLには通信の暗号化だけでなく、サイトの運営者が本当に正しい組織であることを証明する役割もあります。後述するSSL証明書を取得することで、「このサイトは確かに本物です」という第三者機関によるお墨付きが得られます。
改ざん(通信データの書き換え)
ユーザーが送信したデータや、サーバーから受け取るデータが、通信の途中で不正に書き換えられることを「改ざん」と言います。
たとえば、正規のウェブサイトに悪意のあるコードを差し込んで、ユーザーが知らないうちにマルウェアをダウンロードさせたり、ページ内に勝手に広告を挿入したりといった攻撃が考えられます。SSLの暗号化と完全性チェックにより、こうした改ざんを防ぐことができます。
SSLとTLSの違いとは
SSLという言葉はよく使われますが、実は現在のウェブサイトで使われているのは「TLS(Transport Layer Security)」という後継規格です。
SSLはバージョンを重ねるうちに脆弱性(セキュリティ上の弱点)が発見され、現在は実質的に使われていません。TLSはSSLの弱点を改善した、より安全な暗号化プロトコルです。
ただし、業界全体で「SSL」という名称が広く定着しているため、「SSLサーバー証明書」「SSL化」などの言葉は今でもよく使われています。「SSL/TLS」と表記される場合も多く、どちらの言葉が出てきても「通信を暗号化する仕組み」のことだと理解しておくとよいでしょう。
SSLの仕組み(暗号化の流れ)
SSLがどのように通信を暗号化しているのか、大まかな流れを見てみましょう。難しい部分は読み飛ばしていただいても問題ありませんが、「どういう仕組みで安全なのか」のイメージを持っておくと、発注先との会話がスムーズになります。
公開鍵と秘密鍵のペア
SSLでは「公開鍵」と「秘密鍵」という2種類の鍵を使います。
公開鍵は誰でも使えるように公開された鍵です。この鍵で暗号化したデータは、ペアとなる秘密鍵でしか復号(解読)できません。秘密鍵はサーバー側だけが持っていて、絶対に外に出しません。
暗号化通信の流れ
まず、ユーザーのブラウザがサーバーにSSL通信を要求すると、サーバーはSSL証明書(公開鍵が含まれています)をブラウザに送ります。
次に、ブラウザが証明書の正当性を確認したうえで、通信に使う「共通鍵」を生成します。この共通鍵をサーバーの公開鍵で暗号化してサーバーに送ります。
サーバーは自分の秘密鍵で共通鍵を復号します。これでブラウザとサーバーだけが共通鍵を持っている状態になります。
あとはこの共通鍵を使ってやり取りを暗号化するため、高速で安全な通信が成立します。
技術的な詳細は深追いしなくて大丈夫です。大切なのは「SSLによってウェブサイトとユーザーの間で安全に情報をやり取りできる仕組みが整っている」という点です。
SSLサーバー証明書とは
SSLを実現するために必要なのが「SSLサーバー証明書」です。これはサイトの運営者が正当であることを証明するデジタルの証明書で、認証局(CA)と呼ばれる第三者機関が発行します。
認証局とは、証明書の発行・管理を行う信頼性の高い専門機関です。ブラウザはあらかじめ信頼できる認証局のリストを持っており、そこから発行された証明書かどうかを自動的に確認します。
SSL証明書を取得することで、
- 通信が暗号化されること
- サイトの運営者・ドメインが確認されていること
の2点が保証されます。
SSL証明書の種類
SSL証明書には、認証のレベルによって主に3種類があります。どれを選ぶかは、サイトの用途や信頼性をどこまでアピールしたいかによって変わります。
ドメイン認証(DV)
「このドメインを所有していること」だけを確認する最もシンプルな証明書です。審査が短時間で完了し、無料または安価に取得できます。
Let’s Encryptという無料サービスもあり、多くのレンタルサーバーで簡単に導入できます。個人ブログや小規模なコーポレートサイトにはこのレベルで十分です。
企業実在認証(OV)
ドメインの所有に加えて、申請した企業・組織が実在するかどうかも確認される証明書です。法人登記情報などを照合するため、取得に数日かかる場合があります。
企業としての信頼性を示したい場合に適しており、中規模以上のコーポレートサイトや採用サイトによく使われます。
EV認証(EV SSL)
最も厳格な審査を経て発行される証明書です。企業の実在確認に加えて、組織の法的地位や申請者の確認など、複数の審査プロセスが必要です。
以前はブラウザのアドレスバーが緑色になり企業名が表示されるなど視覚的な違いがありましたが、現在は多くのブラウザで表示が変わらなくなっています。金融機関・大手ECサイト・行政機関など、特に高い信頼性が求められるサイトで採用されています。
SSLを導入するメリット
セキュリティの強化
前述のとおり、SSLの最大のメリットは「通信の安全性が確保される」ことです。顧客情報・問い合わせ内容・会員情報などを安全に扱えるようになります。特に個人情報を取り扱うフォームがある場合、SSLは事実上必須です。
ユーザーからの信頼獲得
「保護されていない通信」という警告が表示されているサイトには、多くのユーザーが不安を感じて離脱します。逆に、https://で鍵マークがついているサイトは「ちゃんとした会社が運営している」という安心感を与えることができます。
実際に、SSL未対応のサイトではお問い合わせ率が下がるケースも報告されています。特にBtoB向けのコーポレートサイトでは、発注を検討している見込み客の信頼に直結するポイントです。
SEO(検索順位)への好影響
Googleは2014年から、HTTPSに対応しているサイトを検索順位の評価指標の一つとしています。HTTP(SSL未対応)とHTTPS(SSL対応)では、他の条件が同じであればHTTPSが優遇されます。
ただし、SSLはSEOの評価要素の一つではありますが、コンテンツの質やサイトの使いやすさのほうがより大きな影響を持っています。SSLはいわば「最低限クリアしておくべき条件」として捉えておくとよいでしょう。
ブラウザの警告を回避
Google ChromeなどのブラウザはHTTP(SSL未対応)のサイトにアクセスすると「保護されていない通信」と表示します。これはサイトを訪問したユーザーに対して不安感を与えるため、ビジネス上のマイナス要因になります。SSL化することでこの警告を回避できます。
SSLのデメリット・注意点
メリットが大きいSSLですが、いくつか注意点もあります。
コストがかかる場合がある
無料のLet’s Encryptも広く使われていますが、企業実在認証(OV)やEV認証の証明書は有料です。また、独自SSLの場合はサーバー設定や証明書の年次更新の手間もかかります。
とはいえ、近年はレンタルサーバーが無料SSL(Let’s Encrypt)を標準提供しているケースが増えており、コスト面のハードルは大幅に下がっています。
HTTP→HTTPS移行時の注意点
既存のHTTPサイトをHTTPS化する際は、リダイレクト設定や内部リンクの修正など、設定作業が必要です。対応が不完全だと「混在コンテンツ」と呼ばれる状態になり、セキュリティ警告が表示されたり、SEO評価が分散してしまう場合があります。
既存サイトをHTTPS化する場合は、制作会社に対応を依頼するか、手順を確認しながら慎重に進めるとよいでしょう。
SSLはサイト自体を守るものではない
SSLはあくまでも「ユーザーとサーバーの間の通信」を保護するものです。サイト自体への不正アクセスや、WordPressのプラグインの脆弱性を突いた攻撃などは、SSLとは別の対策(セキュリティプラグイン・ファイアウォール・定期アップデートなど)が必要です。
「SSLさえ入れれば安全」という過信は禁物です。セキュリティ対策はSSLを含めた総合的な取り組みとして考えることをおすすめします。
SSLの導入手順
SSLを新規で導入する際の大まかな流れは以下のとおりです。制作会社や使用するサーバーによって手順が多少異なりますが、参考にしてください。
SSL証明書を選定・取得する
まず、どの種類の証明書が必要かを検討します。コーポレートサイト・採用サイト・ブログなど一般的なウェブサイトであれば、ドメイン認証(DV)で十分です。
レンタルサーバーの管理画面から無料のLet’s Encryptを発行できるケースが多いため、まず管理画面を確認してみてください。
CSR(証明書署名要求)を生成する
有料の証明書を取得する場合は、サーバー上でCSR(Certificate Signing Request)を生成し、認証局に提出する必要があります。この作業はサーバー管理の知識が必要なため、制作会社に依頼するのが安心です。
証明書をインストールする
認証局から証明書が発行されたら、サーバーにインストールします。
HTTPS化の設定をする
証明書のインストール後、HTTP→HTTPSへのリダイレクト設定を行います。これをしないと、同じページがhttpとhttpsの両方でアクセスできてしまい、SEO上の問題が生じる可能性があります。
動作確認をする
すべての設定完了後、サイト全体でHTTPSが正しく動作しているかを確認します。「混在コンテンツ」(HTTPSページの中にHTTPの画像やリンクが混じっている状態)がないかもチェックできるとベストです。
SSL対応の確認方法
自社サイトがSSLに対応しているかどうかは、以下の方法で確認できます。
URLを確認する
ブラウザのアドレスバーに表示されているURLを見てください。「https://」から始まっていればSSL対応です。「http://」のままの場合は未対応です。
鍵マークを確認する
Google ChromeやSafariなどのブラウザでは、SSL対応サイトにアクセスすると、アドレスバーに鍵マーク(🔒)が表示されます。このマークをクリックすると、使用されている証明書の詳細も確認できます。
「保護されていない通信」の警告を確認する
SSL未対応のサイトでは、ブラウザによって「保護されていない通信」という警告が表示されます。自社サイトにアクセスしてこの表示が出る場合は、早急にSSL化の対応が必要です。
常時SSLについて
「常時SSL」とは、サイト内のすべてのページをSSL化(HTTPS化)することを指します。
以前は、個人情報を入力するお問い合わせページや決済ページだけにSSLを適用する「部分的なSSL対応」が一般的でした。しかし現在は、すべてのページをHTTPS化する常時SSLが標準的な対応になっています。
常時SSLにすることで、Cookieの盗聴を防いだり、サイト全体にわたって一貫した安全性を確保できるというメリットがあります。Googleも常時SSL化を推奨しており、SEOの観点からも取り入れておくべき対応です。
新規サイトを構築する場合は最初からhttps設定にしておくことが理想ですし、既存のHTTPサイトがある場合も、できるだけ早めにHTTPS化の対応を検討できるとよいでしょう。
まとめ
SSLは、ウェブサイトの通信を暗号化してユーザーの情報を守るための仕組みです。
- URLが「https://」で始まるサイトはSSL(またはTLS)が導入されています
- 盗聴・なりすまし・改ざんの3つのリスクを防ぐ効果があります
- SSL証明書には「ドメイン認証(DV)」「企業実在認証(OV)」「EV認証」の種類があります
- GoogleのSEO評価にもプラスの影響があります
- 現在は無料で導入できるケースも多く、コーポレートサイトへの導入は事実上マストです
自社サイトが「http://」のままになっている場合は、制作会社に確認してみることをおすすめします。SSL化はセキュリティ対策の入口であり、ユーザーへの信頼性を高める第一歩です。
当社でもウェブサイトのSSL化や、セキュリティを考慮したサイト制作・保守をサポートしています。気になる点があれば、お気軽にご相談ください。
関連用語
- HTTPS(ドメイン) — ウェブサイトのインターネット上の住所にあたる「ドメイン」について
- 表示速度 — SSL化とあわせて対策しておきたい、ページの読み込み速度について
- SEO — SSL化がプラスに働く、検索エンジン最適化について
- WordPress — SSL設定もふくめたサイト管理で最もよく使われるCMSについて
- ホスティング — SSLを設定するサーバー環境(レンタルサーバー)について