2026年10月5日

2026年10月5日

WordPressのwp-login.phpへのアクセスを制限する方法

はじめに

WordPressサイトの管理画面は、攻撃者にとって魅力的な標的です。特にwp-login.phpへの不正アクセスを防ぐことは重要であり、これによりログインページ自体に対するスパムやハッキングからの保護が可能になります。

症状・背景

このテーマが必要になる主な場面:

  • WordPressサイトの管理画面への不審なアクセスが多く報告される
  • ログインページがDDoS攻撃を受けている可能性がある
  • セキュリティスキャンにより、wp-login.phpに対する脆弱性が指摘された
  • 他のセキュリティプラグインでは十分な保護が得られない

手順・設定方法

ステップ1: .htaccessファイルを編集してアクセス制限をかける

# WordPressのルートディレクトリに移動します。
cd /var/www/html/wordpress/

# 現在の.htaccessファイルをバックアップとして保存します。
cp .htaccess .htaccess.backup

# 新しいアクセス制限を含む新しい.htaccessファイルを作成または編集します。
nano .htaccess

ステップ2: 主要オプション/設定

# wp-login.phpへのアクセスを特定のIPアドレスに限定するルールを追加します。
Order Deny,Allow
Deny from all
Allow from 192.168.1.50 # 特定のIPアドレスのみ許可

# 上記の設定でIPアドレスが変更された場合、再び適用するために.htaccessファイルを保存します。
Ctrl+O > Enterキー

ステップ3: 応用/組み合わせ

# wp-login.phpへのアクセスを特定の時間帯に制限するルールを作成します。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{TIME_HOUR} >=0 [OR]
RewriteCond %{TIME_HOUR} <23
RewriteRule ^wp-login\.php$ - [F,L]
</IfModule>

# 上記の設定を保存します。
Ctrl+O > Enterキー

ステップ4: 実践/トラブルシュート/監視

# 既存のアクセス制限が適切に機能しているか確認するためにApacheエラーログをチェックします。
tail -f /var/log/apache2/error.log | grep wp-login.php

注意事項

  • IPアドレスベースのアクセス制限は、固定IPからしかアクセスできない場合にのみ有効です。
  • 時間帯によるアクセス制限では、スタッフがログイン可能な時間帯を指定する必要があります。
  • 定期的にセキュリティスキャンを行い、新しい脅威に対応できるようにします。
  • ログファイルは定期的に監視し、異常なアクセスパターンがないか確認してください。

まとめ

1. IPベースの制限: 特定のIPアドレスからのみwp-login.phpへのアクセスを許可できます。

2. 時間帯による制限: 定時勤務の場合、夜間や休日中にログインページへの不必要なアクセスを防ぐことができます。

3. セキュリティスキャン: 定期的なスキャンにより、潜在的な脅威を見つけることが可能になります。

4. ログファイルの監視: アクセスパターンに変化があるかどうかを確認し、異常な動きがあれば即座に対応します。

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ
▲