このところ、WordPressを狙った大規模な攻撃が行われています。
こちらの記事によると
According to reports, they are seeing a large botnet with more than 90,000 servers
attempting to log in by cycling different usernames and passwords against the WordPress access points:
wp-login.php and /wp-admin.
とのことで、/wp-login.phpと/wp-adminディレクトリが狙われているとのことです。
その対策として、こちらの記事では
admin という管理者ユーザ名を変更すること *2
簡単に推測できない強力なパスワードを設定すること
の2つを推奨しています。これらも対策として非常に基本的かつ重要なことですが、会社などで利用しているのであれば、会社のIPアドレスからのみログインできるように制限を加えればより安全ですね。
そこで、nginxとapacheのIP制限についてまとめたいと思います。
nginxの場合
下記内容をnginx設定ファイルに追記します。
server { # wp-adminのIP制限。allow~に続いて許可するIPアドレスを書きます。 # deny all;の行は消してはいけません。 location /wp-admin { allow xxx.xxx.xxx.xxx; allow yyy.yyy.yyy.yyy; deny all; } # wp-login.phpのIP制限。wp-adminの場合と内容は一緒です。 location = /wp-login.php { allow xxx.xxx.xxx.xxx; allow yyy.yyy.yyy.yyy; deny all; # PHPを動作させるための設定も忘れずに書きます fastcgi_pass x.x.x.x:yyyy; などなど。。。 } } |
共通して注意したいのは、
deny all; |
をallowより先に書いてはいけません。denyが現れた段階で残りのallow行は無視されます。
wp-adminの制限はわかりやすいと思います。wp-login.phpですが、ここでは「=」修飾子を使って制限対象を「/wp-login.php」に限定しています。今回のように対象となるファイルが決まっている時には、この書き方のほうが直感的でわかりやすいと思います。また、IP制限の記述だけですとPHPとして動作しなくなるので、忘れずにPHPの設定を書いておきましょう。
設定を書き換えたら「/path/to/bin/nginx -t」を実行して設定ファイルにミスがないか確認をします。問題なければnginxを再起動します。
apacheの場合
.htaccessが使えるようであれば、下記内容を/wp-admin/に設置します。
order deny,allow deny from all allow from xxx.xxx.xxx.xxx |
また、wp-login.phpのあるディレクトリの中に下記内容で.htaccessを設置します。
<Files "wp-login.php"> order deny,allow deny from all allow from xxx.xxx.xxx.xxx </Files> |
動作確認
nginx、apacheのいずれの場合も、
- 許可されたIPアドレスから接続できること
- それ以外のIPアドレスからアクセス出来ないこと
を確認しましょう。
おまけ
WordPressのプラグインで、特定のIPアドレスから何度もログインしようとした場合に、そのIPアドレスを一定時間ブロックするものもあるようです。
固定IPアドレスがなくて制限をかけられない場合は、このようなプラグインを使うのもひとつの手です。
PICK UP
-
タグ: BigQuery, GA4, GoogleMarketingPlatform, Googleアナリティクス, コラム
【資料】GA4無料版をご利用の方必見! GA4導入後のよくあるお悩みと解決方法8選 -
タグ: ASEAN越境EC支援, Webサイト多言語変換サービス, shutto翻訳, クラウドサービス, コラム, ニュース
shutto翻訳、Webサイト翻訳部門で「Leader」を5年連続受賞!- ITreview Grid Award 2024 Winter -
タグ: CART RECOVERY, カゴ落ち対策, カートリカバリー, クラウドサービス, コラム, ニュース
CART RECOVERY、カゴ落ち対策部門で「High Performer」を受賞!- ITreview Grid Award 2024 Spring -
タグ: CART RECOVERY, カゴ落ち対策, カートリカバリー, クラウドサービス, コラム, ニュース
ECサイトの構築方法5選! 特徴と選び方を解説 -
タグ: コミュニケーション, コラム, ブログ, リモートワーク, ワーケーション, 文化, 環境
有楽町 森の本社オフィスのVR紹介記事がメディアに掲載されました!|公式note -
タグ: CART RECOVERY, カゴ落ち対策, カートリカバリー, クラウドサービス, コラム, ニュース
ECサイトとは? 役割と必要な機能・サイトの種類についてわかりやすく解説