【SS】All In One WP Security & Firewall厳選設定とエラー避け

AIOWPS設定

優秀なのはわかるが、多機能のため機能選択に悩まされる(目次絶望)。

競合してしまう可能性もあり、極力エラーを避けつつ、機能すべてを確認したうえで当サイトのセキュリティ知識と照らし合わせ、理解した意味を載せて以下の機能などを設定、強化していく。

  • 総当たり攻撃(ブルートフォースアタック)対策をキツく
    • XML-RPC無効化など
  • ファイアウォール
  • ログインページ変更
  • ファイル変更スキャン
  • 付属していないマルウェア(ウイルス)スキャンを他プラグインで代用

とりあえず多機能すぎて時間がかかるので、厳選した推奨設定を参照。

日本語化はGoogle Chrome標準の翻訳機能(右クリック → 日本語に翻訳)でおこなえるので、細かいボタンなどは(主に「Save」保存ボタン)翻訳して使おう。

なお、オールインワンの名に恥じぬほど機能が被りまくるため、SiteGuard WP Pluginは併用する必要なし。

休日と目次をうまく活用し、すべての機能をなんとなく理解して設定していこう。

なぜか保存した設定をImport(読み込み)できないので注意。

まだインストールしていないのなら、以下の記事で魅力や究極の組み合わせを伝えている。

スポンサーリンク
  1. WP Security
    1. 厳選した推奨設定まとめ(ハイスピード)
    2. Dashboard (ダッシュボード)
      1. System Info(システム情報)
      2. Locked IP Addresses(ロックされたIPアドレス)
      3. Permanent Block List(永久ブロックリスト)
      4. AIOWPS Logs(AIOWPSログ)
    3. Settings(設定)
      1. General Settings(一般設定)
      2. .htaccess File
      3. wp-config.php File
      4. WP Version Info(WPバージョン情報削除)
      5. Import/Export(読み込み/書き出し)
      6. Advanced Settings(詳細設定)
    4. User Accounts(ユーザーアカウント)
      1. WP Username(ユーザー名変更指摘)
      2. Display Name(投稿・コメント欄表示名変更)
      3. Password(パスワード強度確認)
    5. User Login(ユーザーログイン)
      1. Login Lockdown(ログインロック)
      2. 万が一自分が締め出された・ログインできない
      3. Failed Login Records(失敗ログイン記録)
      4. Force Logout(強制ログアウト)
      5. Account Activity Logs(アカウント活動ログ)
      6. Logged In Users(ログインユーザー追い出し)
    6. User Registration(ユーザー登録)
      1. Manual Approval(ユーザー手動承認)
      2. Registration Captcha(ユーザー登録キャプチャ)
      3. Registration Honeypot(ユーザー登録ハニーポット:罠)
    7. Database Security(データベースセキュリティ)
      1. DB Prefix(データベース接頭辞変更)
      2. DB Backup(データベースバックアップ)
    8. Filesystem Security(ファイルシステムセキュリティ)
      1. File Permissions(ファイルパーミッション検定)
      2. PHP File Editing(ダッシュボードでPHPファイル編集禁止)
      3. WP File Access(WP初期ファイルアクセス禁止)
      4. Host System Logs(ホストシステムログ)
    9. WHOIS Lookup(フーイズルックアップ)
    10. Blacklist Manager (ブラックリストマネージャー)
      1. Ban Users(禁止ユーザー設定)
    11. Firewall(ファイアウォール)
      1. Basic Firewall Rules(基本的なファイアウォールルール)
      2. Additional Firewall Rules(追加のファイアウォールルール)
      3. 6G Blacklist Firewall Rules(6Gブラックリストファイアウォールルール)
      4. Internet Bots(偽Googleボットブロック)
      5. Prevent Hotlinks(ホットリンクを防ぐ)
      6. 404 Detection(404攻撃検出)
      7. Custom Rules(カスタムルール)
    12. Brute Force(総当たり攻撃対策)
      1. Rename Login Page(ログインページ名変更)
      2. Cookie Based Brute Force Prevention(クッキーベース総当たり防止)
      3. Login Captcha(ログインキャプチャ)
      4. Login Whitelist(ログインホワイトリスト)
      5. Honeypot(ハニーポット:罠)
    13. SPAM Prevention (スパム防止)
      1. Comment SPAM(コメントスパム対策)
      2. Comment SPAM IP Monitoring(スパムIP監視)
      3. BuddyPress
      4. BBPress
    14. Scanner(スキャナー)
      1. File Change Detection(ファイル変更検出)
      2. Malware Scan(マルウェアスキャン)
    15. Maintenance(メンテナンス)
      1. Visitor Lockout(訪問者追い出し)
    16. Miscellaneous(その他)
      1. Copy Protection(コンテンツコピー防止)
      2. Frames(iFrame丸ごと表示保護)
      3. Users Enumeration(ユーザーID隠し)
      4. WP REST API

WP Security

WordPressダッシュボード左側の「WP Security」にカーソルを乗せると、オールインワンWPセキュリティ&ファイアウォール(略称AIOWPS)の15項目があらわになるので、上から説明していく。

初めて設定する方は、丁寧に上から初めていこう。

15項目機能一覧

多機能すぎて迷うため、迷ったら冒頭の目次に戻り、該当機能へGO。

ハイスピードシステム搭載。

厳選した結果、微妙な機能の説明を省いた。最初からすべてを網羅したい方は、Dashboard (ダッシュボード)まで読み飛ばし推奨。

別ページに移動するとチェックが消えるので、戻りすぎないように!

