wp-config.phpでWordPressサイトを守る方法|設定ファイルによるセキュリティ強化ガイド
すべてのWordPressサイトには「wp-config.php」というファイルが必ず含まれています。このファイルはWordPressの中核を担う最重要設定ファイルの一つであり、サイトのデータベース接続情報や各種動作パラメータが記録されています。実は、このwp-config.phpに適切な設定を加えることで、サイトのセキュリティを大幅に強化することが可能です。本記事では、WordPress設定ファイルを活用してサイトを守るための具体的な方法を7つご紹介します。
wp-config.phpでWordPressサイトのセキュリティを強化する7つの方法
1. データベース接頭辞(プレフィックス)を変更する
WordPressのデータベーステーブルを見たことはありますか?(レンタルサーバーの管理画面からアクセスできます)デフォルト状態では、データベースには11個のテーブルが存在し、それぞれに固有の役割があります。例えば「wp_posts」には投稿・固定ページ・ナビゲーションメニューの情報が保存されています。テーブルごとの役割があらかじめ決まっているため、ハッカーはサイト情報がどこに格納されているかを容易に特定できてしまいます。例えば、ユーザー情報を狙うなら「wp_users」テーブルを標的にすればよいわけです。
WordPressはデフォルトですべてのテーブルに「wp_」という接頭辞を使用します。これを独自の文字列に変更することで、テーブル名を推測されにくくなり、サイトの防御力が高まります。手順は以下の通りです。
ステップ1: レンタルサーバーの管理アカウントにログインし、cPanelを開きます。「ファイルマネージャー」を選択すると、次のような画面が表示されます。

ステップ2: 左側のフォルダ一覧にある「public_html」フォルダを開くと、その中にwp-config.phpファイルが見つかります。

wp-configファイル内で以下の記述を探してください。
$table_prefix = 'wp_';
これを、ランダムで予測困難な文字列に変更します。
$table_prefix = 'agora_';
これにより、データベース上のテーブル名が「wp_users」「wp_posts」などから独自の接頭辞を持つ名称へと変わり、外部からの攻撃者に構造を読み解かれにくくなります。
2. テーマ・プラグインファイルの編集機能を無効化する
WordPressの管理画面には、テーマやプラグインのファイルを直接編集できる機能が備わっています。つまり、管理画面へのアクセス権限さえあれば、誰でもテーマやプラグインのコードを書き換えられる状態になっているのです。

プラグインの設定を手軽に変更できる便利な機能である一方、ハッカーの手に渡れば深刻な脅威となります。仮に脆弱性を突いてサイトへの侵入に成功した場合、攻撃者は既存のプラグインやテーマにマルウェアを仕込むことができます。さらにバックドア(不正アクセス用の裏口)を隠しておき、好きなタイミングで再侵入する恐れもあります。このリスクを回避するには、ファイル編集機能そのものを無効化しましょう。wp-config.phpに以下の1行を追加するだけです。
define('DISALLOW_FILE_EDIT', true);
3. プラグイン・テーマのインストールと更新を禁止する
ファイル編集の無効化は第一段階の防御にすぎません。悪意あるプラグインを新規インストールされてしまう可能性は残ります。管理者権限を持つユーザーとしてログインされれば、不正なテーマやプラグインを導入されてしまうからです。
プラグインの追加を頻繁に行わないサイトであれば、以下のコードをwp-config.phpに追記することで、インストール・更新操作そのものをブロックできます。
define('DISALLOW_FILE_MODS', true);
4. FTP接続の利用を強制する
プラグインやテーマのインストール・更新を完全に禁止すると、頻繁にプラグインを導入するサイトでは運用が不便になります。また、テーマやプラグインを最新の状態に保つことはサイトのセキュリティ上とても重要です。そこで有効なのが、プラグインをインストールする際にFTP認証情報の入力を必須にするという代替策です。万が一管理画面が乗っ取られても、FTP認証情報がなければ攻撃者は不正なプラグインをインストールできません。
wp-config.phpに以下の行を追加します。
define('FS_METHOD', 'ftpext');
ホスティング環境が「FTPS」(SSL対応FTP)に対応している場合は、こちらを追記してください。
define('FTP_SSL', true);
「SFTP」(SSH経由のFTP)に対応している場合は、以下の設定が利用できます。
define('FS_METHOD', 'ssh2');
5. セキュリティキーを変更する
サイトにログインするたびにIDとパスワードを入力しなくて済むのはなぜでしょうか? それは、ログイン後に認証情報が暗号化された形でブラウザのCookieに保存されるためです。この暗号化を強化する役割を果たしているのが「セキュリティキー」と呼ばれるランダムな変数群です。
万一サイトがハッキングされた場合でも、セキュリティキーを変更すれば既存のCookieはすべて無効化され、ログイン中の全ユーザーが強制的にログアウトされます。結果として、侵入者はWordPress管理画面へのアクセス権を失います。
WordPress.org公式のセキュリティキージェネレーターなどで新しいキーセットを生成し、wp-config.phpに貼り付けるだけで完了です。定期的なキーの更新も効果的な対策といえます。
6. wp-config.phpの場所を移動して隠す
WordPressサイトにおいて、wp-config.phpは決められた場所に配置されるのが標準です。そのため、ファイルの位置を変えるだけで、攻撃者がデフォルトのパスを辿ってファイルを発見するのを防げます。幸い、WordPressはwp-configファイルをWordPressインストールディレクトリの外に置くことを許容しています。
例えば、WordPressが「public_html」フォルダにインストールされている場合、通常は設定ファイルも同じ階層にありますが、これを一階層上などpublic_htmlの外へ移動しても正常に動作します。ワンディレクトリ上への移動は、不正アクセス対策として有効な手段の一つです。
7. wp-config.phpファイル自体を保護する
設定ファイルは攻撃の標的になりやすいため、直接的な保護措置も講じましょう。まず基本となるのは、前述のようにファイルの設置場所を変更して発見されにくくすることです。この手法については開発者コミュニティでも賛否がありますが、多くの専門家が有効な対策だと評価しています。
もう一つの重要な施策がファイルパーミッション(アクセス権)の制限です。パーミッションを「600」に設定すれば、ファイルの所有者のみが読み書き可能となり、第三者による改ざんを防げます。変更手順は、ファイルマネージャーでwp-config.phpを選択し、「アクセス権(Permission)」オプションから数値を設定するだけです。

