エックスサーバーで運営中のこのブログを無料でHTTPS化してみた(その1)

やわなべです。

以前からもグーグルはセキュアな暗号化されるHTTPSによるサイトの配信を推奨してましたが、先日、少し語気を強めたアナウンスがあったようです。

Google ウェブマスター向け公式ブログ: HTTPS ページが優先的にインデックスに登録されるようになります

具体的には、HTTP ページに対応する HTTPS ページのクロールを開始します。これは、対応する HTTPS ページがどのページからもリンクされていない場合にも対象となります。同じドメインの 2 つの URL が同じコンテンツを掲載していると思われ、かつ、両者が異なるプロトコル スキームで配信されている場合、通常、以下の条件を満たしていれば HTTPS URL を選択してインデックスに登録します。

Googleのボットがwebサイトをクロールする時に、サイトがHTTPS化されているかどうかを勝手にチェックして、HTTPSでもHTTPでも同じ内容が配信されてる、と判断した場合は、前者をインデックスに載せるよ、ってことですね。

Twiiterなどで飛び交う情報の中には「同じような内容のサイトであれば、セキュア化されている方が順位的に有利」みたいな解釈してる方も見かけましたが、そんなこと書いてませんよね。まあ、そのうちそうなるのかもしれませんが。

で、今、このブログで使ってる「エックスサーバー」でSSLって対応してるのかしら、と少し確認してみたら、

ss29356.png

なんと、12/25までに申しこめば初年度無料のキャンペーンやってるじゃないですか。(追記:その後、初年度無料キャンペーンの申し込み期限が2016年3月末まで延長されたようです。)

本格的に使うかどうかはともかく、とりあえずこの機会に申し込むだけ、申し込むことにしました。

あ、ちなみにこのエントリー見ながら今すぐやってみようという方、途中トラップめいた箇所がありますんで、先にひととおり目を通されることをおすすめします。

スポンサーリンク

CoreSSLでywnb.netをSSLに

キャンペーン中のSSLは「CoreSSL」というブランド。キャンペーンでなくても年間1000円でつかえる格安SSLなんですが、12/25 2016年3月31日 18:00までに申込むと、初年度は無料で使える。というわけで、この「ywnb.net」をHTTPSにしてみようかと思い立った次第。

ss29481.png

申し込みは「インフォパネル」から行います。いつもドメインやらデータベースなどの設定をしてる「サーバーパネル」ではないのでご注意を。「契約関連」メニューの中の「追加のお申し込み」を選んで、

ss29492.png

「SSLの新規取得」という項目を選びます。

ss29589.png

CoreSSLの「SNI SSL(ネームベース)」の1年プランを選択。

次に、どのドメインに適用するかを選ぶのですが、ここで少し注意事項が。

ss29553.png

SSLを適用させたいドメインが「www.」から始まるドメインの場合は、申請も「www付き」で申請する必要があります。(その場合 wwwなしでも利用できる)

逆にwwwなしで申請すると、「www」つきのドメインでHTTPS通信を使うことはできません。私は「www.ywnb.net」を使わず、wwwなしドメインに転送させているので

ss29529.png

wwwなしで申請しました。

CSR申請内容の入力

ss29671.png

次に、CSR(認証局に提出する署名リクエスト)に必要な事項を入力します。CoreSSLの場合、ドメインのWhoisのように組織名などの情報が、証明書情報として公開されることはありません。

ss29709.png

続いて登録者の担当情報の入力、これはCoreSSLに申請する担当者の情報で、これも証明書通じて外部に公開されるものではありません。

ss29773.png

最後に、ちゃんとドメインの持ち主からの申し込みかどうかの認証方法という項目があるんですが、ここでつまづきました。

注意:認証に先方指定のメアドが必要

CoreSSLでは認証方法として、「DNS認証」と「メール認証」のいずれかが選べます。もし、「ywnb.net」のDNSとして、エックスサーバーのDNSサービスを使っていれば、それでもう認証クリアなようです。

が、あいにく私はドメインを取得した「VALUE DOMAIN」のDNSを使ってるんですよねー。

じゃあ、メールで認証を…と思ったら、なんと先方指定のアカウント名でメールを受け取る必要があるとのこと。

ss29777.png

この中のどれか。一応、問い合わせフォーム用に「@ywnb.net」のメアドはありますけど、ここで指定されたようなのはありません。とういわけで、ここで一旦作業中断。ブラウザの別タブで「サーバーパネル」を開いて、これだけのためにアカウント1個作りました。

もし「メールはGmailしか使ってない」という方は、DNSをエックスサーバーに変えた方が早いでしょうね。認証が終わったら元に戻してもいいですし。

Validation Codeで認証

で、戻ってきて、先のフォームを送信すると、作ったばかりのメールアカウント宛に承認メールが届いてました。

ss30302.png

メールに書かれてるのは承認用のURLと、「Validation Code」という確認コード。クリックした先のURLでこのコードを入れたらいいっぽい。

ss30353.png

クリックすると、認証コードを入れる画面が出てきました。メールにあったコードをコピペして送信すればOKです。

30分でサーバー設定完了

で? こっからどうすればいいのかしら。

エックスサーバーのマニュアルを見たら「認証局の審査に数日かかる場合もある」ってあったんで、じゃあ続きは正月仕事かな、なんて思ってたら、30分もたたずにエックスサーバーからメールが来ました。

ss31826.png

なんと、もうサーバーへの設定作業まで終わったみたいです。完全に自動化してますね。やっぱすげぇわ、エックスサーバ。

ただ反映には30分ほどかかるとのことで、すぐに「https://ywnb.net」を叩いても、

ss31838.png

Chromeだとこのようにエラーとなります。というわけで、ここで一旦ブレイク。

SSL化はできたものの…

はい、戻ってまいりました。再度「https://ywnb.net」でアクセスしてみると、

ss36278.png

おお、今度は、httpsでこのブログが表示されました。

ただ、URL右にある盾のマークを押すと、

ss32550.png

承認されていないソースからのスクリプトを読みこもうとしてます」なんて文言が。

さらにURL左のマークをクリックすると

ss33057.png

「証明書の透明性に関する情報がサーバーから提供されませんでした」

「ywnb.net への接続は古い暗号スイートにより暗号化されています。加えて、このページには安全でない他のリソースが含まれています。」

なんてメッセージが。大丈夫か?かえって不審なサイトに思われるんじゃないのか?

本格利用にはいろんな壁が

まとめると、エラーっぽい警告は4つ。

1. 安全でない他のリソースが含まれている
2. 証明書の透明性に問題あり
3. 古い暗号スイート使ってる
4. 承認されていないソースからのスクリプトがある

このうち2と3については証明書の質の問題なんで、たぶんこちらで対処はできないでしょうね。

残りの、1と4については、外部サーバーから読み込んでる画像やスクリプトへの警告です。実際、ChromeのJavaScriptコンソールを表示させてみると、

ss32614.png

このように「HTTPSで呼び出してるのに外部からHTTPで配信されてるCSS/画像があるよ」、という警告がわらわらと。

これから予定があるので、一旦ここまで。上のエラーについてはこれからじっくり対処していくことにしますが、今のところ、

ブログのHTTPS化の最大の障害はアフィリエイト系のタグだ

とだけ申しておきましょう。では。

エックスサーバー