WordPress でのログイン試行を制限するにはどうすればよいですか? 【やるべきですか?】
公開: 2024-06-24WordPress は、Web サイトを構築するための人気のあるプラットフォームです。 この人気には、ハッカーがサイトにログインする際に行うセキュリティ リスクが伴います。 彼らがサイトにログインできないようにするには、WordPress でのログイン試行を制限できます。 ログイン試行を制限します。 今日は、WordPress でのログイン試行を制限する方法と、それが重要である理由について説明します。 詳細を見ていきましょう。
WordPress でのログイン試行の制限について
あなたまたは他の誰かがしようとするたびに、 WordPressサイトにログインすると、ログイン試行としてカウントされます。 詳細が正しければ、サイトにアクセスできます。 そうでない場合は、もう一度試すチャンスがあります。
WordPress でのログイン試行の制限とは、WordPress サイトへのログイン試行回数に制限を設定することを意味します。 間違ったユーザー名またはパスワードを何度も入力すると、ロックアウトされます。 これにより、ハッカーがログイン情報を推測するのを防ぐことができます。
ハッカーは、ブルート フォース攻撃と呼ばれるものを使用して、さまざまな組み合わせを試してパスワードを推測する可能性があります。 彼らはコンピューター プログラムを使用して、短時間で多くの推測を行います。 これを防ぐには、WordPress サイトでのログイン試行を制限する必要があります。これについては以下で説明します。
WordPress でログイン試行を制限する必要があるのはなぜですか?
WordPress サイトのセキュリティを確保することは、Web サイト所有者にとって最優先事項である必要があります。 効果的な方法の 1 つは、WordPress でのログイン試行を制限することです。 これにより、Web サイトを不正アクセスから保護できます。 WordPress サイトでログイン試行の制限が必要な理由を見てみましょう。
攻撃からの保護
ハッカーは、正しいパスワードを見つけるまで、さまざまなパスワードを試します。これは、ドアのロックを解除するためにキーホルダーのすべてのキーを試すようなものです。 ログイン試行を制限することで、ハッカーが何度も推測することを防ぎ、正しいパスワードを推測する可能性を大幅に減らします。 このセキュリティ対策により、サイトへの不正アクセスが困難になります。
強化されたデータセキュリティ
誰かがログインしようとするたびに、サイトに保存されている機密情報にアクセスしようとします。 ログイン試行を制限することで、このデータに追加の保護層を追加できます。 これは、データの整合性と機密性を維持するのに役立つため、e コマース サイトやユーザーの個人情報を扱う Web サイトにとって非常に重要です。
ボット攻撃を防ぐ
ログイン試行の多くは、パスワードを迅速かつ効率的に推測することを目的としたボットによって自動化されています。 ログイン試行を制限することで、これらのボットを効果的にブロックし、自動攻撃からサイトを保護できます。 ボット攻撃を防止すると、サイトのセキュリティが確保されるだけでなく、不必要なトラフィックとリソースの使用量が削減され、全体的なパフォーマンスも向上します。
ユーザーの信頼の向上
ログイン試行の制限など、堅牢なサイバー セキュリティ対策が講じられていることをユーザーが知ると、Web サイトを信頼する可能性が高くなります。 この信頼は、訪問者が自分のデータが安全であると確信するため、ユーザー エンゲージメントとロイヤルティの向上につながる可能性があります。 この信頼を構築することは、肯定的な評判を維持し、ユーザーがサイトを操作するよう促すために不可欠です。
アカウント侵害のリスクの軽減
ログイン試行を制限しないと、ハッカーは成功するまでログインを試行し続けることができ、ユーザー アカウントを侵害する可能性があります。 制限を設定すると、アカウントがハッキングされるリスクが軽減され、ユーザー データが保護され、サイトの整合性が維持されます。 これは、ユーザーの機密情報を扱ったり、ユーザー固有のサービスを提供したりする Web サイトにとって特に重要です。
最小限のダウンタイム
大量のログイン試行によりサーバーに負荷がかかり、サイトのダウンタイムが発生する可能性があります。 ログイン試行を制限すると、サーバーの負荷が軽減され、サイトが正規ユーザーにアクセス可能な状態を維持できるため、これを防ぐことができます。 ダウンタイムを最小限に抑えることは、ポジティブなユーザー エクスペリエンスを維持し、収益やエンゲージメントの潜在的な損失を防ぐために非常に重要です。
保安基準への準拠
WordPress でログイン試行を制限するなどの対策を実装すると、さまざまなセキュリティ標準やベスト プラクティスに準拠することができます。 このコンプライアンスは、業界の規制を満たし、Web サイトの信頼性を維持するために重要です。 セキュリティ標準を遵守することは、サイトを保護するだけでなく、安全なオンライン環境を維持するという取り組みを示すことにもなります。
これらの実践を組み込むことで、WordPress サイトのセキュリティを大幅に強化し、不正アクセスやサイバー脅威から確実に保護することができます。 ログイン試行を制限することは、オンライン プレゼンスのための堅牢な防御システムを構築するためのシンプルかつ強力なステップです。
ログイン試行は何回まで許可する必要がありますか?
ログイン試行回数に制限を設定することをお勧めします。 一般的には、3 ~ 5 回の試行を許可してから、それ以上の試行をブロックします。 これにより、攻撃者を寄せ付けずに、本物のユーザーに公平なチャンスが与えられます。 WordPress サイトでのログイン試行を制限する場合は、セキュリティと利便性のバランスを考慮してください。
ステップバイステップ ガイド: ログイン試行を制限するにはどうすればよいですか?
WordPress のログイン試行制限をサイトに実装するにはさまざまな方法があります。最も簡単な 2 つの方法について説明します。1 つはログイン試行制限プラグインを使用する方法、もう 1 つは function.php ファイルにカスタム コードを使用してログインを制限する方法です。を試み、サイトの安全性をさらに高めます。
方法 1: WordPress のログイン試行制限プラグイン
プラグインの使用は、WordPress でのログイン試行を制限する最も簡単で効果的な方法です。 WordPress サイトへのログイン試行を制限するために利用できるプラグインが多数あります。 Limit Login Attempts Reloadedプラグインを使用して、ログイン試行を制限する方法を示します。 したがって、ステップバイステップのガイドに従って、サイトでこのプラグインを使用してください。
ステップ 1: Limit Login Attempts Reloaded プラグインをインストールする
WordPress ダッシュボードの左側のメニューにアクセスし、 「プラグイン」 → 「新規追加」にカーソルを合わせて、 「ログイン試行回数の制限」プラグインを検索します。
プラグインを見つけたら、 「インストール」ボタンをクリックして、 次に、サイトのプラグインを「アクティブ化」します。 プラグインがサイトで有効になります。
ステップ 2: プラグイン設定を構成する
アクティブ化した後、ナビゲーション バーから「ログイン試行の制限」プラグインを見つけ、プラグインの「設定」に移動してプラグイン設定をカスタマイズします。
次に、少し下にスクロールして「ローカルアプリ」→「ロックアウト」を見つけ、 「許可される再試行」と「分ロックアウト」を設定として設定します。 サイトの安全性を高めるために試せるオプションは他にもたくさんあります。
ステップ 3: プラグインをテストする
次に、WordPress アカウントからログアウトし、間違った認証情報でログインして、プラグインが期待どおりに機能していることを確認します。
方法 2: functions.phpにカスタム コードを使用する
WordPress テーマの function.php ファイルを使用すると、サイトにカスタム機能を追加できます。 カスタム コードを追加すると、ログイン試行を制限できます。
ステップ 1:functions.php ファイルにアクセスする
このファイルにアクセスするには、WordPress ダッシュボードから[外観] > [テーマ ファイル エディター]に移動し、 functions.phpファイルを選択します。 変更を加える前に、functions.php ファイルを必ずバックアップしてください。
ステップ 2: カスタム コードを追加する
次のコードをfunctions.phpファイルに追加します。
<?php /** * CLASS LIMIT LOGIN ATTEMPTS * Prevent Mass WordPress Login Attacks by setting locking the system when login fails. * To be added in functions.php or as an external file. */ if ( ! class_exists( 'Limit_Login_Attempts' ) ) { class Limit_Login_Attempts { var $failed_login_limit = 3; //Number of authentication accepted var $lockout_duration = 1200; //Stop authentification process for 30 minutes: 60*30 = 1800 var $transient_name = 'attempted_login'; //Transient used public function __construct() { add_filter( 'authenticate', array( $this, 'check_attempted_login' ), 30, 3 ); add_action( 'wp_login_failed', array( $this, 'login_failed' ), 10, 1 ); } /** * Lock login attempts of failed login limit is reached */ public function check_attempted_login( $user, $username, $password ) { if ( get_transient( $this->transient_name ) ) { $datas = get_transient( $this->transient_name ); if ( $datas['tried'] >= $this->failed_login_limit ) { $until = get_option( '_transient_timeout_' . $this->transient_name ); $time = $this->when( $until ); //Display error message to the user when limit is reached return new WP_Error( 'too_many_tried', sprintf( __( '<strong>ERROR</strong>: You have reached authentification limit, you will be able to try again in %1$s.' ) , $time ) ); } } return $user; } /** * Add transient */ public function login_failed( $username ) { if ( get_transient( $this->transient_name ) ) { $datas = get_transient( $this->transient_name ); $datas['tried']++; if ( $datas['tried'] <= $this->failed_login_limit ) set_transient( $this->transient_name, $datas , $this->lockout_duration ); } else { $datas = array( 'tried' => 1 ); set_transient( $this->transient_name, $datas , $this->lockout_duration ); } } /** * Return difference between 2 given dates * @param int $time Date as Unix timestamp * @return string Return string */ private function when( $time ) { if ( ! $time ) return; $right_now = time(); $diff = abs( $right_now - $time ); $second = 1; $minute = $second * 60; $hour = $minute * 60; $day = $hour * 24; if ( $diff < $minute ) return floor( $diff / $second ) . ' secondes'; if ( $diff < $minute * 2 ) return "about 1 minute ago"; if ( $diff < $hour ) return floor( $diff / $minute ) . ' minutes'; if ( $diff < $hour * 2 ) return 'about 1 hour'; return floor( $diff / $hour ) . ' hours'; } } } //Enable it: new Limit_Login_Attempts(); ?>
ここで、サイトにアクセスするまでの時間やログイン試行回数をカスタマイズできます。
ステップ 3: 変更を保存し、ログイン試行回数を超えてみる
次に、 functions.phpファイルへの変更を保存し、ダッシュボードからログアウトして、間違った資格情報でログインしてみます。 このコードはセッションを開始し、ログイン試行を追跡します。 最大試行回数に達すると、ユーザーは 20 分間ロックアウトされます。
ログイン試行を制限し、ブルート攻撃からサイトを保護
WordPress でのログイン試行を制限することは、サイトを保護する簡単かつ効果的な方法です。 ハッカーを阻止し、ユーザーデータを保護し、サイトのスムーズな運営を維持するのに役立ちます。 プラグインを使用する場合でも、カスタム コードを追加する場合でも、サイトを保護するための措置を講じることが重要です。 WordPress サイトでのログイン試行を制限することで、サイトをより安全かつ安全にすることができます。
このブログは役に立ちましたか? このような役立つブログをさらに入手するには、ブログを購読してください Facebook コミュニティに参加して最新情報をすべて入手してください。