15項目機能一覧
さきほどと同じ画像を置いておく

User Login(ユーザーログイン)所属。

User Registration(ユーザー登録)所属。

Filesystem Security(ファイルシステムセキュリティ)所属。

Firewall(ファイアウォール)所属。

Brute Force(総当たり攻撃対策)所属。

SPAM Prevention (スパム防止)所属。

Scanner(スキャナー)所属。

Miscellaneous(その他)所属。

説明を大幅に省いているため、エラーになったら原因を突き止めよう。

このリストはエラー後にお世話になる&しなくても良い機能を完全無視している。具体的には、他サイトでよく推奨されるDB Prefix(データベース接頭辞変更)Users Enumeration(ユーザーID隠し)WP REST APIのこと。

Dashboard (ダッシュボード)

ダッシュボード

無視。

まったく参考にならないメーターや、ログイン成功履歴を確認できる。

当サイトの推奨設定だと330点くらいしか取れない。

System Info(システム情報)

サイト・PHP・活動プラグインを確認できる。

エラーで助けてもらう際に、提示して答えを早く獲得できるかもしれないが、公開しても良い情報があるかわからないため、1つずつ検索して「ネット上に転がっている情報か」調べる必要がある。

セキュリティあるある:細かいところで初心者潰し。

Locked IP Addresses(ロックされたIPアドレス)

総当たり攻撃(ブルートフォースアタック)でロックされたIPアドレス一覧が表示され、解除や削除ができる。

その場合は「一括操作」の部分を「Unlock(ロック解除)」か「Delete(削除)」どちらでも良いので、チェックをして「適用」→ その後に何やら確認が出現し、OKを押して完了。

Permanent Block List(永久ブロックリスト)

今は無視。

Auto Block SPAMMER IPs(スパム自動IPブロック)の方で設定すると、ここに記述されていく。

解除する際はPermanently Blocked IP Addresses下にある「一括操作」を「Unblock」→「適用」。

AIOWPS Logs(AIOWPSログ)

無視。

このプラグインすべての活動情報を閲覧できる。

Settings(設定)

設定

バックアップ系読み込みがことごとくできないため(設定ファイル読み込み不可がキツい)、使用する際は「修正されてたらいいな」の気持ちで使おう。

もし修正されていたら、コメント欄で報告をお待ちしている。

General Settings(一般設定)

WP Security Plugin

無視。

機能説明をされ、この記事の方が詳しい。

Disable Security Features(セキュリティ機能無効)

すべてを初期設定に戻す。

設定をExport AIOWPS Settings(設定書き出し)してからしよう。

書き出したところで読み込めない、謎バグ発生中。

Disable All Firewall Rules(すべてのファイアウォールを無効)

複数あるファイアウォールを初期設定に戻す。

設定をExport AIOWPS Settings(設定書き出し)してからしよう。

書き出したところで読み込めないので、自力で.htaccessを触ることになる。

ファイアウォールエラーはよくある話なので、エラーになったら「Disable All Firewall Rules」をクリック。

上にあるDisable Security Features(セキュリティ機能無効)と絶対に間違えないこと! 初期設定に戻って絶望する。

Debug Settings(デバッグ設定)

デバッグを有効にできる。

バグを調べる設定で、FTPの「public_html/自サイト名/wp-content/plugins/all-in-one-wp-security-and-firewall/logs」の中にデバッグログファイルが作成される。

なお、プラグイン更新時に内容はリセット。

終了したら、必ずチェックを外すこと!

同じような機能でエラーログを確認できる、Host System Logs(ホストシステムログ)というものがある。

バグとエラーの違いだろうか。

.htaccess File

Save the current .htaccess file(現在の.htaccessを保存)

「Backup .htaccess File」を押すと、FTPの「public_html/自サイト名/wp-content/aiowps_backups」フォルダに現在の.htaccessがバックアップされる。

テスト前に押しておくと幸せだが、残念! このプラグインからはセキュリティの関係上アップロードできない。

ぷっぷ
ぷっぷ

どうしてなの……

次の方法で復元していこう。

Restore from a backed up .htaccess file(バックアップした.htaccessを復元)

セキュリティ上の都合により、このプラグインからはアップロードできない。

最悪何も表示されなくなるため、ある程度理解できていないとやらかす可能性大。どっちみちやらないと覚えないので、リスクを考慮した上での挑戦を推奨。

仕方がないのでFTPの「public_html/自サイト名/wp-content/aiowps_backups」に作成した.htaccessか、準備した過去の.htaccessを「public_html/自サイト名」にある.htaccessに上書きしよう。

「public_html/自サイト名」にある.htaccessを上書きした際のミスが怖いので、先にその場所にある.htaccessを別の場所にダウンロード、その後戻したい.htaccessで上書きすること!

wp-config.php File

こちらも復元がセキュリティ上の理由により使えず、何の役にも立たない。

次のWP Version Info(WPバージョン情報)まで読み飛ばそう。

Save the current wp-config.php file(現在のwp-config.phpを保存)

暗号化されないtxtファイルで出力されるため、取扱い注意。

このプラグインではそれほど役に立たないため基本は無視でいいが、「Backup wp-config.php File」を押すとtxtファイルで出力される。

Restore from a backed up wp-config file(バックアップしたwp-configを復元)

無視。

「wp-config.php.backup.txt」と作成したバックアップは、WordPressの仕様なのか「セキュリティ上の理由により……」で弾かれてアップロードできない。

元の場所がわかる方はこんなところでしないので、やはり無視。

