SSL/TLSとは

SSL(Secure Sockets Layer)およびその後継のTLS(Transport Layer Security)は、インターネット上の通信を暗号化するプロトコルです。現在は技術的にはTLSが使われていますが、慣習的に「SSL」と呼ばれることが多いです。

SSLを導入すると、ブラウザのアドレスバーに鍵マークが表示され、URLが「https://」で始まるようになります。

京谷商会では、20以上のドメインとサブドメインをすべてHTTPS化しています。18のナレッジベースポータル、クライアントの静的サイト(柴田工業、配食のふれ愛、WIOの工事屋さん)、メインのコーポレートサイト——すべてのSSL証明書をCloudflareで管理し、ワンクリックで設定を完了しました。この記事では、その実体験をもとに、SSL/HTTPS化の重要性と具体的な導入方法を解説します。

なぜHTTPS化が必要なのか

1. セキュリティの確保

HTTPのままでは、ユーザーとサーバー間の通信内容が第三者に盗み見られるリスクがあります。特に以下のような情報を扱うサイトでは必須です。

  • お問い合わせフォーム(個人情報)
  • ログイン情報
  • クレジットカード情報
  • 会員情報

京谷商会のポータルサイトでは、サブスクリプション決済やスタッフのログイン認証など、機密性の高いデータを日常的にやり取りしています。D1データベースへのAPI通信もHTTPS経由で暗号化されるため、データの安全性が確保されています。

2. SEOへの影響

Googleは2014年からHTTPSをランキングシグナルの一つとして使用しています。HTTPS化することで、検索順位にプラスの影響が期待できます。

私たちが運営する18のナレッジベースポータルはすべてHTTPSで配信されています。SEOの観点からも、HTTPSは「あったほうがいい」ではなく「なければならない」基本要件です。

3. ブラウザの警告回避

現在のChrome、Firefox、Edgeなどのブラウザは、HTTPサイトに対して「保護されていない通信」という警告を表示します。これはユーザーの離脱を招く大きな原因になります。

クライアントサイトの初期構築時、CloudflareのSSLを設定する前の一瞬だけこの警告が表示されたことがあり、クライアントからすぐに問い合わせが来ました。それほどユーザーはブラウザの警告に敏感です。

4. HTTP/2とHTTP/3の利用

HTTP/2およびHTTP/3プロトコルを利用するにはHTTPSが必須です。Cloudflareはどちらにも対応しており、特にHTTP/3(QUIC)は接続の確立が高速で、モバイル環境でのパフォーマンス向上に大きく貢献します。

京谷商会の全ポータルではCloudflare経由でHTTP/3が有効になっています。設定はダッシュボードのトグルをオンにするだけで、サーバー側の変更は不要でした。

無料でSSL証明書を取得する方法

方法1: Let's Encrypt

Let's Encryptは、非営利団体ISRGが運営する無料のSSL証明書発行機関です。

メリット:

  • 完全無料
  • 自動更新が可能(certbotを利用)
  • DV証明書(ドメイン認証型)を即時発行

手順の概要:

  1. サーバーにcertbotをインストール
  2. certbot --nginx(Nginxの場合)を実行
  3. 自動的に証明書が発行・設定される
  4. cronで自動更新を設定

注意点:

  • 証明書の有効期間は90日(自動更新推奨)
  • ワイルドカード証明書にはDNS認証が必要
  • サーバーの管理権限が必要

京谷商会もCloudflare導入前はLet's Encryptを使用していましたが、20以上のドメインの証明書を個別に管理する負荷は相当なものでした。certbotの自動更新が失敗して証明書が期限切れになるトラブルも経験しています。

方法2: CloudflareのSSL(推奨)

Cloudflareを利用すると、さらに簡単にSSL化できます。京谷商会が全面的に採用している方法です。

メリット:

  • 証明書の管理が完全に不要
  • 設定画面からワンクリックで有効化
  • 自動更新で手間いらず
  • 1つのダッシュボードで全ドメインを管理

暗号化モードの選択:

モード説明推奨度
Off暗号化なし非推奨
フレキシブルCloudflare↔ブラウザ間のみ暗号化最低限
フルエンドツーエンド暗号化(自己署名証明書OK)推奨
フル(厳密)エンドツーエンド暗号化(正規証明書必須)最推奨

京谷商会の設定: 18ポータルはCloudflare Workers上で動作しているため、Cloudflare↔Workers間の通信はCloudflare内部で完結し、暗号化は自動的に保証されます。クライアントのCloudflare Pages サイトも同様です。外部オリジンサーバーを使うケースでは「フル(厳密)」を設定し、Cloudflareのオリジン証明書をサーバーにインストールしています。

Cloudflareオリジン証明書の活用

