【nginx】WordPress管理画面のアクセス制限設定

前回phpMyAdminのアクセス制限を行ったあと、WordPressのセキュリティ面に全く手を付けてなかったことに気づきました。
放っておけばいずれ総当たりパスワード解析で、ログインされてしまっていたかもしれません。
そうなる前に、WordPresの管理画面(wp-admin)とログイン画面(wp-login.php)に、アクセス制限をかけることにしました。

/etc/opt/kusanagi/nginx/conf.dフォルダ内の[プロファイル名].confファイルを開いて、前回のphpMyAdminのアクセス制限設定の前に次のコードを記述します。

    location /wp-admin/ {
        allow 127.0.0.1;
        allow 192.168.1.0/24;
        deny all;
        location ~ \.php$  {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }

    location /wp-login.php {
        allow 127.0.0.1;
        allow 192.168.1.0/24;
        deny all;
        location ~ \.php$  {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }

本当なら1つのコードにまとめたかったのですが、うまく行かなかったので仕方なく2つに分けました。

 


記述が済んだらnginxを再起動して、スマートフォンや別IPのデバイスからアクセスを試みて、403 Forbiddenが表示されれば設定完了です。
お疲れ様でした。

コメント

タイトルとURLをコピーしました