WP Version Info(WPバージョン情報削除)

無視。

攻撃する際、「先にバージョン確認の決め打ちタイプ」もあるかもしれないが、通常は攻撃を自動で仕掛けて「通ったら総攻撃」だとしか思えない。

秘匿系セキュリティのため、効果はフワフワしている。

Import/Export(読み込み/書き出し)

なんと読み込みできないので、できるようになったらコメント欄で教えてほしい。

Export AIOWPS Settings(設定書き出し)

「Export AIOWPS Settings」を押すと、設定ファイルがダウンロードされる。

現在は書き出せても読み込みさせられないため、存在が無意味。

Import AIOWPS Settings(設定読み込み)

2019年1月9日の時点で読み込めない。

修正されているか私が間違えているだけかもしれないので、1月9日以降のアップデートの時代が来たら試そう。

Select Your Import Settings Fileで「ドロップ」・「URLのその他ファイル」どちらも使えず、画像扱いのような「投稿に挿入」と「すべての変更を保存」という意味不明なボタンが出現し、アップロードしてもメディアライブラリに残りつつ適用されない大迷惑が炸裂する。

ぷっぷ
ぷっぷ

追加されたファイルはメディアライブラリにあるから、ちゃんと消してね!

「Copy/Paste Import Data」でtxtファイルに書かれている文字列をコピペしても駄目で、試した結果は以下。

  • すべてをコピペ → エラー
  • 最初と最後の{}を除いた文字列だけコピペ → 成功! → 何も読み込まれていない
  • 最初と記号囲みすべてを除いた文字列だけコピペ → 成功! 何も読み込まれていない

詰み。

設定しなおすなら、ハイスピードシステムで設定していこう。

Advanced Settings(詳細設定)

通常無視、Cloudflare(クラウドフレア)利用者は注目。

この機能で「訪問者のIPがCloudflareのIPに書き換えられる現象」を変更できそうだ。

「コメントスパムをIPブロックしたいのに、Cloudflareを介しているためIPがフレア化する」なんてときは、残りの4つを試してみよう。

この機能が失敗した場合、自動で初期設定に戻ってくれる。

User Accounts(ユーザーアカウント)

ユーザーアカウント

WP Username(ユーザー名変更指摘)

adminから変更することができる?(おそらく変更できず、ただの指摘)

当サイトのユーザーIDが「gM HxeIg1R@ctdS@54WF9VnozM_.SrhU」であるからなのか、変更できなかった。

仮にadminでも、上記ユーザー名レベルのパスワードなら問題なく、これからどんどん安全にしていく。

Display Name(投稿・コメント欄表示名変更)

投稿やコメントする際に「ユーザーID表記」にせず、名前を変えるようせがまれる。

利便性の観点から、「ブログの表示名」は人間にわかりやすいよう表示するべきなので、変更していなかったらしてこよう。

Password(パスワード強度確認)

パスワード強度を図れるだけなので無視。

WordPressプラグインでやることではなく、当サイトは32桁の大小英数字記号含み以上のパスワードを推奨しているし、パスワード管理ソフトを使用している前提で話している。

ぷっぷ
ぷっぷ

強化するのは、プラグインなしで可能なことが先だよ!

万が一使用していなければ、利便性を見せておく。

ブックマークで自動入力

User Login(ユーザーログイン)

ユーザーログイン

Login Lockdown(ログインロック)

ブルートフォース(総当たり)ログインアタックを仕掛けられたときに、繰り返しログインを失敗したIPアドレスを自動で締め出す機能。

WordPress XMLRPC & Pingback Vulnerability Protection(XML-RPC対策)でXML-RPCを無効化させなくても、こちらで対応している模様。なので、Jetpackやスマホ投稿を普通に使うことができるはずだ。

パスワード管理ソフトの自動入力使用前提のため、キツめのミスなし推奨設定をしていく。

ログインロックオプション
  • Enable Login Lockdown Feature(ログインロックを有効にするか):チェック
  • Allow Unlock Requests(自分が締め出された際にロック解除要求をするか):しない
  • Max Login Attempts(ログイン試行回数):3回
  • Login Retry Time Period (min)(この期間内にログイン試行回数を越えたらそのIP締め出し):60分(1時間)
  • Time Length of Lockout (min)(ロックされたIPを指定の時間ログインさせない):720分(12時間)
  • Display Generic Error Message(ログイン失敗時、片方が正解でも両方失敗表記にする):チェック
  • Instantly Lockout Invalid Usernames(存在しないユーザー名を試行した時点でロック):しない(さすがにキツすぎ)
  • Instantly Lockout Specific Usernames(指定したユーザーIDで試行されたらロック):入れるなら「admin」、追加は1行に1つずつ
  • Notify By Email(指定したメールアドレスに誰かがロックされたと送信):チェック(ログインページ名変更と併用推奨)
  • 最後にSave Settings(保存)

念を押すが、このプラグインを導入しておいてパスワード管理ソフトを導入しないのはありえない

万が一自分が締め出された・ログインできない

この方法は他のプラグインでも言えることなので、覚えておこう。

FTPにアクセスし、public_html/自サイト名/wp-content/pluginsにある「all-in-one-wp-security-and-firewall」フォルダにハイフン(-)やアンダーバー(_)を足すだけで無効化される。

ログインページを変更していた場合はwp-login.phpに戻っているため、「https://example.com/wp-login.php」からログインしよう。

ログイン後はフォルダ名を元に戻し、これで「ログインできない」という状態が開放された。

