WordPress ウェブサイトを保護しない方法
WordPress サイトを保護したい場合、最初に何をしますか?上位 5 つのセキュリティ プラグインを見つけて、どれくらい手頃な価格であるかを検討してから、インストールしてください。これで、座ってリラックスできるようになりましたね?間違っている!
セキュリティ プラグインを使用してもセキュリティは保証されません。セキュリティは絶対的なものではなく、誰も完全なセキュリティを保証することはできません。私たちにできる最善のことは、ハッキングのリスクを軽減することです。そして、一般的な考えに反して、サイト所有者は Web サイトの安全を保つために関与する必要があります。何をすべきか、何をすべきではないかを知ることは重要です。
WordPress サイトを安全に保つために何をすべきかについてのガイドはいくつかありますが、代わりに避けるべきことについてのガイドを提供します。ここでのアドバイスが一般的な信念と矛盾していることに気づくでしょう。しかし、私たちの経験から言えば、世の中にあるアドバイスの多くは時代遅れであり、誤った安心感を与えています。
WordPress のセキュリティの問題が私たちと同じくらいあなたを悩ませている場合は、以下をご覧ください。
1. セキュリティプラグインを多用しすぎない
さまざまな機能セットを備えた幅広いプラグインが利用可能であることを考えると、複数の WordPress セキュリティ プラグインを使用したくなります。正直に言うと、それはやりすぎです。サイトのセキュリティについて不安になるのは正常ですが、本当に複数のセキュリティ プラグインが必要かどうかを自問する必要があります。サイトの要件に不可欠な機能は何ですか?機能はお互いに足を踏み入れることになるでしょうか?
たとえば、プラグインが wp-config.php や htaccess などのファイルの変更を開始すると、競合が発生する可能性があります。プラグインはこれらのファイルを簡単に操作できますが、単一の統一された方法で変更するわけではありません。これにより競合が発生し、Web サイトが遅くなる可能性があります。
WordPress サイトでは、問題が発生することがあります。誰もが恐ろしい死の白幕を嫌います。 Web サイトに深く影響する複数のプラグインがあると、問題のデバッグが困難になる可能性があります。ここで、プラグインが 1 つだけであれば、エラーの原因を見つけて修正するのはより簡単で、それほど複雑ではなかったでしょう。
2. DB プレフィックスを変更しないでください
WordPress サイトが侵害される可能性のある方法はいくつかあります。ハッカーは SQL インジェクション攻撃を通じてサイトのデータベースにアクセスする可能性があります。プラグインまたはテーマの脆弱性を利用して、サイトのデータベースに侵入される可能性があります (そのため、同様の落とし穴を避けるために、代わりに WordPress データベース バックアップ プラグインを使用することをお勧めします)。ハッカーがサイトに深く侵入するのを防ぐ一般的な方法の 1 つは、デフォルトのテーブル プレフィックスを変更することです。下の画像でわかるように、WordPress では、デフォルトのテーブル接頭辞は「wp_」です。WordPress では、特定のテーブルを非表示にするためにテーブル接頭辞 (たとえば、「xzy_」) を変更できます。
表面的には、これは良いアイデアのように見えます。ハッカーがテーブル名を知らない場合、そこからデータを取得することはできません。しかし、これは誤った推論です。誰かがデータベースをハッキングしても、テーブルを見つける方法はまだあります。したがって、プレフィックスの名前を変更しても役に立ちません。さらに、デフォルトのプレフィックスを変更すると、いくつかのプラグインが誤動作する可能性があります。
さらに、データベースのプレフィックスを途中で変更することは実装が難しく、Web サイトがクラッシュする可能性があります。あらゆるレベルで多くの変更を加える必要があるためです。プロセスでエラーが発生すると、サイトに壊滅的な影響を与えることになります。
3. ログインページを隠さないようにする
パスワードを解読してサイトに侵入しようとする人は常に存在します。ブルート フォース攻撃中、ハッカーは一般的なユーザー名とパスワードの組み合わせを使用して Web サイトにログインしようとします。では、ログインページを非表示にしたらどうなるでしょうか?それは一石二鳥ですよね?ハッカーはログイン ページを見つけることができなくなり、サーバーの負荷が軽減されます。
WordPress にはデフォルトのログインページがあります。ページへの URL は通常、example.com/wp-login.php のようになります。 Web サイトをブルート フォース攻撃から守るよく知られた方法の 1 つは、デフォルトのログイン ページを非表示にするか、example.com/mylogin.php などの別のページに変更することです。これは絶対確実な計画のように聞こえますが、この方法が WordPress サイトの安全性を保つのにどれほど効果的であるかを見てみましょう。
サーバー負荷の軽減
ログイン ページを非表示にするか場所を変更すると、誰かがそのページを開こうとするたびに 404 エラーが発生します。ただし、ログイン試行は重いプロセスです。 404 エラー ページが読み込まれるたびに、サーバー リソースが大量に消費されます。そして最終的にはウェブサイトの速度が遅くなります。したがって、ログイン ページを非表示にするとサーバーの負荷が軽減されるという一般的な考えは誤りです。
代替 URL を推測するのは難しくない
CMS としての WordPress の成功の一部は、Web サイトへの変更を容易にするプラグインによるものです。サイトのログイン ページを非表示にする一般的な方法がプラグインを使用することであることは驚くべきことではありません。これらのプラグインには、xzy.com/wplogin.php などのデフォルトの代替ログイン URL のセットが付属しています。私たちはデフォルト設定をそのまま使用するように訓練されています。プラグインをインストールして URL を変更したら、それについてはあまり考えません。ただし、プラグインが提供できる URL は限られています。これらの事前設定されたログイン URL を見つけるのはそれほど難しくありません。したがって、代替 URL を使用しても、ほとんどの場合効果がない可能性があります。
ユーザビリティの問題
WordPress の利点は使いやすいことです。おなじみのプラットフォームです。多数のユーザーがいるサイトの場合、ログイン ページを変更または非表示にすると、特定の問題が発生する可能性があります。 WordPress フォーラムで、ログイン URL の変更によりユーザーがサイトからロックアウトされている投稿に何度か遭遇しました。ほとんどの場合、変更はプラグインを使用して行われ、ユーザーは混乱を引き起こしている状況を認識していませんでした。
4. IP アドレスを手動でブロックしないでください
サイトにセキュリティ プラグインがインストールされている場合、誰かがあなたの Web サイトにログインしようとするたびに通知が届きます。これらの悪意のあるリクエストを送信している IP を簡単に取得し、.htaccess ファイルを使用してブロックできます。これは手作業が多く、あまり便利な方法ではありません。
ユーザーフレンドリーではない
技術者以外の人が .htaccess ファイルを変更しようとすると、大惨事が発生します。 WordPress のようなコンテンツ管理システムには、非常に厳密な書式設定があります。 FTP/SFTP などの最も一般的なツールを使用する場合でも、非常に危険です。軽微なエラーやコマンドの配置が間違っていると、サイトがクラッシュする可能性があります。
ブロックするには IP が多すぎます
ブラックリストへの登録を避けるために、ハッカーは世界中の IP アドレスを使用します。以前、サイトに常に侵入しようとする IP アドレスを手動でブロックすることについて説明しました。この作業には (前にも述べたように) 多くの時間と労力がかかりますが、時間の効率的な使い方とは言えません。ただし、Malcare などのトップ WordPress セキュリティ プラグインを使用している場合は、ブロック プロセスを自動化できます。このようなセキュリティ プラグインは、すべての WP セキュリティの抜け穴に対処します。
5.WordPressを非表示にする
CMS を隠蔽すると、悪意のある人々がサイトに侵入するのが難しくなるという一般的な仮定があります。あなたのウェブサイトが WordPress で実行されているという事実を隠すことができたらどうでしょうか。そうすれば、一般的な脆弱性を悪用しようとするハッカーからサイトを守ることができます。これを行う簡単な方法は、(ご想像のとおり) プラグインを使用することです。しかし、ハッカーが Web サイトがどのプラットフォームで実行されているかを気にしない場合、この方法は失敗します。さらに、サイトが WordPress で実行されているかどうかを確認する方法はたくさんあります。
プラグインを使用する以外に、作業を手動で行うこともできます。しかし、それは時間のかかるプロセスです。 WordPress を 1 回更新すると、数秒以内にすべての作業が元に戻されます。つまり、このプロセスを何度も繰り返すか、WP のアップデートを避ける必要があります。 WordPress の更新をスキップすることは、玄関のドアを開けてハッカーが家に侵入するようなものです。
6. wp-admin のパスワード保護が機能しない
デフォルトの WordPress ログイン ページ (example.com/wp-admin のようなページ) は、サイトへのゲートウェイです。一般的なログイン ページは次の図のようになります。
ここでは、資格情報を使用して WordPress ダッシュボードにアクセスする必要があります。ログイン ページをパスワードで保護すると、ダッシュボードへのこのゲートウェイを非表示または保護するのに役立ちます。良いアイデアではありますが、抜け穴がないわけではありません。
まず、パスワードを紛失した場合、パスワードを維持したり変更したりすることさえ困難です。追加のセキュリティを提供するのに効果がないだけでなく、サイトへのこのような変更は非常に危険であることが判明する可能性があります。たとえば、管理ページをパスワードで保護している場合、/wp-admin/admin-ajax.php などのリクエストは保護をバイパスできません。サイトの Ajax 機能に依存する可能性のあるプラグインがあります。そして、この機能にアクセスできなくなると、不正な動作が始まります。したがって、これによりウェブサイトが破損する可能性があります。
あなたへ
WordPress サイトを保護するために避けるべきことについて質問や提案がある場合は、コメント欄でお知らせください。