目標:本番ドメインのWordPressバックエンドにアクセスする機能を完全に削除します。例 http://example.com/wp-admin に対して404を返します。
目的:WordPressのバックエンドがインターネットを介してアクセスされる可能性はありません。代わりに、内部ドメインのVPN経由でのみアクセス可能になります(つまり、 http://example.internal/wp-adminこれにより、誰もログインページをブルートフォース攻撃することはできません
ログインを特定のIPアドレスに制限することはできますが、IPのリストに追いつくことはしたくありません。私のVPNが既に提供しているセキュリティを使用したいと思います。
フロントエンドが呼び出すリソースが存在する可能性があるため、wp-admin
は何らかの方法でまだアクセス可能である必要があることを考慮してください。
他の場所でwp-login.php
をリダイレクトする以外に何か解決策はありますか?
あなたのVPNのサブネットを知っていれば、標準的なApacheのルールを使って.htaccessで/ wp-adminへのアクセスを制限することができます。
<Directory /var/www/wp-admin/>
Order deny,allow
Allow from 192.168.1.0/24
Allow from 127
</Directory>
明らかにあなたはあなたのニーズに合うようにディレクトリとIPアドレスのサブネットを調整する必要があるでしょう。
特定のファイルへのアクセスを制限するには
<Files _FILE_.php>
Order allow,deny
Deny from all
Allow from 127.0.0.1
</Files>
また、あなたのVPNに合うようにサブネットマスクを使うことができます。