一つ前の日記へ一つ前へ |  目次へ   | 次の日記へ次の日記へ

のぼみ~日記2018


2018/07/22

WEBサイトの常時SSL化


僕がtanupack.comというドメインを取ったのは1998年7月のこと。当時はまだドメインというものが周知されていなくて、日本では一流企業や行政でさえWEBサイトにはプロバイダのドメインを使っていたくらいだった。
ネットもまだアナログのダイヤルアップ回線接続があたりまえで、モデムをパソコンにつないでピーガーとやっていた。ISDNが出て、おお、速い! なんて感動したけれど、動画をリアルタイムで見るなんてとんでもなくて……という時代を経て……今はスマホ時代。
そんな中、Googleのセキュリティ・プロダクトマネージャーであるEmily Schechter氏が、Googleのブログで、「WEBブラウザChromeは、2018年7月に出すバージョン68から、https//:ではないWEBサイトすべてに「not secure」と表示させる」と発表し、IT業界を騒然とさせた。
Beginning in July 2018 with the release of Chrome 68, Chrome will mark all HTTP sites as “not secure”.
Google Security Blog 「A secure web is here to stay」。 February 8, 2018)

これを書いている7月24日現在、僕が使っているChromeのバージョンを確認したら、バージョン: 67.0.3396.99 だった。まだぎりぎりバージョン68にはなっていない。
で、バージョン67の段階ではどう表示されているかというと……

↑こんな感じで i のマークが出ていて、この i マークをクリックすると……↓


↑こんな警告が出る。

これが次のバージョン68からは、最初から、

↑こんな感じになるらしい。(現在のバージョンでもシークレットモードでは最初からこういう表示になる)

これを回避するには、SSL証明書というのを取得して、http ではなく https というSSLで暗号化したプロトコルで接続させる必要があるのだが、SSLは比較的新しい技術だから、少し前のサーバーでは簡単には仕様変更できなかったり、SSL証明書がとんでもなく高額で販売されていて、おいそれとは手を出せなかったりする。

ちなみに、こういうことを指導する立場のトップであろう総務省のWEBサイトは、Googleの検索で「総務省」と入れるとhttps ではなく http の暗号化されていないWEBページが表示される↓。

Google検索で「総務省」と入力した結果


で、そこにアクセスした後に、このURL www.soumu.go.jp の前に https:// をつけて接続すると、接続はするものの「ページが存在しません」と表示されてしまう↓。

どういうことなのだろうか?

SSL証明書ビジネスの怪しさ

WEBサイトのSSL化にあたっては、ドメインに対するSSL証明書というものがまず必要になる。
ドメイン所有者の信頼度を審査するのが「認証局」という組織で、シマンテック(昨年デジサートにSSL部門を売却)、GMOグローバルサインなどが知られている。
しかし、この証明書がバカ高い。
セキュリティソフトで有名なシマンテック社のSSL証明書を例にとれば、一般的な企業・団体向けの「セキュア・サーバID」は¥87,480/年。審査が厳しく、最も信頼度が高いとされる「グローバル・サーバID EV」は¥236,520/年(いずれも定価。提携サーバー会社などを介すと割引価格になる)だった。
この値段の差は、ドメインを所有する企業・団体の信用調査が厳しいほど高いお値段に設定されている。
しかし、その信用度は、あくまでも「所有者が企業や団体として信頼できるとお墨付きを与える」意味合いであって、サイトへの接続プロトコル(SSL技術)に差はない。つまり、高い証明書だとクレジットカード情報を送信したりする際に信号が盗み読みされる危険性が減るというわけではないのだ。多分、企業のIT担当者あたりでもこのへんを誤解して「高い証明書ほど安全で強固」だと思い込んでいるのではなかろうか。
そもそも企業向けのSSL証明書は個人事業者などは取得できない。個人でも取得できるGMOの「クイック認証SSL」だと\34,800/年(定価)だが、これでも高い。
そこで、ドメイン所有者が無料でSSL接続を利用するための「無料SSL証明書」を発行する「Let's Encrypt」というものも登場した。
これは Internet Security Research Group (ISRG) というアメリカの公益法人が作ったもので、書類審査などは一切せず、WEBサーバに組み込まれたソフトウェアが自動的にドメインに対してSSL証明書を紐づけして発行するというシステム。あっというまに手続きが完了する。
個人業者などにはとてもありがたいシステムなのだが、少し古いサーバーへはソフトウェアが組み込めなかったりもするようで、サーバを選ぶSSLでもある。

シマンテック系SSLをGoogleやMozillaが「認めない」という事件

かくのごとく、SSL証明書のグレードの差には疑問を抱かざるを得ないのだが、なんと、2017年9月、Googleは自社のブログで、シマンテック社系SSL証明書は信頼しないことにする、と発表した。
具体的には、2016年5月以前に発行された証明書は Chrome Ver.66から、2016年6月以降に発行された証明書も Chrome Ver.70から信頼されなくなるというのだ。
Starting with Chrome 66, Chrome will remove trust in Symantec-issued certificates issued prior to June 1, 2016. Chrome 66 is currently scheduled to be released to Chrome Beta users on March 15, 2018 and to Chrome Stable users around April 17, 2018.
(略)
Additionally, by December 1, 2017, Symantec will transition issuance and operation of publicly-trusted certificates to DigiCert infrastructure, and certificates issued from the old Symantec infrastructure after this date will not be trusted in Chrome.
(Google Security Blog 「Chrome’s Plan to Distrust Symantec Certificates」September 11, 2017)

Googleに歩調を合わせるように、MozillaもFirefoxブラウザで同様の処置をすると発表している。

