Security(セキュリティ)

【WordPress】アクセス制限を掛けておくべきファイルのまとめ

WordPressのアクセス制限を掛けておくべきファイルをまとめてみました。

xmlrpc.phpへのアクセス制限

・ピンバック機能(WordPressのサイトにリンクが貼られた時に通知をしてくれる)
・iPhone、Androidなどのスマホアプリからの記事の更新
・メール投稿
で利用されるスクリプトです。

ただ、このxmlrpc.phpを使った不正投稿が度々問題になることがあります。
弊社でも、過去に1度だけ被害を受けたことがあります。

ピンバック機能なんて無くても全く問題ないです。
メール投稿機能も、今の時代、使用している人間などほぼいないです。

スマホアプリから投稿できなくなるのは痛いですが、
そこまで重要ではないので、極力アクセスを制限してしまいましょう。

注意点
xmlrpc.phpは、プラグインでも使用している場合も多いです。
有名なところであれば、Jetpackxmlrpc.phpと連携している為に、
xmlrpc.phpへアクセス制限が掛かっていると、機能しない部分もあります。

そもそも、Jetpackなんて使う必要があるのか?という疑問もありますが、
その辺はどうするのか考慮する必要も出てきます。

アクセス制限の設定方法

以下の記述を行った.htaccessxmlrpc.phpと同じ階層にアップして下さい。

<Files xmlrpc\.php>
Order deny,allow
Deny from all
</Files>

 

wp-cron.phpへのアクセス制限

予約投稿やアップデート通知など時間と連動した処理に使用されるプログラムを記述したファイルです。

wp-cron.phpも不正アクセスに利用される可能性があるので、
もし予約投稿を使っていない場合や、アップデート通知不要の場合には、
アクセス制限を掛けておきましょう。

アクセス制限の設定方法

以下の記述を行った.htaccesswp-cron.phpと同じ階層にアップして下さい。

<Files wp-cron\.php>
Order deny,allow
Deny from all
</Files>

 

wp-login.phpへのアクセス制限

wp-login.phpへのアクセス制限を掛けている方は多いのではないでしょうか?

サイト運用者や制作者以外が管理画面にログインする必要はないので、
それら以外の人間がアクセスする必要のないファイルになります。

可能であれば、特定のIPアドレス以外からのアクセスを制限することをおすすめします。

アクセス制限の設定方法

以下の記述を行った.htaccesswp-login.phpと同じ階層にアップして下さい。

<Files wp-login\.php>
Order deny,allow
Deny from all
Allow from xxxx.xxxx.xxxx.xxxx
</Files>

「xxxx.xxxx.xxxx.xxxx」は、サイト運用者や制作者の環境のIPアドレスに変更して下さい。

これにより、「Allow from xxxx.xxxx.xxxx.xxxx」へ設定したIPアドレスのみがアクセス可能になります。
もし複数の場所からアクセスする場合には、
Allow from xxxx.xxxx.xxxx.xxxx」を追加すれば、複数のIPアドレスからのアクセスが可能になります。

ただし、こちは特定のIPアドレスからのアクセスのみを許可する方法なので、
オフィスのIPアドレスが固定されている場合に限ります。
※固定IPアドレスを取得されていない場合には設定不可になります。

 

管理画面「wp-admin」へのアクセス制限

管理画面「wp-admin」も、wp-login.phpと同様に、
サイト運用者や制作者以外がアクセスする必要のない画面になります。

可能であれば、特定のIPアドレス以外からのアクセスを制限することをおすすめします。

アクセス制限の設定方法

以下を記述した.htaccessをwp-adminディレクトリ直下にアップして下さい。

Order deny,allow
Deny from all
Allow from xxxx.xxxx.xxxx.xxxx

 

wp-config.phpへのアクセス制限

WordPressで使用する諸々の情報を記載するファイルです。
例えば、データベースのアカウントやテーブルのプレフィクスなどの重要な情報を記述します。

wp-config.phpのアクセス制限については、以下にまとめているので、
そちらを参照して頂ければと思います。
[ wp-config.phpへのアクセス制限 ]

 

記述をひとまとめにする

mlrpc.php、wp-cron.php、wp-config.php
は、同一階層に設置されているファイルです。

もし、全てのファイルにアクセス制限を掛ける場合には、
以下のようにひとまとめにして下さい。

<Files ~ "^(mlrpc\.php|wp-cron\.php|wp-config\.php)$">
Deny from all
</Files>

※複数ファイル設定する場合、パイプライン(|)で区切ります。

この記事を書いている人
株式会社ディープ
名前足立拓也

メールアドレスadachi@deep-deep.jp

関連記事

最近の記事

  1. SEO対策とは
  2. SE(システムエンジニア)
  3. カメラ
  4. アクセス解析
  5. ファイアウォール
  6. 一眼レフカメラ
  7. システム開発用のアイキャッチ
  8. FTPサーバー
  9. システム開発用のアイキャッチ
  10. Warning
PAGE TOP