NginxでのWordPressの不正ログイン対策

WordPressのプラグインでSiteGuardを入れていることで、ログイン履歴を簡単に把握することができるけれど、特定のIPアドレスからのアタックが非常に多いことに気がついて。。。

なので、NginxでのIPアドレスによるアクセス制限を行う事に。
まずはこのIPアドレスがどのようにアクセスしているのかをログから調査してみる。

そうすると、
“POST /xmlrpc.php HTTP/1.1” 200 1107 “http://kazuya.biz/xmlrpc.php”
とログに記録されていることを発見。
なるほど、HTTPでのxmlrpc.phpを狙った攻撃なのかぁと。

で、アクセス制限を行うためにはHTTPの設定ファイルに記載することが必要と。

HTTPの設定ファイルの”location ~ \.php$”ディレクティブの中に、
deny (制限を行うIPアドレス);
の1行を記載して、Nginxを再起動。

これによって、制限を行うIPアドレスからのアクセスを拒否して、エラーログに記録されることになりました。
しばらくしてからエラーログを確認したら、
[error] 934#934: *28293 access forbidden by rule, client: (制限を行ったIPアドレス)
と記録されていました。
これで対策が完了となったかと。

やっぱり定期的に確認が必要だなぁと。
ログを可視化するツールの導入を検討しなければと。

にほんブログ村 IT技術ブログへ

コメント