さらに、.htaccessファイルに以下の記述を追加することで、ブラウザからwp-config.phpへ直接アクセスされるのを防ぐことができます。
# protect wpconfig.php <files wp-config.php> order allow,deny deny from all </files>
まとめ:多層防御でWordPressサイトを守ろう
以上、wp-config.phpを活用したWordPressサイトのセキュリティ強化方法をご紹介しました。ただし、これは数ある対策のほんの一部です。その他にも、セキュリティプラグインの導入、SSL証明書による常時HTTPS化、推測されにくいユーザー名と強力なパスワードの設定、HTTP認証や二要素認証(2FA)の実装などを組み合わせることで、より堅牢なサイト運営が可能になります。
重要な注意点として、これらの設定変更を行う前に必ずサイト全体のバックアップを取得しておきましょう。万が一トラブルが発生しても、バックアップがあれば短時間で元の状態に復旧できます。まずはバックアップ体制を整えてから、本記事の手順を実践してみてください。
-
感染したWordPressファイルをスキャン・修復する完全ガイド|wp-config.phpやwp-content/uploadsの対策方法
WordPressはWebサイト構築を非常に簡単にし、個人から大規模な組織まで、あらゆる規模のユーザーがオンラインでの存在感を持つことを可能にしました。しかし、WordPressサイトをホスティングする際には、セキュリティ対策が不可欠です。朝起きたらサイトがハッキングされ、これまで積み重ねてきた開発やSEOの努力が、自分では気づかないうちにすべて水の泡になっていた——そんな事態は絶対に避けたいものですね。WordPressはその人気ゆえに、ハッカーの標的になりやすい傾向があります。テーマやプラグインも例外ではありません。あるプラグインに脆弱性が見つかれば、そのプラグインをインストールしているほ
-
WordPressのwp-config.phpファイルを保護する方法を徹底解説
ハッカーの視点で考えてみてください。何千ものWebサイトが利用しているプラットフォームに侵入したり、複数のサイトに対してブルートフォース攻撃を仕掛けたりするのは、彼らにとって魅力的な標的です。WP-Scannerのようなオープンソースツールが出回っている現在、初心者レベルの攻撃者でも、プロフェッショナルなWordPressサイトに侵入し、悪夢のような被害をもたらすことが可能になっています。 その中でもwp-config.phpは、サイトの運命を左右する最重要ファイルの一つです。このファイルが漏洩すれば、サイト全体が危険にさらされます。本記事では、wp-config.phpファイルを安全に保護す