Magento
Magento2

Magento2での便利な無料エクステンション紹介

この記事はMagento Advent Calendar 2017の23日目の記事です。

今回の記事では、Magento2の便利なエクステンションを紹介していきたいと思います。

Magentoの特徴と言えば何と言ってもエクステンションを用いた拡張機能です。

Magentoに引き続き、Magento2でも数えられないくらい数多くのエクステンションが存在し、その数はこれからもどんどん増えていくと予想されます。

そんな数あるエクステンションの中には、無料のものから有料なもの、はたまた便利なものからエラーばかり出して業務の邪魔をしてくるものまで様々です。

そういう訳で利用者サイドには、とりあえず便利そうだからこのモジュールを入れてみるという精神ではなく、このモジュールはしっかりと動作するのか、他のモジュールに悪影響を及ぼさないのかといったようなモジュールを見極める目が必要とされてくると考えられます。

そこで今回はMagento2に存在する無料でかつ便利で高性能なエクステンション(ver.2017)を一部、使用方法を交えながら紹介していきたいと思います。

今回紹介するのはMageSpecialistさんの提供するセキュリティエクステンションの中から個人的に使いやすいと感じたエクステンション2つを紹介したいと思います。


  • MSP reCaptcha

  • MSP AntiVirus

1. MSP reCaptchaの紹介

まず最初にオススメしたいのが、MSP ReCaptchaというエクステンションです。

こちらのモジュールは不正アクセスを防止するためのreCAPTCHA機能を簡単な設定でMagento2に組み込むことができるという優れものです。

1.1. MSP_ReCaptchaのインストール

こちらのモジュールはcomposer用いて容易にインストールすることができます。

$composer require msp/recaptcha

MSP_ReCaptchaがvendor下に配置されたら、以下のコマンドを使用して、モジュールを有効化してあげます。

$php bin/magento module:enable MSP_ReCaptcha
$php bin/magento setup:upgrade

1.2. Google reCaptchaの設定

このモジュールではGoogleの提供するreCaptchaを使用するため、事前にGoogleのreCAPTCHA登録ページに、使用しているwebサイトのドメインを登録しておきます。

その際に表示される以下の二つのキーは後にMagentoの設定の際に使用するのでメモしておきましょう。
・Google API website key
・Google API secret key
スクリーンショット 2017-12-23 18.06.33.png

1.3. MSP_ReCaptchaの設定

モジュールの有効化・Google reCaptchaの登録が終わったら、Stores > Settings > ConfigurationからGoogle reCaptchaを選択し、reCaptchaの設定を行っていきます。

Generalの部分にはさきほどGoogle reCaptchaで登録した際に表示された二つのキーを入力してあげます。
スクリーンショット 2017-12-23 15.03.46.png

Backendを有効化すると管理画面のサインイン時に下の画像のようにロボットを使用した不正アクセスを防げるようになります。
Magentoの管理画面がユーザー名とパスワードだけで入れてしまうことを心配に思っていた人もこれで安心です。
スクリーンショット 2017-12-23 17.47.24.png

また、フロントエンド側で有効化すると、以下の状況でreCaptcha機能が作動するようになっています。
・ログイン時
・顧客登録時
・コンタクトフォーム送信時
・パスワードを忘れた時

スクリーンショット 2017-12-23 17.47.51.png

以上のようにこのモジュールを使用することで簡単な設定で、MagentoにreCaptcha機能を組み込むことができます。
プログラムによる総当り攻撃等はECサイトにとってはとても脅威になります。
特に管理画面には細心の注意を払う必要があるため、このような少ない工数でユーザビリティもあまり損なわずにセキュリティ対策ができるこのモジュールは大変便利だと感じました。

2. MSP AntiVirus

引き続き、二つ目に紹介したいエクステンションはMSP AntiVirusというエクステンションです。

このエクステンションはClam AntiVirusというオープンソースで提供されているクロスプラットフォームなアンチウイルスソフトウェアを、Magentoと連携させることができるという優れものです。

2.1. MSP AntiVirusのインストール

こちらのエクステンションも同様にcomposerから容易に入れることができるようになっています。

$composer require msp/antivirus

エクステンションのダウンロードが終わったら、コマンドを用いて有効化していきます。

$php bin/magento module:enable MSP_AntiVirus
$php bin/magento setup:upgrade

2.2. ClamAVアンチウイルスソフトウェアのインストール

ClamAVがサーバー上に入っていない場合は同様にインストールしてあげます。

・debian/ubuntu

$sudo apt-get install clamav-daemon clamav-freshclam

・centOS

$sudo yum -y install clamav-server clamav-data clamav-update clamav-server-systemd

2.3. MSP AntiVirusの設定

MSP AntiVirusのインストール、ClamAVソフトウェアのインストールが終わったら、Magentoの管理画面から設定していきます。
EnableをYESに変更し、 ClamAV socketを適宜自分の環境に合わせて調整してあげます。Ubuntuサーバーのデフォルト設定を使用されている方であれば下の画像の表示の設定で問題ないと思われます。

設定完了後,TEST CONNECTIONをクリックして画像の上部に記載されているConnection establishedが表示されたら設定は完了です。
スクリーンショット 2017-12-23 18.37.56.png

2.4. 動作確認

全ての設定が完了したら、動作確認を行っていきます。
EICARというテスト用のマルウェアが存在するので、そちらを利用して動作チェックを行います。

EICAR is a "fake malware" designed to test anti virus systems: http://www.eicar.org/

MagentoのPOSTフォームであればどこでもチェックされるようになっていますが、今回はユーザーログインのパスワード入力欄にこちらの文字列を入力します。

X5O!P%@AP[4\PZX54(P^)7CC)7}\$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

スクリーンショット 2017-12-23 18.47.23.png

入力が終わったらSign Inをクリックしてみましょう。エクステンションが正しく動作していれば以下のような画面が表示されます。
スクリーンショット 2017-12-23 18.46.28.png

EICarというテスト用マルウェアが検出されていることが確認できると思います。

本番稼働中にこのような画面を表示させたくないという方は、コンフィグ画面からStealthモードをYESにしておくことで、さきほどの赤い警告画面の変わりに500 Internal Server Errorを表示させることも可能です。
スクリーンショット 2017-12-23 18.57.20.png

まとめ

以上でMageSpecialistさんが提供しているMagento用セキュリティエクステンションの紹介を終わります。

ECサイトに限らず、どのようなWebサービスにおいてもセキュリティという分野は大変重要な部分になるかと思います。大切なお客様の情報を守るためにもしっかりとした対策を施していきたいものです。

MageSpecialistさんの提供しているセキュリティエクステンションは今回紹介したエクステンション意外にもあるので、興味のある方はこちらを確認してみることをオススメいたします。