WordPressを保護する:プラグインフォルダーの名前を変更します
English version: Get WordPress protected: rename the plugins folder
プラグインフォルダに新しい名前を付けることは、WordPressの保護を強化する最も過小評価されている方法の1つです。それでも、それは無料で簡単です。
重要な理由とその仕組み
Cerber Labでの調査によると、ほとんどのハッカー攻撃とプラグインの脆弱性の悪用の試みは、すべてのWordPressプラグインがすべてのプラグインのデフォルトフォルダーである/ wp-content / plugins /にあることを前提としています。幸い、このフォルダの名前は、文字通り2つの簡単な手順で簡単に変更できます。これは、サイバー犯罪者がフォルダーの名前を変更し、デフォルトのプラグインの場所を盲目的に攻撃する能力についてまったく知識がないことを意味しますか?いいえ、常にではありませんが、 WordPressを利用したWebサイトの大部分はデフォルトのフォルダー構造を使用しているため、サイバー犯罪者はこの弱点を簡単に悪用します。
私たちの分析によると、ほとんどのWebサイトは古いプラグインの脆弱性を悪用してハッキングされており、ほとんどの場合、攻撃者はデフォルトのWordPressプラグインフォルダーにあるPHPファイルの脆弱性を使用しています。
ヒント:Cerberマルウェアスキャナーを使用して、インストールされているプラグインの脆弱性を見つけてください。
WordPressプラグインフォルダーの名前を変更する方法
まず第一に、あなたは通常ファイルマネージャーを持っているあなたのホスティングコントロールパネルを介してあなたのウェブサイト上のファイルにアクセスする必要があります。または、FTPクライアントを使用することもできます。
最初のステップは、既存のWordPressプラグインフォルダーの名前を任意の名前に変更することです。モジュール名を使用すると仮定しましょう。プラグインフォルダの名前にはASCII文字のみを含める必要があることに注意してください。単に「ラテンアルファベットのみを使用する」と言います。
2番目のステップは、WordPressがプラグインフォルダーの新しい名前を認識して使用するのに役立つ2つのdefineディレクティブをwp-config.phpファイルに追加することです。このステップでは、WordPress管理ダッシュボードで組み込みのファイルエディターを使用することはできません。ホスティングコントロールパネルまたはFTPクライアント内からファイルエディターを使用して、wp-config.phpファイルを編集します。以下の例を参照して、次の点に注意してください。
- <?phpの後の次の行で、ファイルの先頭にディレクティブを追加する必要があります。
- WP_PLUGIN_DIRのプラグインディレクトリへのフルパスを使用する必要があります。ヒント:標準プラグインフォルダーへのフルパスは、ツール/診断管理ページにあります。これは、「WordPressプラグインフォルダー」行の「ファイルシステム」セクションに表示されます。
- 末尾にスラッシュはありません。
<?php
define( 'WP_PLUGIN_DIR'、 '/ full / path / to / wp-content / modules');
define( 'WP_PLUGIN_URL'、 'https://example.com/wp-content/modules');
WP_PLUGIN_DIR定数は、名前を変更したプラグインフォルダーへのスラッシュを付けずにフルパスを定義します。
WP_PLUGIN_URL定数は、名前を変更したプラグインフォルダーの末尾にスラッシュを付けずにURLを定義します。
これらの2つの手順を完了したら、WordPressにセキュリティレイヤーを追加します。考慮すべきもう1つのセキュリティメカニズムは、スケジュールされたマルウェアスキャンを有効にすることです。
考えられる問題とトラブルシューティング
ウェブサイトが読み込まれておらず、エラーが表示されていません。これは通常、フォルダ名にタイプミスをしたことを意味します。 wp-config.phpに追加した定義、フルパス、および指定したURLを注意深く確認してください。 WebサイトのパスとURLを指定する必要があります。上記の例からそれらをコピーしたり、プラグインフォルダーの名前を変更したり、WordPressダッシュボード内からwp-config.phpファイルを編集したりしないでください。
一部の機能が機能しなくなりました。設計が不十分なプラグインや古いプラグインがWebサイトにインストールされていることがあります。あなたができる最善のことはそれを取り除くことです。プラグインの開発が不十分であるという言い訳はありません。プラグイン開発者は、WordPressのコーディング標準に従う必要があります。
プラグインフォルダのデフォルト名を復元する方法
- wp-config.phpファイルからWP_PLUGIN_DIRおよびWP_PLUGIN_URLディレクティブを含むすべての行を削除します
- WordPressプラグインが存在するフォルダーのデフォルト名はプラグインであるため、プラグインフォルダーの名前をpluginsに戻します。
I tried changing the directory but it didn’t work.
Looking for more information I found something that works.
define( ‘WP_PLUGIN_DIR’, dirname(__FILE__) . /content/mod’);
define( ‘WP_PLUGIN_URL’, ‘http://example.com/content/mod’);
Why this way if it works and not the way you have in the post?
Has anything changed in the latest versions of WordPress?
The same thing happens to me with WP-CONTENT
Thanks
Yes, you can use this way too but it leaves some room for uncertainty because a constant should be constant. The perfect way is to define a static value like a string. It didn’t work for you most likely because the path you specified for WP_PLUGIN_DIR was not correct. Possibly because you had changed the default wp-content path to content. In this case, the full config should be:
// no trailing slashes
define('WP_CONTENT_DIR', dirname(__FILE__) .'/content');
define('WP_CONTENT_URL', 'https://example.com/content');
define('WP_PLUGIN_DIR', WP_CONTENT_DIR . '/mod');
define('WP_PLUGIN_URL', WP_CONTENT_URL . '/mod');
Thanks!
I started by following this other post https://wpcerber.com/turn-wordpress-into-fort-knox/
But I couldn’t get it to work well.
Yes, that approach requires some technical background.