常時SSL化について少し素人が駄弁る

2022年6月17日

常時SSL化は独自SSLのインストールだけじゃない
適当な説明ですので 間違っていれば ご一報いただけると 泣いて喜びます(真顔で)
※言いたいこと言ってるだけ 為になる(理想)ようでならない(現実)

概要

HTTP→HTTPS リダイレクトを確実に
更に記事内のURLを全てhttps://に
無料SSLは3種類ある

これらはいわばマナーでありますので 可能な場合はお願いします インターネットの印象に繋がる部分なので今一度自分のサイトを見直してみてください(切実)

これだけ

常時SSL化

常時SSL化とは読んで字の如く

常にどんな時もSSLを用いた通信を行う(行える)ようにする(化す)

具体的には

  1. ウェブサーバーへSSLをインストール(レンタルサーバーなら大方自動インストール自動更新機能があります。)
  2. http://でのアクセスを問答無用でhttps://へリダイレクト
  3. 全てのページ内にあるURL(JavaScript・CSS・画像や他ページ他サイトへのリンク)をhttps://から始まるURLのみに
  4. WordPressの場合は 設定 > 一般 からアドレスの変更。(これは設定されたアドレスにリダイレクトされるためです。)

これらが必要です

一つでもhttp://から始まるURLが記述されている場合 錠(じょう)マークが付きません ちゃんと施錠( ? )されるよう頑張りましょう

http://→https://リダイレクト(301リダイレクト)の方法

方法としてはこの3つが挙げられます

  • .htaccess
  • httpd.conf
  • PHP

ドメイン問わず編集せずそのまま使えます!

.htaccess

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /

  # HTTP → HTTPS
  RewriteCond %{HTTPS} off
  RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>

httpd.conf

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

PHP (少ページの場合)

<?php
if (empty($_SERVER['HTTPS'])) {
    header("Location: https://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}");
    exit;
}
?>
PHPコード引用元

DVSSL・無料SSLで信頼は得にくい

SSLとはクライアント(ブラウザ)とサーバー(ウェブサイト)の通信を保護するもの
通信内容を第三者に見られないように暗号化するものです

情報を安全に相互的にお届けしますよ ということです

つまりこれ厳密には 通信のみが安全 サイト側のコンテンツが安全かどうかは運営者次第

有料DVSSLと無料SSLの違いはほぼ無い

DVSSL(DomainValidation |ドメイン認証)

ドメインの所有者であることを確認されている という認証書です

つまり このサイトはドメインの所有権が確認されているよ ということ

しかしドメインは(co.jp ne.jp ad.jp等を除いて)誰でも登録可能なため
所有者の保証がありませんので

信頼を得たい場合コンテンツの正確性等で安全を自ら証明する必要があります(主に著作権 肖像権等に気をつければ問題になることはないと思います)

DVSSL例を無料・有料各3つ紹介します、下記表をご覧ください

一般名称 [公式サイトURL]中間認証局ルート認証局価格
Sectigo [https://comodo.jp/]RSA Domain Validation Secure Server CASectigo有料
GlobalSign [https://jp.globalsign.com/]GlobalSign GCC R3 DV TLS CA 2020GlobalSign有料
DigiCert [https://www.digicert.com/jp/]DigiCert SHA2 Secure Server CADigiCert有料
一般名称 [ 公式サイトURL ]中間認証局ルート認証局価格
GoGetSSL [https://gogetssl.com/]GoGetSSL RSA DV CASectigo無料
Let’sEncrypt [https://letsencrypt.org/jp/]R3,Let’s Encrypt Authority X3DST Root CA X3無料
ZeroSSL
[https://zerossl.com/]
ZeroSSL RSA Domain Secure Site CASectigo無料

両者の違い

認証書の利用可能な期限が違う

無料は 3ヶ月
有料は 1 年
という違いがあります

なぜ無料は期限が短い(3ヶ月しかない)のか

無料SSLは全てにおいて3ヶ月のみです
なので3ヶ月毎の更新が必要です
それにはちゃんとした理由があります

  • DVSSLは信頼度が低い
  • その上無料なので更に下がります(これは気持ちの問題が大きい)

そのため3ヶ月毎に確認を取ることによってドメイン所有者が存在することを証明しています


レンタルサーバーなら殆どで無料SSLが自動発行・更新されるためほぼ気ににする必要はありません
ただ自宅サーバー、VPSサーバーではCronなど少し面倒な作業が必要ですので効率を考えると有料も考えることでしょう

SNSやECサイト等のウェブサービスの場合は注意

多くのブログ・サイトなら十分ですがECサイト等のウェブサービスを運営する場合は話が別物です。

  1. サービス提供のため個人情報を保持する必要があるサイト(SNS)
  2. クレジットカード等の取引をする必要のあるサイト(ECサイト)

こちらに該当する場合は次に紹介する OV認証書 もしくは EV認証書が好ましいでしょう

その他(OV,EV)

OV(OrganizationValidation | 企業認証)

企業の法的実在を証明するものです

DVSSL(DomainValidation |ドメイン認証)に加え
このサイトの運営している企業が実在に存在するよ ということ

なので発行時にドメイン所有権確認に加え組織の法的実在性確認があります

なので自動的に個人の場合取得不可能です(※ただし個人事業主の場合は可)

そのため 法的に実在する企業が運営しているサイトであることが証明されます

EV(ExtendedValidation | 拡張認証)

こちらはDVSSL(DomainValidation OV(OrganizationValidation)に加え

審査ありのOV(OrganizationValidation)の上位互換と考えて問題ないです

企業の信頼が大きく試されます

・ウェブサイト所有者が運用上および物理的に実在しているだけでなく、法的実在性も確立されていること

・ウェブサイト所有者により、該当URLに対する排他的な制御が確立されていること

・ウェブサイト所有者のための作業者の同定と責任、および、責任ある役員によって署名された法的義務を伴う文書の確認

WIKIPEDIA

あとこういう情報は今さら聞けないようなことではありません 必要であれば聞くことは大事です。ただし節度を持った質問を心がけましょう。

今さら聞けないというより今さら聞きづらいだと思いますが 検索して知ろうとしている良識を持った人は聞けないということはないと思います。

情報社会において 情報を鵜呑みにしないことが何よりの安全対策です

誤解を招く表現 心配にさせる言葉遣いには十分注意しましょう!

けれど「今さら聞けない〇〇とは」 まぁ面白いですねw

最後に

全ての認証書で同程度の暗号化がされるため、OV EV認証書はあくまでもサイトが本物かどうか(サイトの信頼性)を証明するためのものです。

さらにWAF等でサーバー側のセキュリティも確保し安全なサイト作りに取り組んでいきましょう。