WordPressは仕様上カンタンにログインに使えるユーザーIDを調べることができるため、度々ログイン攻撃のターゲットになってしまうことがあります。
そういった被害を防ぐために以下のような対策を施している方も少なくありません。
- ブルートフォースアタック対策
- Google reCaptchaを使った二段階認証
- 海外アクセス制限
こういったものが主流ですが、実は他の方法も存在し、それらを駆使することでよん段階認証を実現できます。他の方法も取り入れることでログイン攻撃の被害を受けにくくなり、貴重な情報資産である運営サイトが乗っ取られることもなくなるでしょう。
ログインを四段階認証にする方法
ログイン攻撃対策で使える小ワザは案外多かったりします。
すべての認証方式を取り入れれば、
- ログイン用ユーザー名とパスワードの両方が流出
- wp-adminフォルダアクセス用Basic認証情報も流出
したとしても不正ログインを防げるでしょう。
reCaptchaの導入
まず、真っ先に導入しておきたいのがログイン画面へのreCaptcha導入です。
reCaptchaとは「私はロボットではありません」の認証用チェックボックスのことで、プログラムによる自動操作を検知して不正なフォーム送信(ログイン認証)を防止してくれます。
ログインページにreCaptchaを追加したい場合は「Login No Captcha reCAPTCHA」プラグインを使うのがベストです。
導入したい場合、プラグイン新規追加ページから追加できるので「Login No Captcha reCAPTCHA」を検索してインストール・有効化しましょう。
有効化するとreCaptchaの設定をしてくださいとのアナウンスが表示されるので、[Clink here]をクリックして設定画面に移りましょう。
設定画面を開いたらサイトキーとシークレットキーを設定する項目がありますが、まだこれらのキーを取得していないのでreCaptcha作成ページでキーを取得します。
reCaptcha作成ページにアクセスしたら、以下の画像のように必要な項目を埋めていきます。
ドメインは、reCaptchaを設定するサイトのドメインを指定しますが、「https://」などのドメインとは関係ない文字が含まれているとエラーになるので注意してください。
項目を全て埋めたら[送信]ボタンを押します。
すると以下のようにサイトキーとシークレットキーが発行されますので、WordPressダッシュボードにてreCaptchaの設定を行いましょう。
それぞれ入力したら[Save Changes]をクリックします。
設定や入力内容が正しいとreCaptchaのプレビューが表示されます。
エラーが表示されていたりまったく表示されないという場合はreCaptcha設定時のドメイン設定が間違っているか、サイトキーとシークレットキーを正しく貼り付けていない可能性があります。
どうしても解決方法が分からないという場合はお問い合わせください。
reCaptcha導入をサポートさせていただきます。
Google Authenticator・Authyの導入
Google Authenticator・Authyとは30秒ごとに切り替わる6ケタのPINコードを使った二段階認証です。
メジャーなのはGoogle Authenticatorですが、利便性のことを考えるとAuthyのほうがおすすめです。
AuthyはGoogle Authenticatorと同じように使う事ができ、パソコンでも使用することができます。バックアップ機能も付いているので、バックアップコードを控えてなくて二段階認証を解除できない場合も安心です。
導入はとても簡単で「Two Factor Authentication」プラグインを使えば数分で導入が完了します。
まずはプラグイン新規追加ページで「Two Factor Authentication」を検索・インストールして有効化しましょう。
有効化するとダッシュボード左メニューに[Two Factor Auth]が追加されます。
Two Factor Authをクリックして設定画面に移動しましょう。
設定画面に移動すると6ケタのワードとQRコード、そしてプライベートキーが表示されています。
表示されているQRコードを二段階認証アプリで読み取って登録しましょう。
おすすめは先ほども言ったとおりAuthyです。PC・iOS・Androidいずれの端末でも利用可能です。
二段階認証アプリに登録したら、WordPress側で表示されている6ケタのコードとアプリ側で表示されている6ケタのコードが一致しているか確認しましょう(数秒のタイムラグがある可能性はあります)。
一致していたら正常に登録できています。
試しにログアウトしてログインしようとしてみてください。
ログインしようとする際に二段階認証コードが要求されるはずです。
二段階認証アプリの設定を紛失してしまってダッシュボードにアクセスできなくなった場合は、FTP接続でTwo Factor Authenticationプラグインが入ったフォルダを削除しましょう。
どうしてもできないという場合は当サイトが変わりにやらせていただきます。
Basic認証の導入
普通に導入しようと思うとサイトの構成ファイルを編集するため初心者には難しい方法ですが、WordPressならプラグイン一つで導入できます
まずはプラグイン新規追加ページで「HTTP Basic Auth」を調べてインストール・有効化しましょう。
有効化すると設定に[Basic Auth]が追加されているので、それをクリックして設定を開きます。
開いたら先頭の[HTTP Basic Auth]と[Login Page]にチェックを入れて設定を保存します。
これでログイン時にBasic認証が求められるようになります。
ユーザー名とパスワードはどこで設定するとかという話ですが、実は設定する項目はありません。
WordPressログイン情報とBasic認証のログイン情報が一致することはないだろうという心理を利用してこのような仕組みになっています。
ですが、2017年で更新が止まっている少し古めのプラグインであるほか、WordPressのログイン情報を使いまわしてるだけあって、Basic認証としてはやや脆弱です。セキュリティが気になる方は当サイトにお問い合わせください。
プラグインを使わずにより強力なBasic認証を導入させていただきます。
超厳重な四段階認証の実現!
- ログイン画面にアクセスするためのBasic認証
- WordPressユーザー名とパスワードログイン認証
- ログイン認証を行うためのreCaptcha(BOT対策)
- 万が一、パスワードを含むWordPressアカウント情報がバレてしまい、なおかつreCaptchaを突破されても大丈夫なGoogle Authenticator
これで驚くほど強力な四段階認証が実現されました。
このセキュリティでログイン攻撃が成功することはまずないでしょう。
パスワードバレによる不正ログインを防ぎたい場合は、上記の対策を行うようにしてください。
四段階認証だとログインが面倒なのでは?
おっしゃる通りです。二段階ならまだしも四段階になるとログインがかなり面倒になります。
ですが、WordPressは一度ログインしたら再度ログインを要求されることは滅多にありませんよね?
それに、Google Chromeなど主流なブラウザの最新バージョンではパスワードを保存して自動で呼び出せる(オートコンプリート)ようになっています。
ですので、ログイン手続きを厳しくして四段階認証にしたとしても大きな影響はないのです。
ログインが面倒になる以上のセキュリティ効果を得られるので、何があってもハッキングされてサイトが乗っ取られてほしくないという場合はログイン対策も厳重に行うようにしましょう。
導入に不安な場合はお問い合わせください
四段階認証によるログイン対策はWordPressをカスタマイズする知識があれば十分可能なテクニックですが、導入に失敗するのが怖いという場合は一度お問い合わせくださいませ。
当サイト「WordPress のお医者さん」が代行して実装作業を進めさせていただきます。