さきほど指定した「12時間以内」に再度ログインする予定がなければ、Login Lockdown IP Whitelist Settings(ロックしないホワイトリスト)まで読み飛ばそう。

ログインページロックは解除されても、さきほど指定した時間までロックされたIPアドレスは削除されないため、再度ログインする予定なら次の説明を読んで解除・削除する。

Currently Locked Out IP Address Ranges(絶賛ロック中のIPアドレス)

「Locked IP Address」かAIOWPSのダッシュボード → Locked IP Addressをクリックすると現在ロックされているIPアドレスが表示される。

「一括操作」の部分を「Unlock(ロック解除)」か「Delete(削除)」どちらでも良いので、チェックをして「適用」→ その後に何やら確認が出現し、OKを押す。

このように面倒なので、しつこいくらいパスワード管理ソフトの存在をチラつかせておく。

Login Lockdown IP Whitelist Settings(ロックしないホワイトリスト)

自分は追い出されない前提のため無視。

固定IPの方専用だが、共有VPNサービスで疑似固定IPアドレスを獲得可能。

万が一失敗してもロックされないようになり、使用するなら後述するLogin Whitelist(ログインホワイトリスト)と一緒に使うのが一般的。

Failed Login Records(失敗ログイン記録)

失敗したログイン履歴が記録されている。

自動で削除されないため、あまりに溜まり過ぎたら同表示一番にある「Delete All Failed Login Records」ですべて削除しよう。

Force Logout(強制ログアウト)

個人は関係なし。

現在ログイン中やCookieが残っている他ユーザーを、指定した何分後かに強制ログアウトさせる。

Account Activity Logs(アカウント活動ログ)

ログインした人の活動を確認できる。

直近50件まで確認可能で、それ以上は削除される模様。

Logged In Users(ログインユーザー追い出し)

現在ログインしているIPアドレスを確認でき、自分ではないならそのIPをコピーし、Blacklist Manager(ブラックリストマネージャー)に登録して無理やり追い出せる。

ぷっぷ
ぷっぷ

なんで手動なんだろう……

User Registration(ユーザー登録)

ユーザー登録

Manual Approval(ユーザー手動承認)

個人サイト? はよくわからないままEnable manual approval of new registrations(新規登録手動承認)にチェック。

そもそも通常運営だとユーザー登録ページは機能しないはず? 限りなく意味がない可能性激高。

当サイトもマルチサイト運営? しているわけではないが、使わないところなら有効化させておいても、問題ないだろう。

Registration Captcha(ユーザー登録キャプチャ)

個人サイト? なのでチェック。

ユーザー登録ページ(wp-signup.phpのこと?)に簡単な数学のキャプチャを設定できるが、キャプチャは表示されないので違う場所かもしれない。

Registration Honeypot(ユーザー登録ハニーポット:罠)

チェック。

どこにあるかわからないユーザー登録ページへ「人間には見えないフォーム」を追加し、そこに入力があったらローカルホストアドレスに跳ね返してくれる嫌がらせ機能。

Database Security(データベースセキュリティ)

データベースセキュリティ

DB Prefix(データベース接頭辞変更)

比較的どうでもいいわりに壊すリスクがあるので無視。

参考WordPressの侵入対策は脆弱性管理とパスワード管理を中心に考えよう

いわゆる秘匿系で、ユーザー名と同じく効果がフワフワ。

このプラグインのライバルであるWordfence(ワードフェンス)に至っては、グイグイ意味がない的なことを言っているので、未知のエラーを引き起こさないためにも無視しておこう。

WordfenceWordPressのテーブルプレフィックス:変更してもセキュリティは向上しません(英語)

参考にするのは量産されたブログではなく、プロが先なのでそちらの意見を優先させていただいた。

すでに変更してしまった方はそのままでOK。

DB Backup(データベースバックアップ)

他のバックアップ手段をしているなら無視。

Manual Backup(手動バックアップ)

「Create DB Backup Now」で今すぐ作成でき、保存場所はFTPの「public_html/自サイト名/wp-content/aiowps_backups」の中の「database-backup-日付ゴニョゴニョ.zip」。

Automated Scheduled Backups(自動バックアップスケジュール)

残念ながら時間指定不可。

  • Enable Automated Scheduled Backups(自動スケジュールを有効させるか)
  • Backup Time Interval(バックアップ間隔)
  • Number of Backup Files To Keep(保持するバックアップファイル)
  • Send Backup File Via Email(電子メールでバックアップファイルを送る)
    • 暗号化はzipファイルに関係あるのか調査していないので、念のためメールで送るのは非推奨

頻繁にやってもサーバーの負荷がかかり、通常は初期設定の「4週間の保持バックアップ2」のままでいいだろう。

保存場所はFTPの「public_html/自サイト名/wp-content/aiowps_backups/database-backup-日付ゴニョゴニョ.zip」で、日付が新しい・古いどちらかを選んで使おう。

Filesystem Security(ファイルシステムセキュリティ)

ファイルシステムセキュリティ

File Permissions(ファイルパーミッション検定)

サーバーによる?

ディレクトリ(フォルダ)・ファイルのアクセスと読み書き権限を管理できる。

レンタルサーバーがmixhostの方は、とりあえず対処不要のようだ。

ディレクトリ755のファイル644でとりあえず合格扱いになり、私が過去705の604にした際はいろいろな場所でエラーになってしまい散々な目にあったため、やる場合は知識必須。

ちなみに、DB Prefix(データベース接頭辞変更)で参考にしていたWordPressの侵入対策は脆弱性管理とパスワード管理を中心に考えようで、推奨パーミッションとwp-config.phpの「おそらくパーミッション400のこと」に関して述べられている。

