Let’s Encryptで当ブログを常時SSL化しました/cPanel

ウェブ全体でサイトの常時SSL化が加速しています。これは、Googleが検索でSSL通信を行うサイトを検索結果で上位表示させると明言したのが大きな要因になっています。今時は、検索で上位に出なければ、誰も見に来ないわけですから、誰でも検索結果で上位に表示されたいと思っています。

このような状況を背景に当ブログもSSL化を実施することにしました。訪問者は読むだけなので、特にSSL通信は必要ないのですが、ブログの管理人としては、SSL通信なしでブログの運営をすることはちょっと気がかりなので、この選択でよいと思っています。

SSL通信のデメリットは、表示が遅くなることですが、最近のサーバーは表示速度が非常に速いので、ほとんど問題にならなくなってきた様です。実際、私も変化を感じられません。

SSL化にはLet’s Encryptと言うサービスの存在が大きいです。何しろ無料ですから、個人サイトにはありがたいサービスです。有料のSSL証明書はとても高価で、個人ではまず手が出ません。ブラウザーのロケーションバー(URLが表示されるところ)の左端に緑色の鍵マークが出るというだけのことのために毎年何万円も払いたいという個人はまずいません。だからSSL化は、企業サイトだけで普及してきました。しかし、今や無料で簡単にできるので、個人サイトもSSL化すべき時代になったと言えます。

しかし、Let’s Encryptなどの無料のSSL証明書は、どのサーバーでも使えるわけではありません。やっても、だめなサーバーが多いと思います。従って、Let’s Encryptを利用したい方は、まずサーバーが対応しているかサポートに聞いてみる必要があります。ヘルプに載っている場合もあります。

このブログは、世界標準のcPanelと言うサーバー管理ソフトを使っていて、最近、cPanelがLet’s Encryptに対応したため、このブログでもLet’s EncryptのSSL証明書による暗号化通信が可能になりました。

日本にはcPanelを使っているサーバーはほとんどないので、サーバー会社に対応の状況を聞いてみる必要があるわけです。大半のサーバーは、2017年8月現在、未対応の様ですが、おそらく1年以内に急速に普及するでしょう。対応させなければ、既存のユーザーに逃げられるし、新しいユーザーを獲得することはほとんど不可能だからです。

当ブログは、海外のサーバーで運用していて、cPanelを使っているため、早々にSSL化することになりました。

さて、SSL化のメリットというのは、検索結果以外にもあります。それは暗号化通信が行われるため、通信を盗聴されることによって、IDやパスワードが漏洩する可能性がないことです。逆に、このブログの読者の方のように、単に読んでるだけで、パスワードでログインをする必要のない様な場合は、メリットは全くありません。IDやパスワードを入力しているのは、管理人の私だけなので、SSL化のメリットは私にしかありません。

ちなみに、一、二年前、ホームページの制作会社に勤める人と個人サイトや個人ブログのSSL化について議論したことがありますが、SSL化は不要という結論になりました。個人サイトや個人ブログを盗聴に来る暇な方はまずいません。だから、Let’s Encryptが使えないサーバーを利用しているからと言って、それほどあわてる必要はありません。

cPanelでのLet’s Encryptの使い方ですが、すでにブログをインストールして使っている場合は、「Security」の中にLet’s Encryptの項目が独立して存在していますので、これをクリックして進めばいいです。Let’s Encryptの証明書がインストールできたら、WordPressの設定の方でURLをhttpsに変更しておきます。そして、下記コードを.htacceessに追加して、httpからhttpsへ自動的に転送されるようにしておきます。

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

追加する場所は、WordPressの設定の上あたりがよいと思います。IPの許可/禁止の設定がある場合は、その後になります。

はじめてWordPressをインストールする場合は、WordPressのインストールの際にインストール先としてhttpsを指定すれば、自動的にLet’s EncrpytのSSL証明書も一緒にインストールされますから、簡単そのものです。

サイトを確認してみると、鍵マークに「!」がついていることがあります。これはSSLが不完全という意味です。これを回避するには、各記事やウィジェットに貼り付けてある画像などのURLをhttpからhttpsに変更する必要があります。当ブログのように記事が少なければ、一つ一つ手で書き直せばいいです。大量にある場合は、何らかのツールが使えれば楽ですが、幸いにも私はそのような悲惨な事態には至りませんでしたので、何とかしたい場合は、ご自分でお探しください。まあ、これは放置しておいても、特に問題はありません。

[ Let's Encryptで当ブログを常時SSL化しました/... ]インターネット2017/08/10 21:30