「WordPressサイトが乗っ取られる」そんなニュースを耳にしたことはありませんか?
特にログインページは攻撃者の標的になりやすい部分です。本記事では、簡単にできる2つの対策方法を解説します。
ログインページの保護とユーザー名の非公開化
この記事では、WordPressサイトを不正アクセスから守るための2つの対策をご紹介します。
これらのセキュリティ対策を導入することで、WordPressサイトの安全性を大幅に向上させることが可能です。
対策1:ログインページのURLを変更する
WordPressの初期設定では、ログインページのURLが公開されているのと変わりません。このままだと不正アクセスのリスクが高まります。
WPS Hide Loginというプラグインを使えば、ログインページのURLを簡単に変更できます。
- STEP 1
WordPress管理画面で「設定 > WPS Hide Login」を選択します。
- STEP 2
「ログインURL」に新しいログインページのURLを入力します。
「リダイレクトURL」に、初期設定のログインページや管理画面にアクセスされた場合のリダイレクト先のURLを入力します。 - STEP 3
設定を保存します。
対策2:ユーザー名(ログインID)を隠す
WordPressの仕様では、以下の方法でユーザー名が確認されてしまいます。
これを防ぐには、テーマの「functions.php」ファイルに以下のコードを追加します。
//author pageを非表示
function disable_author_archive_query() {
// 管理画面ではない場合のみ実行
if ( !is_admin() && preg_match('/author=([0-9]*)/i', $_SERVER['QUERY_STRING']) ) {
wp_redirect( home_url() );
exit;
}
}
add_action('init', 'disable_author_archive_query');
//WP REST APIによってユーザ名が公開されるのをブロック
function my_filter_rest_endpoints( $endpoints ) {
if ( isset( $endpoints['/wp/v2/users'] ) ) {
unset( $endpoints['/wp/v2/users'] );
}
if ( isset( $endpoints['/wp/v2/users/(?P[\d]+)'] ) ) {
unset( $endpoints['/wp/v2/users/(?P[\d]+)'] );
}
return $endpoints;
}
add_filter( 'rest_endpoints', 'my_filter_rest_endpoints', 10, 1 );
これにより、不正ログインリスクを大幅に軽減できます。
おわりに
WordPressサイトのセキュリティは、管理者の努力次第で強化できます。
今回紹介した対策を早速実施して、安全なサイト運営を目指しましょう!
コメント