上記記事のパーミッションは、私が挑戦した705・604よりキツい制限のため、正直難しい。

PHP File Editing(ダッシュボードでPHPファイル編集禁止)

チェック。

ダッシュボードからPHPがイジれなくなる機能。

「面倒くさがってダッシュボードから編集し、間違えて更新して戻せなくなって余計面倒になったパターン」防止であり、セキュリティ目的ではない。

ぷっぷ
ぷっぷ

一度侵入されたダッシュボードなんて、結局気持ち悪くてプロに依頼することになるかと!

WP File Access(WP初期ファイルアクセス禁止)

チェック。

「WordPressに最初からインストールされているファイルへのアクセス」を防ぐらしいが、効果不明。

何も起きないのでなんとなく有効化。

Host System Logs(ホストシステムログ)

無視。

いわゆるエラーログを確認できるが、知識がないためわからない。

実際にエラーになった際に役に立つかもしれないので、エラーになったら確認してみよう。

バグの確認は、おそらくDebug Settings(デバッグ設定)の方。

WHOIS Lookup(フーイズルックアップ)

フーイズルックアップ

不審なIPやURLがどこ国か詳細を確認できる機能。

スパムなどの怪しいアドレスがあったら、試しに入れてみよう。

表示されるスパムとされないスパムが存在したので、精度は微妙かもしれない。なお、表示されたところで「ブラックリスト登録済み」なのかどうか不明。

Blacklist Manager (ブラックリストマネージャー)

ブラックリストマネージャー

Ban Users(禁止ユーザー設定)

IPアドレスやユーザーエージェントを1行ずつ入力し、設定するとアクセスを拒否できる。

Enable IP or User Agent Blacklisting(IPまたはユーザーエージェントのブラックリストを有効)にチェックを入れないと発動しないので、チェックを入れた上でIPやエージェントを入れよう。

ユーザーエージェントがなんなのかわからないが、おそらくブラウザの種類やOSを制限する際に使用するものだ。「IEとSafariに見てほしくない」などで使う機能だろうか。

Firewall(ファイアウォール)

ファイアウォール

競合しやすいポイントのため、バックアップを取るか、エラーになったら真っ先に無効化すること。

強制的にオフにするなら万が一自分が締め出された・ログインできないの方法をしよう。

もちろん.htaccessにそれらしきものがあるなら、一時的に削除してログインすることも可能。

Settings(設定)にあるGeneral Settings(一般設定)下の、Disable All Firewall Rules(すべてのファイアウォールを無効)で初期設定化できるため、エラーの切り分けに活用だ。

Basic Firewall Rules(基本的なファイアウォールルール)

Basic Firewall Settings(基本的なファイアウォール設定)

チェック。

  • .htaccessファイル保護
  • サーバー署名無効
  • ファイルアップロード制限(10MB)
  • wp-config.php保護

を.htaccessに記述する。

ファイアウォールは何も考えずに有効化する派。

WordPress XMLRPC & Pingback Vulnerability Protection(XML-RPC対策)

実際に攻撃したわけではないが、おそらく不要。

Login Lockdown(ログインロック)がどうやらXML-RPCに対する攻撃にも対応しているようで、XML-RPC検証サービスを使いアクセスしたら、失敗履歴に記録された。

つまり、ログインロックをちゃんとやっていれば対策をしつつ、Jetpackやスマホ投稿が正常に使え、機能追加によりXML-RPCを使用するものが突如登場しても、エラーになる心配がない。

それでも無効化したいなら、以下を参考にして選択していこう。

  • Completely Block Access To XMLRPC(XML-RPC完全ブロック):チェック
  • Disable Pingback Functionality From XMLRPC(XML-RPCを利用しつつピンバックだけ無効):無視

XML-RPCすべてをブロックするわけにいかないなら、「XML-RPC完全ブロック」のチェックを外し、ピンバック無効だけをチェックだ。

Block Access to Debug Log File(デバッグファイルへのアクセス拒否)

チェック。

よくわからないが、有効化したままで何も起きたことはない。

Additional Firewall Rules(追加のファイアウォールルール)

こちらもファイアウォールなので、.htaccess記述多め。

Listing of Directory Contents(Webからディレクトリ非表示)

チェック。

「https://example.com/wp-content/uploads/」という感じに、自サイトURL最後尾に付けると確認できる部分を非表示にする機能?

一応非表示にはなったがよくわからない。

ぷっぷ
ぷっぷ

間違って検索結果に表示させない機能として、非表示にした記憶があるー

当サイトはサーバーの方でやっているので、403しか表示されない。

Trace and Track(トレースと追跡無効)

チェック。

プラグインなどの脆弱性を突いてくる、厄介なクロスサイトスクリプティング(XSS)に強くなれるらしい。

Proxy Comment Posting(代理コメント無効)

チェック。

プロキシサーバーを介したコメントを禁止するようだが、VPNの上にプロキシ、プライベートブラウジングでコメントしてみたが普通に書き込めた。

とりあえずスパムに働くようだ。

追記:2021年4月22日・コメント欄でぴよたさんの実験を教えてもらったところ、VPN接続で403 → チェック解除でコメント可能となったようで、一部のVPNには効果がある模様

Bad Query Strings(不適切なクエリ文字列禁止)

チェック。

クロスサイトスクリプティング(XSS)機能で、不具合がないようならチェックを入れたまま。

Advanced Character String Filter(高度な文字列フィルタ)

