今回はセキュリティ観点からのWordPressの設置先(インストール先)についてご説明いたします。
目次
WordPressをルートディレクトリに設置するリスク
多くの方が、あまり深く考えずにWordPressをドメインのルートディレクトリ(ドメイン直下)にインストールしてしまっているかと思いますが、セキュリティの観点からはこの方法はあまりおすすめできません。
攻撃者は、攻撃の対象になりうる特定のフォルダやファイルを探して、あらゆるサイトをクローリングしています。WordPressを使用したサイトでは、「wp-login.php(ログイン画面)」や「wp-admin/install.php(インストール画面)」などのファイルが攻撃対象としてよく狙われます。
これらのファイルがルートディレクトリから簡単にたどれる場所に存在すると、攻撃を受けるリスクが高まることから注意が必要です。
ドメイン直下にWordPressが存在することを確認した攻撃者は、ログインページへのブルートフォースアタック(総当たり攻撃)など次なる攻撃を仕掛けてきます。
こうした攻撃への対策として、WordPressをサブディレクトリに設置することが効果的です。サブディレクトリにWordPressのファイルを隠すことで、攻撃者がログイン画面などに簡単にたどり着くことを防ぐことができます。
WordPressをサブディレクトリへ設置する方法
それでは、サブディレクトリにWordPressを設置する方法をご説明いたします。
以下では、ドメイン名「example.com」内にサブディレクトリ「mycompay-website」を作成し、WordPressを設置する手順をご紹介いたします。
サブディレクトリの作成
まず、ルートディレクトリの直下にサブディレクトリを作成します。このとき、サブディレクトリ名には、攻撃者に狙われやすい言葉を避けて選ぶことが重要です。
サブディレクトリ名を工夫することで、外部からの攻撃リスクを低くすることができます。たとえば、「複数の単語を組み合わせる」や「ハイフン(-)やアンダーバー(_)といった記号を使う」といった方法が効果的です。
サブディレクトリにWordPressをインストール
次に、作成したサブディレクトリ配下にWordPressをインストールします。
レンタルサーバーの自動インストール機能を利用する場合は、インストール先として作成したサブディレクトリを指定してください。
サイトアドレス(URL)の設定
このままでは、サイトのURLが「https://example.com/mycompany-website/」となってしまいます。
サイトのドメイン名「https://example.com」のみでサイトにアクセスできるよう、設定変更を行います。
WordPressのダッシュボード左側メニューから、「設定」→「一般」メニューを選択し、「一般設定」内の「サイトアドレス(URL)」を修正します。
■変更前:
https://example.com/mycompany-website/
■変更後:
https://example.com
※ サブディレクトリ名「mycompany-website」を削除し、ドメインのみのURLに変更します。
パーマリンクの保存
サイドバーから「設定」を選び、「パーマリンク」をクリックします。その後、ページの下部にある「変更の保存」ボタンを押して、パーマリンクを更新してください。
※ この画面では設定は何も変更する必要はありません。
「index.php」、「.htaccess」ファイルをダウンロード
次にサーバー上のファイルの編集を行います。
FTPソフトを使用して、WordPressをインストールしたサブディレクトリ「mycompany-website」内にある「index.php」と「.htaccess」ファイルをパソコンにダウンロードします。
「index.php」の修正
ダウンロードしたindex.phpファイルを開き、該当の箇所にWordPressをインストールしたディレクトリ名を追記します。ディレクトリ名の前にはスラッシュ(/)を忘れずに追加してください。
■変更前:
require __DIR__ . ‘/wp-blog-header.php’;
■変更後:
require __DIR__ . ‘/mycompany-website/wp-blog-header.php’;
「index.php」、「.htaccess」ファイルをルートディレクトリにアップロード
「index.php」と「.htaccess」ファイルを、作成したサブディレクトリと同じ階層(ルートディレクトリ)にアップロードします。
サイトの確認
ブラウザにURLを入力して、ログイン画面、Webサイトが正しく表示されるかを確認してください。
※ 以下はドメイン名「example.com」の例です。サイト確認の際には、自社のドメイン名に差し替えてください。
ログイン画面 | https://example.com/wp-login.php |
Webサイト | https://example.com |
まとめ
今回は、WordPressをサブディレクトリに設置する方法をご紹介しました。
これだけであらゆる攻撃を防げるわけではありませんが、URLを手がかりにして対象を探す攻撃には、一定の効果が期待できます。ぜひ、試してみてください。
WordPress設置先の変更もご相談ください
自分達だけで設置先の変更は難しいというお客様は、ぜひWPPLUSにご相談ください。
お客様環境を踏まえた、設置先の移行プランをご案内いたします。