2026年5月20日
2026年5月20日
iThemes Security(現Kadence Security)の設定方法:総当たり対策・ログインURL変更・ファイル変更検知
iThemes Security は WordPress のセキュリティプラグインで、その後 Solid Security に改名され、2026年10月時点の WordPress.org では「Kadence Security」の名前で公開されています。名前は変わってもプラグインのスラッグは better-wp-security のままなので、既存サイトは通常の更新で新しい名前に切り替わります。
この記事では、総当たり攻撃(ブルートフォース)対策、ログイン URL の変更(Hide Backend)、ファイル変更検知、追加の強化設定の順に、設定項目の意味と既定値を説明します。項目名と既定値はプラグインの設定定義(2026年10月時点の 10.0 系)で確認したもので、画面のラベルは英語表記のことがあります。
インストールと初期設定
WordPress 管理画面の「プラグイン」→「新規プラグインを追加」で「Kadence Security」を検索してインストールするか、WP-CLI で入れます。
wp plugin install better-wp-security --activate
有効化すると、管理画面に「Security」メニューが追加され、最初はセットアップ(Setup)画面が開きます。サイトの種類などを答えて初期設定を終えると、「Security」メニューに Dashboard・Site Scans・Firewall・Vulnerabilities・User Security・Settings・Tools・Logs が並びます。個々の機能は「Security」→「Settings」で有効化・調整します。
総当たり攻撃のロックアウトを設定する
ログインの失敗回数で IP アドレスやユーザーを一時的に締め出す機能は「Local Brute Force」です。既定で有効になっています。
| 項目 | 既定値 | 意味 |
|---|---|---|
| Max Login Attempts Per IP | 5 | 1つの IP からの失敗がこの回数を超えるとロックアウト。0 にすると記録のみ |
| Max Login Attempts Per User | 10 | 1つのユーザー名に対する失敗の上限。IP をまたいで数えるため、正規の利用者も締め出されることがある |
| Minutes to Remember Bad Login (check period) | 5 | 失敗を数える時間(分) |
| Automatically lockout "admin" user | 無効 | ユーザー名 admin でログインを試みた IP をすぐにロックアウトする |
ロックアウトの時間や繰り返し攻撃する IP の扱いは、全機能で共通の「Global Settings」の Lockouts 欄で決めます。
| 項目 | 既定値 | 意味 |
|---|---|---|
| Minutes to Lockout | 15 | ロックアウトの継続時間(分) |
| Ban Repeat Offender | 有効 | ロックアウトが一定回数に達した IP を恒久的な禁止リストに加える |
| Ban Threshold | 3 | 恒久禁止までのロックアウト回数 |
| Days to Remember Lockouts | 7 | ロックアウトを覚えておく日数 |
| Authorized IPs | 空 | ロックアウトしない IP アドレス。管理者の固定 IP を入れておく |
ほかのサイトで攻撃元と判定された IP をまとめて遮断する「Network Brute Force」もあります。有効にするとプラグイン提供元のネットワークと通信するため、利用条件を確認してから有効にしてください。
現在のロックアウトをデータベースで確認する
ロックアウトは wp_itsec_lockouts テーブル(wp_ はサイトの接頭辞)に記録されます。管理画面に入れないときは、WP-CLI で有効なロックアウトを確認できます。
# 有効中のロックアウトを新しい順に10件表示する
wp db query "SELECT lockout_id, lockout_type, lockout_host, lockout_username, lockout_start, lockout_expire FROM $(wp db prefix)itsec_lockouts WHERE lockout_active = 1 AND lockout_expire_gmt > UTC_TIMESTAMP() ORDER BY lockout_start DESC LIMIT 10"
自分の IP がロックアウトされた場合は、Minutes to Lockout の時間が過ぎるのを待つのが最も安全です。急ぐ場合、プラグインが管理画面でロックアウトを解除するときと同じく、該当行の lockout_active を 0 にすると解除できます(123 は上のコマンドで確認した lockout_id に置き換えます)。
wp db query "UPDATE $(wp db prefix)itsec_lockouts SET lockout_active = 0 WHERE lockout_id = 123"
管理画面に入れる状態なら、「Security」→「Firewall」でロックアウトや禁止中の IP を確認・解除するほうが確実です。
ログイン URL を変更する(Hide Backend)
Hide Backend は wp-login.php の代わりに別の URL でログイン画面を出す機能です。「Security」→「Settings」の詳細設定(Advanced)の中にあります。
| 項目 | 既定値 | 意味 |
|---|---|---|
| Hide Backend | 無効 | 機能の有効化 |
| Login Slug | wplogin |
新しいログイン URL のスラッグ。login・admin・dashboard・wp-admin・wp-login.php は使えない |
| Register Slug | wp-signup.php |
ユーザー登録画面の URL |
| Enable Redirection | 有効 | ログインしていない人が wp-admin を開いたとき、403 エラーの代わりに別の URL へ転送する |
| Redirection Slug | not_found |
上の転送先 |
たとえば Login Slug を推測されにくい文字列にすると、ログイン画面は https://example.com/推測されにくい文字列 になります。変更したら、保存する前に新しい URL をパスワード管理ツールなどに控えてください。
URL を忘れた場合は、プラグインの設定が itsec-storage というオプションにまとめて保存されているので、WP-CLI で取り出せます。
# Hide Backend の Login Slug を表示する
wp option pluck itsec-storage hide-backend slug
WP-CLI が使えない場合は、FTP などで wp-content/plugins/better-wp-security のフォルダ名を一時的に変えてプラグインを止めれば、通常の wp-login.php に戻ります。
Hide Backend の説明にもあるとおり、変更後の URL は、プライバシー関連の確認メールやテーマのログインフォームなどから外部に知られることがあります。ボットのアクセスを減らす効果はありますが、それだけに頼らず、二要素認証と組み合わせてください。
ファイル変更検知を設定する
「File Change」は、サイトのファイルが予期せず変更されたときに知らせる機能です。既定では無効なので、「Security」→「Settings」で有効にします。
| 項目 | 既定値 | 意味 |
|---|---|---|
| Excluded Files and Folders | 空 | 検査から外すファイル・フォルダー(キャッシュの保存先など、頻繁に変わる場所) |
| Ignore File Types | ログ・翻訳ファイル(.mo / .po)・画像・音声・動画などの拡張子 | 変更を検査しない拡張子 |
「Ignore File Types」は検査しない拡張子の一覧です。攻撃の多くは PHP や JavaScript などのテキストファイルを書き換えるため、.php や .js をこの一覧に入れないでください。キャッシュプラグインの保存先のように毎日ファイルが変わる場所は、Excluded Files and Folders に入れておくと誤検知が減ります。
変更が見つかったときの通知先やメールの頻度は、プラグインの通知設定(Notification Center)で確認・変更します。
追加の強化設定(System Tweaks・WordPress Tweaks)
詳細設定(Advanced)には、サーバー設定と WordPress の挙動を絞る項目があります。
System Tweaks
| 項目 | 内容 |
|---|---|
| Protect System Files | wp-config.php などのシステムファイルへの直接アクセスを防ぐ |
| Disable Directory Browsing | ファイル一覧の表示を無効にする |
| Disable PHP in Uploads | アップロードフォルダーでの PHP 実行を禁止する |
| Disable PHP in Plugins / Disable PHP in Themes | プラグイン・テーマのフォルダー内の PHP を直接実行させない |
これらはサーバーの設定ファイル(Apache なら .htaccess)にルールを書き込んで実現します。プラグインやテーマの中には自分のフォルダー内の PHP ファイルを直接呼び出すものがあるため、Disable PHP in Plugins / Themes を有効にした後は、サイトの表示や問い合わせフォームなどの動作を確認してください。書き込まれたルールは「Security」→「Tools」で確認できます。
WordPress Tweaks
| 項目 | 既定値 | 内容 |
|---|---|---|
| Disable File Editor | 有効 | 管理画面のテーマ・プラグインのファイル編集機能を無効にする |
| XML-RPC | Enable XML-RPC | Disable XML-RPC / Disable Pingbacks / Enable XML-RPC から選ぶ |
| REST API | Default Access | Restricted Access にすると、ログインしていない人が REST API から取得できるデータの多くを制限する |
| Login with Email Address or Username | 両方 | ログインに使える識別子を限定する |
| Force Unique Nickname | 無効 | ニックネームをユーザー名と別にさせ、表示名からユーザー名を推測されにくくする |
| Disable Extra User Archives | 無効 | 投稿のないユーザーの著者アーカイブを表示しない |
XML-RPC は Jetpack やスマートフォンアプリ、外部ブログツールからの投稿で使われます。これらを使っていなければ Disable XML-RPC、ピンバックだけ止めたい場合は Disable Pingbacks を選びます。
注意事項
- 設定を変える前に、サイトのファイルとデータベースをバックアップしてください。特に
.htaccessにルールを書き込む機能は、サーバー環境によってはサイトが表示されなくなることがあります。 - Wordfence など、ファイアウォールやログイン制限を持つ別のセキュリティプラグインと同時に使うと、同じ処理が二重に動いたり、ロックアウトの原因が分かりにくくなったりします。機能が重なるプラグインはどちらか一方にしてください。
- Hide Backend やロックアウトで締め出されたときに備え、WP-CLI か FTP でサーバーに入れる手段を確保しておいてください。
まとめ
- iThemes Security は Solid Security を経て、2026年10月時点では Kadence Security。スラッグは
better-wp-securityのまま - 総当たり対策は Local Brute Force(IP ごと5回・ユーザーごと10回が既定)と Global Settings のロックアウト時間・恒久禁止で調整する。管理者の固定 IP は Authorized IPs へ
- Hide Backend の URL は
wp option pluck itsec-storage hide-backend slugで確認できる。二要素認証と併用する - File Change の Ignore File Types は「検査しない」一覧。
.phpや.jsは入れない
関連記事: