この記事には広告を含む場合があります。
記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
どーも。あいしんくいっと(@ithinkitnet)です。
ある日、WordPressの管理コンソールを開こうとしたものの、めちゃ重くてなかなか開かない。
まぁ、いつも重いっちゃ〜重いんですけど、そんな比じゃないくらい。
嫌な予感がしたのでサーバにログインして確認みるとロードアベレージが恐ろしく高い。
[root@sakura ~]# w
22:24:54 up 196 days, 10:58, 1 user, load average: 8.38, 3.65, 1.90
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
hoge pts/0 119-229-19-79f1. 22:24 6.00s 0.21s 0.07s sshd: hoge [priv]
ロードアベレージが8とか。高い、高過ぎる!
これは攻撃されているに違いない!!
と、nginxのアクセスログを見てみるとビンゴ!
大量な不正アクセス。攻撃されてるな、これ。
しかも、HTTPステータスコード「200」返してるし、これはマズイな・・・。
仕方ないので一時的にWordPressコンソールのアクセスを制限することに。
wp-login.phpへのアクセス制限
ログイン画面へのアクセスが多いので、nginxのコンフィグファイルに以下を追記。
/etc/nginx/conf.d/ithinkitnet.conf
location = /wp-login.php {
deny all;
allow xxx.xxx.xxx.xxx;
}
/wp-login.phpに対する全てのアクセスを遮断し、任意のIP(xxx.xxx.xxx.xxx)からの接続のみ受け付ける設定を付与。
そして、設定反映。
# systemctl reload nginx
ほりゃ、これでどうじゃ?
HTTPステータスコードが「200」→「403 Forbidden」を返すようになった。
ちなみに許可したIPアドレス以外からアクセスした場合、以下の画面が表示される。
とりあえず、ロードアベレージも下がってきたし、このまま様子見することに。
[root@sakura conf.d]# w
23:05:05 up 196 days, 11:38, 1 user, load average: 0.02, 0.12, 0.30
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
hoge pts/0 119-229-19-79f1. 22:24 1.00s 0.30s 0.07s sshd: hoge [priv]
ithinkit
とりあえず、nginx使っててHTTPアクセスを防ぎたい時は上記のように設定すると良いでしょう。
以上、あいしんくいっとでした( ◠‿◠ )