常時SSL Lab.の「実践術」では前回、代表的なCMSツール「WordPress」で構築されたWebサイトの常時SSL化をご紹介しました。
今回は、代表的なネットショップ構築パッケージ「EC-CUBE」の常時SSL化を取り上げます。
EC-CUBEは、株式会社ロックオンがオープンソースとして公開しており、ECモールやショップASPにはない拡張性などが魅力ですが、プログラムの設置やセキュリティ対策は、ネットショップの運営者自身で行う必要があります。
ネットショップはパスワード、クレジットカード番号をはじめとした機密情報を取り扱うため、通常のWebサイト以上に安全性が求められます。
通信経路上に潜む改ざん、盗聴などのさまざまなリスクから利用者を守るために、常時SSL化は必須のセキュリティ対策であるといえるでしょう。
もし現在、「http://」で始まるURLでEC-CUBEを運用している場合は、本ページでご紹介している方法で、常時SSL化を実施しましょう。
まずは、EC-CUBE 3.0.x系での手順、次回は2.13.x系での手順をご案内します。
事前準備
実際の作業に入る前に、以下の内容を確認しておきましょう。
EC-CUBEを最新の状態に
EC-CUBEの本体、プラグイン、デザインテンプレートなど、更新可能なものはすべて適用しておきましょう。
EC-CUBEは、重大な修正を含むセキュリティFIXが時折リリースされていますので、定期的に公式サイトなどをチェックしておくと良いでしょう。
必ずバックアップを
作業中にトラブルが発生してもすぐに切り戻しができるように、EC-CUBEで公開しているネットショップのファイル/データベースのバックアップを実施しておきます。
EC-CUBEのプログラムファイルをFTPでダウンロードしたり、データベースをphpMyAdminやphpPgAdminなどでエクスポートしておきます。
SSLサーバー証明書の購入/設定
常時SSL化にあたり必要なSSLサーバー証明書の購入や導入方法、Webサイトのドキュメントルートの設定手順などを確認しておきましょう。
HTTPとHTTPSのドキュメントルートが固定のディレクトリ以外に設定できないなどの場合は、ファイルの移動などの作業が別途必要になります。
留意すべき点
常時SSL化の際、Google系のツールは設定の変更や再登録が必要なものがあります。
以下の記事を確認しておいてください。
EC-CUBE 3.0.x系の常時SSL化の作業
ファイルの移動やドキュメントルートの設定
ネットショップを公開しているサーバーの仕様により作業が変わります。
【HTTPとHTTPSのドキュメントルートが異なるサーバーの場合】
HTTPとHTTPSのドキュメントルートを固定のディレクトリ以外に設定できない場合や、運用の理由で異なるディレクトリに設定して動かせないなどの場合、HTTPで公開しているEC-CUBE関連の全ファイルをHTTPSのドキュメントルートにFTPなどでコピーします。
【ドキュメントルートが自由に設定できるサーバーの場合】
HTTPとHTTPSのドキュメントルートを同じディレクトリに設定します。
CSSやデザインテンプレート/プラグインなどのファイルの見直し/修正
CSSやデザインテンプレートの各ファイルを自作している場合、内部のパスの記述が「http://」になっている箇所は、「https://」に修正します。
外部のデザインテンプレートやプラグインはHTTPSに対応しているか確認しておき、調整が必要な場合は事前に実施しておきます。
EC-CUBE 管理画面での設定
EC-CUBEの管理画面に「https://」のURLでアクセスします。
URLの「http://」をそのまま「https://」に変更するだけでアクセスでき、ログインID/パスワードも同じものを入力してログインします。
管理画面にログインできたら、「設定」→「システム情報設定」→「セキュリティ管理」にアクセスします。
「サイトセキュリティ設定」の項目で「SSLを強制」にチェックを入れ、「設定」ボタンをクリックします。
ちなみに、「http://」のURLでも管理画面にアクセスできますが、「サイトセキュリティ設定」の項目にはエラーメッセージが表示され、「SSLを強制」も選択できません。
完了メッセージが表示されたら、ネットショップの常時SSL化は完了しています。
「http://」でアクセスしても「https://」に自動的に転送されるようになります。
ファイルの削除
HTTPとHTTPSのドキュメントルートが異なる場合のみ、常時SSL化の作業が全て完了したら、HTTPのドキュメントルートのEC-CUBE関連のファイルを削除します。
削除後に「.htaccess」ファイルを設置して、HTTPへのアクセスをHTTPSに301転送します。
Webサイト利用者やGoogleを適切にHTTPSに誘導する方法
EC-CUBE関連のファイルをそのまま置いていても挙動に問題は出ないのですが、前述の通りセキュリティFIXが時折リリースされているため、セキュリティホールとなり得る可能性があるものは、なるべく削除しておくことが望ましいでしょう。
Webサイトのチェックやエラーへの対処
常時SSL化が完了したつもりでも、プラグインなどが原因で、WebブラウザがSSLに関するエラー(「Mixed Content」など)を表示して、HTTPSで正しく接続できていないケースがあります。
Webブラウザのアドレスバーの左端が鍵マークなどになっていない場合は、以下のページを参考に、エラーの原因と対処を実施してみましょう。
この記事のポイント
- サーバーの仕様や現在の状態により、必要な作業が異なる場合があります。
- EC-CUBEの常時SSL化は、管理画面で設定します。
- Webサイトの表示やエラーのチェックを必ず実施しましょう。