これに該当するシマンテック系SSLは、シマンテック本社だけでなく、傘下にあったジオトラスト(GeoTrust)、RapidSSL、Thawteなどが発行したSSL証明書も含まれる。
シマンテック社はすでにSSL事業をデジサート社に売却している
デジサートへ売却後のシマンテック系SSL証明書については、GoogleもMozillaも信用するらしいので、問題となるのは、売却前(2017年12月以前)に発行されたSSL証明書らしい。

なんでこんなことになったかというと、シマンテックのSSL証明書発行事業をしていた一部のパートナー企業が不正なドメイン名を使って共有SSL証明書を発行するなどの商売をしていたことが発覚したからだ。SSL証明書が逆に犯罪に利用されかねない事態で、これを重く見たGoogleやMozillaスタッフが「シマンテック系SSLは信頼しない」という強硬姿勢に打って出たようだ。
面倒な手順を踏んで書類などを揃えて提出し、高額なSSL証明書を購入したにもかかわらず、こうしたトラブルに巻き込まれた企業はたまったものではない。証明書の再発行・再インストールという余計な仕事を増やされた上に、謝罪行脚させられたWEBサイト担当企業や担当技術者も気の毒だ。

「SSLビジネス」には当初から大いに疑問を抱いていた。巨大企業が簡単に倒産する現代で、どうやって企業や団体の「信頼性」を証明するというのか。多額の金を払えるなら信頼する、とでもいうのか。いや、まさにそういうビジネスだよなあ。

現代社会ではこういうことが日常茶飯になってしまった感がある。仮想通貨しかり、資格ビジネスしかり、補助金詐欺まがいの地方創生プロジェクトしかり。
本来、弱者を救済し、犯罪や不正に立ち向かうはずの(?)弁護士事務所さえ、こうした「合法的バーチャルビジネス」的な行為を助けるような仕事に群がっている印象がある。
「生き馬の目を抜く」って、こういうことをいうのかな。一生関わりたくない世界だが、ネットを切るわけにはいかないので、なんとか対応するしかない。

SSL接続させただけではまだダメだった


というわけで、うちではだいぶ前から通販関連のWEBページだけはSSL証明書を購入した上でSSL化して https:// で接続できるようにしていたのだが、これだけではChromeの表示が「i」のままだったことに気づいていなかった。
なんと、そのWEBページのhtmlソースに、http由来の画像やリンクが含まれているだけで、「安全が確立されていません」になってしまうのだ。
となると、リンクで結ばれている、自分が管理するすべてのWEBページをSSL化するしかない。
無料でできるLet's Encryptを利用するには、今のサーバーのままでは無理で、新型サーバーに移転しないとダメだという。しかし、数えてみると、組み込んでいるドメインだけで軽く50以上ある。WEBページの総数は数万ページある。なにせ1998年からずっと続いているんだから。
しかし、やるしかないかなあ……ということで、決断して、サーバーを移転し、すべてのドメインをSSL対応にした。
これだけではダメで、次に数万ページのhtmlの中にあるリンク先URLがhttp://である記述(ほぼすべて)を全部https://に書き換えなければいけない。
なかなか認めてくれないので、原因はなんだろうとChromeの解析コンソールでhtmlソースを調べると、なんとGoogle検索窓のリンクがhttp://だったことが原因だった……なんて笑えないよねえ。「あなたのサイトにGoogleの検索窓をつけましょう」といわれてつけていたソースが、Googleが配布するWEBブラウザが「安全を確認できません」と警告する原因だったんだから。
さらには、本体htmlの中にはもうhttpという文字列はまったくないのに錠前マークが出ないページの原因を探っていくと、外部のスタイルシートにGIF画像読み込み先リンクがhttpになっていたため、というのはビックリした。そこまでやるか、と。
(具体的には、この日記では引用行(ブロッククオート)に  この小さなコーテーションマーク画像を使っているのだが、これのリンク先がhttpだったためだった。この小さな画像1つが原因だったとは……)

そんなこんなで、ソースのあちこちを検証しながらテストの連続。もちろん、書き換え作業を手作業では到底できない。Devasという素晴らしいフリーソフトのおかげでなんとかやれた。
これらの作業に3日かかった。しかし、予想よりずっと早く終わった。30日くらいはかかるかなと思っていたのだ。
やれやれ。

それにしても、この時間とエネルギーロスはたまらないなあ。何も新しいことは生まれない。コンテンツは今まで通り。しかも、あちこちにリンク切れなどが生じた怖れがある。
まさにデジタルストレスの極み。

膨大なWEBページをドメインやフォルダごとに分けて、http://をhttps://に一括置換しているところ。もちろん、自分が管理している50ほどのドメインに全部SSL証明書をつけた後にやっている


結果、↑こうだったものが、↓錠マークがつくようになった




一息入れよう……と空を見る

そうそう、この日記が今年150ページ目の日記になった。この分だと、今年は300ページいかないかな。まあ、それで正常だね。





↑これは私の「遺言」です。大人にこそ読んでほしい



医者には絶対書けない幸せな死に方
「医者には絶対書けない幸せな死に方」(講談社プラスα新書)
内容紹介は⇒こちら

以下のいずれからでもご購入いただけます

Amazonで買う   hontoで買う    7ネットで買う  honyaclubで買う  bookfanで買う  LOHACOで買う  Yahoo!  楽天ブックスで買う



更新が分かるように、最新更新情報をこちらの更新記録ページに極力置くようにしました●⇒最新更新情報
  


一つ前の日記へ一つ前へ |  目次へ  | 次の日記へ次の日記へ

 
Kindle Booksbooks    たくきの音楽(MP3)music    目次へ目次    takuki.com homeHOME


Google
nikko.us を検索 tanupack.com を検索