チェック。

クロスサイトスクリプティング(XSS)機能で、不具合がないようならチェックを入れたまま。

6G Blacklist Firewall Rules(6Gブラックリストファイアウォールルール)

激しくチェック推奨(6Gの方だけ)。

海外で有名なPerishable Pressの、Jeff Starrが作成したすごく都合の良いファイアウォール。

貴重なXSS・SQL/PHPインジェクション、聞いたことのないキャッシュポイズニング・レスポンススプリット・デュアルヘッダーエクスプロイトなどから保護してくれる。

5Gブラックリストは6Gに組み込まれているため、6Gの方だけチェックを入れよう。

7Gが現在ベータのようなので、途中で7Gが追加されるはず。

当サイトが絶賛している無料版BBQプラグインと被ってしまうため、一緒に使うならPRO版(買い切り)の高度なファイアウォール目的で使用するといい。

Internet Bots(偽Googleボットブロック)

無視。

偽のGoogleボットをブロックするのだが、公式をブロックしてしまう可能性があるようだ。

Google公式の切り替わりでそうなったということは、一時的にでもAIOWPSの知らないGoogleボットが誕生するわけなので、今後も起きそうといえば起きそう。

今回たまたま見つけたからよかったものの、何も考えずに有効化するのはあまりよくないのかもしれない。

ぷっぷ
ぷっぷ

そういって挑戦しないから、無理やりONにするスタイル続行!

Prevent Hotlinks(ホットリンクを防ぐ)

無視。

いわゆる直リンクと呼ばれているもので、

  • 当サイトで画像を表示
  • 誰かがその画像URLをコピーして自分のサイトに貼り付け
  • 当サイトで閲覧されていないのに、誰かのサイトの画像が表示されるたびに当サイトのサーバーが画像を表示してしまう
    • その度に負荷がかかる

といったもので、防ぎたいのはわかるが、画像表示されないなど多々あるため、詳しい調整が必須。

こちらの設定では詳しい調整ができず、「SNSの直リンクは許可」など柔軟な対応ができない。

基本的に「されている」と気づいてからすれば良く、悪質行為にはアドセンスを一発アウトにする画像に差し替え、自分のサイトでは表示させない倍返しも存在するので、うまいことブログのネタにするがいい。

404 Detection(404攻撃検出)

無視。

存在しないページに過剰アクセスがあった場合、ログインページを探していると思われるので、指定した期間ブロックする機能。

  • Enable 404 IP Detection and Lockout(404検出とロックを有効にするか)
  • Time Length of 404 Lockout (min)(ブロックされたIPを指定した期間ロックする)
  • 404 Lockout Redirect URL(ロック時のリダイレクト先):初期設定のままでOK

有効化することで404イベントログすべてが記録され、自動削除されない点が管理しづらい。

そもそも、ログインページが見つからなければ大抵は諦めてくれるはずなので、活躍するビジョンが見えない。

Custom Rules(カスタムルール)

完全無視。

.htaccessのルールをここで追加できるようだ。

Brute Force(総当たり攻撃対策)

総当たり攻撃対策

総当たりということで、よくアタック(攻撃)が付くブルートフォースアタックのこと。

Rename Login Page(ログインページ名変更)

激しく設定推奨。

秘匿系セキュリティの中でも優秀な防御方法で、ログインページにたどり着いて何かやる前提のボットを回避する。

  • Enable Rename Login Page Feature(ログインページ変更を有効化するか):チェック
  • Login Page URL(ログインページURL設定):半角大小英数字の6桁以上推奨の文字列

なお、.htaccessに記述しないタイプ。

変更後のURLは必ず覚えておくこと。忘れた場合は万が一自分が締め出された・ログインできないで述べた方法で無効化できる。

Login Lockdown(ログインロック)で紹介した「Notify By Email(指定したメールアドレスに誰かがロックされたと送信)」と併用すると通知回数が激烈に減るため、どこからかログインページがバレた際にだけ通知される都合の良い使い方も解禁。

Cookie Based Brute Force Prevention(クッキーベース総当たり防止)

通常は無視(要検証)。

ログインページ名変更と併用不可であり、なぜかプライベートブラウジングから新しく設定したURLにアクセスすると「wp-login.php」に飛ばされ、http://127.0.0.1リダイレクトが機能せずにログインできたり、リダイレクトが発動したりとよくわからない。

一応、「wp-admin」だけはリダイレクトされる。

  • Enable Brute Force Attack Prevention(総当たり防止を有効化):チェック
  • Secret Word(秘密の文字列):空欄だと甘い文字列になるので、半角大小英数字の6桁以上推奨
  • Re-direct URL(リダイレクトURL):初期設定のまま
  • My Site Has Posts Or Pages Which Are Password Protected(このサイトはWordPress備え付けのパスワード機能を利用した投稿とページがある):あるならチェック
  • My Site Has a Theme or Plugins Which Use AJAX(AJAXを使用するテーマ・プラグインを使用している):チェック

AJAXは除外推奨なようだ。

参考ブルートフォース攻撃 – WordPress Codex 日本語版

Login Captcha(ログインキャプチャ)

Google reCAPTCHA Settings(Googleリキャプチャ)

無視。

チェック項目タイプの、1世代古いGoogle reCAPTCHA V2が使える。

機能要求されているためそのうちV3になるかもしれないが、このプラグインだと設定してもログインフォームにしか発動しない

なお、有効化するとログインキャプチャすべてが簡単な数学からGoogle reCAPTCHA化する。