Cloudflareは無料でオリジン証明書を発行してくれます。これはCloudflare↔オリジンサーバー間の通信を暗号化するための証明書で、最長15年の有効期間を設定できます。

メリット:

  • Let's Encryptのような90日ごとの更新が不要
  • Cloudflareのダッシュボードから即時発行
  • ワイルドカード対応

私たちは外部オリジンサーバーを使う場合、必ずこのオリジン証明書を使っています。15年有効なので、一度設定すれば実質的に更新作業は不要です。

HTTPS化の手順

ステップ1: SSL証明書の取得・設定

Cloudflareを使う場合、ネームサーバーを変更するだけでSSL証明書が自動的に発行されます。追加の手順は不要です。

ステップ2: HTTPからHTTPSへのリダイレクト

すべてのHTTPアクセスをHTTPSに自動リダイレクトする設定を行います。

Cloudflareの場合: 「常にHTTPSを使用」をオンにするだけです。京谷商会では全ドメインでこの設定を有効にしています。

Nginxの場合:

server {
    listen 80;
    server_name example.com;
    return 301 https://$server_name$request_uri;
}

ステップ3: Mixed Content(混在コンテンツ)の修正

HTTPSページ内にHTTPのリソース(画像、CSS、JSなど)が含まれていると、「Mixed Content」エラーが発生します。

  • HTMLソース内のURL参照をhttps://または//(プロトコル相対URL)に修正
  • データベース内のURLも一括置換が必要な場合がある
  • Cloudflareの「自動HTTPS書き換え」機能を使えば自動的に修正可能

京谷商会ではCloudflareの「自動HTTPS書き換え」を全サイトで有効にしています。これにより、HTMLレスポンス内のHTTPリンクがCloudflareのエッジで自動的にHTTPSに書き換えられるため、ソースコードを修正する必要がありませんでした。特にクライアントサイトの移行時にこの機能は大きな助けになりました。

ステップ4: 各種設定の更新

  • Google Search Consoleにhttps版のプロパティを追加
  • Google AnalyticsのデフォルトURLをhttpsに変更
  • サイトマップのURLをhttpsに更新
  • 内部リンクをhttpsに修正

HSTS(HTTP Strict Transport Security)

HSTSは、ブラウザに対して「このサイトには常にHTTPSでアクセスすること」を指示するセキュリティヘッダーです。

Strict-Transport-Security: max-age=31536000; includeSubDomains

Cloudflareでは、SSL/TLS設定画面からHSTSを簡単に有効化できます。

京谷商会では全ドメインでHSTSを有効にしています。includeSubDomainsを指定することで、18のサブドメインポータルすべてに一括でHSTSが適用されます。

注意: HSTSを有効にすると、HTTPに戻すことが困難になります。SSL証明書の管理体制が整っていることを確認してから有効化してください。Cloudflareを使っていれば証明書の自動更新が保証されるため、安心してHSTSを有効化できます。

TLS 1.3の重要性

TLS 1.3は最新のTLSバージョンで、以前のバージョンと比較して以下のメリットがあります。

  • ハンドシェイクの高速化: 接続確立に必要なラウンドトリップが1回に削減
  • セキュリティの強化: 古い暗号スイートが廃止
  • 0-RTT再接続: 以前接続したサーバーへの再接続がさらに高速

Cloudflareでは、ダッシュボードからTLSの最低バージョンを設定できます。京谷商会ではTLS 1.2を最低バージョンとして設定し、TLS 1.3での接続を推奨しています。古いTLS 1.0/1.1は脆弱性があるため、無効化が推奨されます。

SSL導入のコスト比較

方法初期費用年間費用管理負荷
有料SSL証明書(単一ドメイン)0円〜数万円数千円〜数万円年1回の更新作業
有料SSL証明書(ワイルドカード)数万円数万円〜十数万円年1回の更新作業
Let's Encrypt無料無料90日ごとの自動更新設定
Cloudflare SSL無料無料完全自動(管理不要)

京谷商会は20以上のドメインを運用しています。仮に有料SSL証明書を使っていたら、年間数十万円のコストがかかっていたでしょう。Cloudflareに移行したことで、このコストが完全にゼロになりました。

まとめ

HTTPS化は現代のウェブサイトにとって必須の対策です。セキュリティ、SEO、ユーザーの信頼——すべての面でHTTPSは「やるかやらないか」ではなく「やらなければならない」基本要件です。

京谷商会は20以上のドメインをCloudflare SSLで管理し、証明書の発行・更新を完全に自動化しています。かつてはLet's Encryptの証明書更新に追われていましたが、Cloudflareへの移行後はSSLに関する運用作業がゼロになりました。中小企業にとって、Cloudflareは最もコストパフォーマンスの高いSSLソリューションです。

DNS設定の基礎知識CDNの仕組みと合わせて、安全で高速なウェブサイト運用を目指しましょう。