ここ最近はWordPressサイトを狙ったブルートフォースアタックが流行しているようです。ブルートフォースアタックとは、ありとあらゆるパターンを試してパスワードを取得する攻撃手法のことです。
「個人のブログだから狙われないだろう」「admin使ってるけどパスワードはわかりにくいから大丈夫だろう」といった考えは非常に危険です。対策していないといつサイトを乗っ取られるかわかりません。
ブルートフォースアタックなどの攻撃からあなたのサイトを守るには、セキュリティを高める必要があります。
ユーザー名にadminを使わない
まず簡単にやれる対策としては、ユーザー名に admin を使わないということです。デフォルトユーザーである admin を使っているとユーザー名を解読する必要がないので、不正ログインに一歩近づきますね。なので、ユーザー名には admin は使わない方がセキュリティ的にはいいです。
すでに admin を使っているという方は、admin を削除して別のユーザーに切り替えることをおすすめします。admin の削除手順については、WP SEOブログの新規ユーザーの追加とadminユーザーの削除方法という記事が非常にわかりやすく解説されています。
認証制限で予防する
ブルートフォースアタックは、ありとあらゆるユーザー名とパスワードの組み合わせを試してログイン情報を取得する攻撃なので、認証できる回数に制限を設けることで予防できます。
Login LockDown を使えば、設定した時間内に一定の回数ログインに失敗すると、しばらくそのユーザーをロックすることができます。Login LockDown を使って認証制限を行えば、不正ログインの予防になります。
Login LockDownのインストール
- Login LockDownをダウンロードします。
- ダウンロードしたファイルを展開し wp-content/plugins にアップロードします。
- 管理画面の[プラグイン]ページで、Login LockDownプラグインを有効化します。
Login LockDownの設定
Login LockDownの設定は、[設定] – [Login LockDown] にアクセスして行います。
Max Login Retries: ロックするまでの失敗回数
Retry Time Period Restriction: 失敗回数をカウントする間隔(分)
Lockout Length: ロックしておく時間(分)
Lockout Invalid Username: 無効なユーザーでのログインをロックするかどうか
デフォルトだと、5分間に3回ログインに失敗すると60分間ロックされます。必要に応じて設定を変更しましょう。
ロックされるとどうなるか
実際にロックされると、以下のようにメッセージが表示され、正しいユーザー名・パスワードを使ってもログインできなくなります。
ロックされたユーザーがいると、管理画面の [設定] – [Login LockDown] にロックされたユーザーのIPアドレスとロック解除までの残り時間が表示されます。
すぐにロックを解除したい場合は、該当のIPアドレスにチェックを入れて [Release Selected] をクリックします。
あとがき
不正ログインされるとサイトが改ざんされて色々と面倒なことになるのは間違いないです。場合によっては復旧できなくなるかもしれませんし、自分のサイトはしっかりと守りたいですね。
知らない間にサイトが乗っ取られてスパム行為を行われていた、なんてことにはならないように今のうちにセキュリティ対策は実施しておきましょう。
いつも参考にさせていただいております。
似たようなプラグイン「Limit Login Attempts」もありましたが、IPアドレスでの制御もできますが、外からではLoginできないのが不便ですね。
哲やんさん
コメントありがとうございます。
「Limit Login Attempts」は初めて知りました。検証環境でちょっと使って見ましたが、通知メールが送信できたり残り回数が表示されたりといい感じですね。
こっちに乗り変えるかもしれません^^
こちらこそ、いつも有益な情報をありがとうございます。
今後ともよろしくお願いいたします。
事後報告ですが、リンクをさせていただきました・・・
哲やんさん
リンクありがとうございます。自分のブログをリンクしてもらえるなんてすごいうれしいです^^
今後ともよろしくお願いいたします。