どうせ使うなら、コメント欄にも配置できてV3も使える(使えるか確認した)Invisible reCaptchaを推奨。 ちなみに、外部ツールためPageSpeed Insightsの点数ガタ落ち(遅くなったか要調査)。

Login Form Captcha Settings(ログインフォームキャプチャ)

2段階認証を使用していたら無視、未対策ならチェック。

当サイト的には、別格ログインガード系の2段階認証を優先したい。

Custom Login Form Captcha Settings(カスタムログインフォームキャプチャ)

無視。

wp_login_form()

と呼ばれる関数によって生成されたログインフォームに、キャプチャをつける。

Woocommerce Forms Captcha Settings(Woocommerceキャプチャ)

無視。

Woocommerceプラグインのログインフォーム・登録フォームにキャプチャをつける。

Lost Password Form Captcha Settings(パスワード紛失フォームキャプチャ)

紛失しないのでチェック。

Login Whitelist(ログインホワイトリスト)

環境を選ぶし、wp-adminもついでに制限されるタイプではない。

定番のIPアドレスホワイトリストで、設定したIPでしかログインできない激烈防御が可能。

固定IPの強者は当然のように利用し(外出時は注意)、毎回IPが変わってしまう方は当然利用できないが、VPNサービスの共用サーバーを使い、いつでもどこでも固定IPを使用するテクニックで使用できる。

しかも通信暗号化でカフェ最強。

※メンテナンスにより、IPは頻繁ではないが定期的に変わるものもあるため、その都度変えよう。

ワイルドカード(*)でIPの範囲をある程度許すこともできる。

不注意で外出先からログインできなくなったら、万が一自分が締め出された・ログインできないでプラグインを無効化してこよう。

Honeypot(ハニーポット:罠)

チェック。

ログインフォームに見えない入力欄を増やし、ロボットが入力したら弾き返す。

2段階認証・キャプチャなどがおかしくなるならオフ。

SPAM Prevention (スパム防止)

スパム防止

Comment SPAM(コメントスパム対策)

他のスパム対策を施しているなら無視。

Enable Captcha On Comment Forms(コメントフォームでキャプチャを有効)にチェックを入れると、簡単な数学のキャプチャが出現する。

ユーザーにやさしくないので、AkismetInvisible reCaptchaが人気。

Block Spambot Comments(ボットスパムコメントブロック)

チェック。

自分のサイトではなく、「何らかの方法でしてくる外部からのコメント」をブロックする。

通常は該当記事を見てそこでコメントするため、何も考えず有効化しよう。

Comment SPAM IP Monitoring(スパムIP監視)

Auto Block SPAMMER IPs(スパム自動IPブロック)

微妙機能かもしれず、個人的には無視。不要ならBuddyPressまで読み飛ばそう。

スパム対策に求めているのは初回から弾くことなので、これだと通常のスパム対策に加え、それを3回すり抜けた場合に対しての対応にしか見えない。

  • Enable Auto Block of SPAM Comment IPs(スパム自動IPブロックを有効にする):チェック
  • Minimum number of SPAM comments(許される同一IPスパム数):3回

Akismetと連携してスパム目印を付け、「指定した回数」スパムを投稿した場合(上記だと3回)永久ブロックする。

永久ブロックはPermanent Block List(永久ブロックリスト)に載るので、解除したい場合は解除しにいこう。

Akismetが必要かどうかわからないが、使用したければ有効化だ。

List SPAMMER IP Addresses(スパムIPアドレスを表示する)

よくわからないので無視。

SPAMMER IP Address Results(スパムIPアドレス結果)

さきほどと何が違うのかわからないが無視。

BuddyPress

使用していないなら無視。

BuddyPressプラグインの登録フォームに、簡単な数学のキャプチャを付ける。

BBPress

使用していないなら無視。

BBPressプラグインのトピックフォームに、簡単な数学のキャプチャを付ける。

Scanner(スキャナー)

スキャナー

File Change Detection(ファイル変更検出)

ファイル変更を監視することで不自然な変更を検出できるが、こちらはマルウェア(ウイルス)そのものではないため、比較的どうでもいいファイル変更も検出する可能性がある。

使用する際は要確認。

Manual File Change Detection Scan(手動ファイル変更検出スキャン)

「Perform Scan Now」をクリックすると、今すぐスキャンが可能。

View Last Saved File Change Results(直近ファイル変更スキャン結果表示)

「View Last File Change」をクリックすると、最後にやったファイル変更スキャン結果を表示できる。

File Change Detection Settings(ファイル変更スキャンスケジュール)

残念! 時間指定不可のため、サーバー負荷をそこそこ考えて利用しよう。

テストサイトの手動スキャンが一瞬で終わったため、全然かからないかもしれない。

  • Enable Automated File Change Detection Scan(スケジュールを有効化するか):チェック
  • Scan Time Interval(スキャン間隔):推奨設定謎
    • 初期設定は4Weeks(週間)だが、別のスキャンプラグインはだいたい24時間に1回なので、真似して「1Days」
  • File Types To Ignore(無視するファイルの種類):監視しても仕方がないファイルタイプ?や拡張子(jpg・pngなど)を改行していれると除外できる
  • Files/Directories To Ignore(無視するファイルとディレクトリ):特定のファイルとディレクトリ(フォルダ)をまとめて除外させるが、よくわからないので無視
  • Send Email When Change Detected(ファイル変更検出時にメールを送信するか):面倒なので無視

Malware Scan(マルウェアスキャン)

別のサービスを使い、マルウェア(ウイルス)をスキャンするのだが有料。

