事前に@wokamotoさんの”Brute force attack との戦い”でユーザ名がadminでのログイン対策などは行っていても”/?author=1”でユーザー名を特定されてガシガシ色んなところから来てはるので対策。
レンタルサーバに設置してあるWordPressからログインエラーのメールがやたらときていたので、「Crazy Bone (狂骨)」プラグインでエラー出まくっている状況をチェック
するとIPは偽装されて毎回変わってるのでプラグインの「Limit Login Attempts」ではロックできないので少し困った状況、、、
ユーザーエージェントが”Netscape Navigator 5.0″って事らしいので少し乱暴ですが、
.htaccessでユーザーエージェント”Netscape”のアクセスを拒否してみる事にしてみました。
対策その1 (Apacheで.htaccessが使える場合)
[code]
SetEnvIf User-Agent "Netscape" ng_ua
order allow,deny
allow from all
deny from env=ng_ua
[/code]
が、
まだログインアタックが続くのでApacheのログを見てみるとエラーログインが記録されたIPのユーザーエージェントを見てみると
“Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)”
って事でグーグルさんを偽装しているようなのでww乱暴な方法でMozillaやGoogleを”.htaccess”で拒否するのも難しい状況^^;
なので、クライアントさん含めてログインするのはMacしかないので、wp-login.phpへのアクセスをMac(Apple)以外のユーザーエージェントは拒否してみました。
※WebサーバーがNginxの方は@wokamotoさんの”Brute force attack との戦い”の”ユーザーエージェントで拒否する”を参考にされると良いと思います。
対策その2 (Apacheで.htaccessが使える場合)
[code]
<Files ~ "wp-login\.php$">
SetEnvIf User-Agent "Apple" ok_ua
order deny,allow
deny from all
allow from env=ok_ua
</Files>
[/code]