マルウェアスキャン目的なら、競合しないと謳っている無料版Malcare(マルケア)と一緒に使うことで、有料気分を味わうことができる。

しかも、ファイアウォール付き・クラウドなので軽量という超絶都合良すぎプラグイン。

Maintenance(メンテナンス)

メンテナンス

Visitor Lockout(訪問者追い出し)

管理者以外、つまりサイト閲覧者を追い出し、メンテナンスモードにすることができる。

Force Logout(強制ログアウト)との違いは、ログインしていないユーザーを追い出すが、サイトは閲覧可能といった具合。

CSSや何らかのカスタマイズテストを見せたくないなら、このメンテナンスモードを使おう。

  • Enable Front-end Lockout(この機能を有効化するか)
  • Enter a Message(表示メッセージ):日本語OK! 何時までするか書かないと、不親切で嫌われる

Miscellaneous(その他)

その他

セキュリティ的に微妙な秘匿系が勢揃いしていて、ちゃんと点数は付かない。

Copy Protection(コンテンツコピー防止)

「限りなく効果が薄い」ではなく無意味。

右クリック・テキスト選択などが無効化される機能。

スクリーンショットを撮る → 画像の文字を抽出という原始的な方法が対策されておらず、残された知らない人達は、ただただ不便の押し売りをされる。

残念ながら、悪質なコピー業者はいろんな対策法を知っているのだ。

ぷっぷ
ぷっぷ

専門用語や読めない漢字の意味を調べられないよー

Frames(iFrame丸ごと表示保護)

チェック。

他サイトでiframeというHTMLタグ?を使い、コンテンツ丸パクリ表示を防止する。

sameoriginなので、自分のサイトをiframe表示する際は大丈夫で、他のサイトに使われるのを防止する機能だったはず(うろ覚え)。

このように、コピー防止手段はホイホイでてくる。

Googleフォームがこの「iframe」を使用しているが、sameoriginでも正常に表示されるので問題なし。

Users Enumeration(ユーザーID隠し)

おこのみ、当サイトは隠していない。

「https://example.com/?author=1」の部分を自サイトに貼り付けると、URLに組み込まれたユーザーIDを確認できる。

チェックを入れると無効にして禁止画面を表示され、次のREST APIを無効化しないと「/wp-json/wp/v2/users」でも表示される(要プライベートブラウジング)。

WP REST API

おこのみ、当サイトは無効化していない。

有名なContact Form 7やJetpack、さらにはWordPress5.0で追加されたGutenberg(グーテンベルク:ブロックエディタ)でも使用しているが、ログイン中は正常に使える仕様のようだ。

過去問題になったWordPress4.7のREST API事件(英語)は修正されているので、何もしなくても危険ではない。

なお、無効にしないと「自サイト名/wp-json/wp/v2/users 」でユーザー名を確認可能。

詳しい制御は使わない機能を制御でき、競合しにくいXO Securityの導入を推奨し、ついでに超次元コンボもしてしまうといい。

その場合はAIOWPSとの被り機能「Login Lockdown(ログインロック)」と「Rename Login Page(ログインページ名変更)」をOFFにして超次元コンボを実現すること。

コメント

  1. ぴよた より:

    ファイアウォール設定のProxy Comment Posting(代理コメント無効)にチェックを入れてVPN雪賊でコメントテストしたところ、当方の環境では403 FORBIDDENページに切り替わりコメントが投稿できませんでした。
    チェックを外して投稿するとちゃんと投稿できてコメントが表示されました。
    一応報告しておきます。

    • ぷっぷ より:

      なるほど、一部のVPNには効果があるということですね。
      追記しておきました∩(・∀・∩

  2. ぷっぷ より:

    一連の話をお願いされたので削除しましたが、解決できなくて困った場合のために私のコメントの一部は残しておきます。
    ※間違えて自分のIPを拒否してその後ログインできなくなった際のやり取り(なぜかブラックリストに拒否したIPが表示されない時の解決法)。

    現在使用中のIPをLogin Lockdown IP Whitelist Settings(ロックしないホワイトリスト)に記述するか、ルーターの電源を切って最長30分?待つとグローバルIPアドレスがプロバイダが準備したほかのIPアドレスに変わるはずなので、再度ログインできるようになるはずです。
    と思ったらスマホからのログインでした(´ε`;)
    また、ルーター再起動をして変更しても、同じプロバイダを使い続けているかぎりいつか同じIPになる可能性もあると思われ、その時にまたロックされるかもしれません。
    他の解決策としては、もう2段階認証付きのWordfenceが圧倒的にオススメなので、できるのであればそちらに乗り換えもありです(重いかのテストはするべきかもしれませんが、基本的にロリポップじゃない限り何も感じないと思われます)。
    参考【SS】主要セキュリティの鬼!Wordfenceプラグインで内部防御

    プロバイダって何個かIPを持っていて、そのIPしか使えない仕様だったと思うので(うろ覚えの適当)、そうなると変わるはずです。
    旅行中は別の回線・プロバイダであるため、場所も違うしIPが違うので普通に入れます!
    となると、

    ログインできない状態で現在使用中のIPアドレスをチェックしてメモ(画像とるだけでも可)
    ルーターの電源を切って何分か置く(多分すぐにでも変わるけど、30分という話もアリ)
    再度IPアドレスをチェックして前回と別であれば成功
    ログインできるはず! できなければ3月まで我慢
    参考アクセス情報【使用中のIPアドレス確認】
    これで完璧∩(・∀・∩