
SiteGuard WP Pluginの設定方法と不具合対処【404/403エラー】
この記事では、WordPressプラグイン「SiteGuard WP Plugin(サイトガード ダブルピー プラグイン)」の初期設定と使い方を、画像を用いてわかりやすくご紹介します。
WordPress(ワードプレス)で必ず最初にインストールするのが、セキュリティ対策プラグインです。
「SiteGuard WP Plugin」は、WAFに「SiteGuard Lite」を採用したレンタルサーバーの利用者向けです。
同様のプラグインに「CloudSecure WP Security」「XO Security」があります。
なるほど!比較情報を参考にします。
- 「SiteGuard WP Plugin」の初期設定が完了できる
- 設定項目の重要度がわかる
- 管理画面にログインできないときの対処法がわかる
この記事を最後まで読めば、WordPress(ワードプレス)で不正アクセス対策がすぐ完了します。
ぜひ最後まで進めてみてください。
すでに途中まで進めている人は、目次から該当箇所に飛ぶこともできます。
セキュリティ対策プラグイン「SiteGuard WP Plugin」は必要か?
セキュリティ対策プラグインは、以下のような目的で必要になります。
- 自分の個人情報漏洩を防ぐため
- 顧客の個人情報漏洩を防ぐため(ビジネスサイト)
- サイトの改ざんや乗っ取りを防ぐため
- 踏み台にされて、第三者を攻撃しないため
公開されたサイトは、気づいていないだけで、悪意のあるロボットから毎日攻撃を受けています。
たいていはサイト公開日か翌日から攻撃を受けます。
WordPress(ワードプレス)を利用する場合は、必ずインストールするようにしてください。
以下のような対策も合わせて実施してください。
- サイト表示名(ニックネーム)をユーザー名(ログインID)から変更する
- 簡単なパスワードから複雑なパスワードに変更する
- サイトをSSL(https)対応する(Really Simple SSLなど)
- WordPress本体、テーマ、プラグインなどを定期的にバージョンアップする
セキュリティ対策をしていないとどうなるか?
例えば、よくあるパスワードリストを使った辞書攻撃をブロックすることができません。
時間はかかりますが、いずれ突破されます。
なるほど!対策が必要ですね。
例えば、自分以外の誰かがログインしても、気づくことができません。
設定しておけば、ログイン通知メールが届きます。
なるほど!すぐ気づけますね。
例えば、コメントスパムが毎日のように届きます。
CAPTCHA(画像認証)などでスパムを防止できます。
なるほど!余計な通知が減りますね。
例えば、トップページURLに「/wp-login.php」や「/wp-admin/」を追加すると、誰でもログインページにアクセスできます。


ログインURLの変更で対策できます。
なるほど!攻撃されにくくなりますね。
プラグイン「SiteGuard WP Plugin」とは
「SiteGuard WP Plugin」は、WAFにSiteGuardを採用しているレンタルサーバーのユーザー向けです。
プラグイン側からもWAFの細かいチューニングができるようになります。
他のレンタルサーバーは、WAFがないか、WAFの誤検知が少ないために細かいチューニングは基本的に不要です。
一方で、「SiteGuard」を採用したレンタルサーバーは、WAFの誤検知がかなり多いです。
除外設定は初心者向けではないため、サーバーでWAF機能自体をOFF(無効化)することも視野に入れてください。
「SiteGuard WP Plugin」と同様のセキュリティ対策プラグインで、「CloudSecure WP Security」や「XO Security」もあります。
初心者には「XO Security」がおすすめです。




「SiteGuard WP Plugin」と「CloudSecure」「XO Security」の比較
セキュリティ対策プラグイン「SiteGuard WP Plugin」と「XO Security」の違いを比較してみましょう。
| 重要度 | 項目 | CloudSecure | SiteGuard | XO Security |
|---|---|---|---|---|
| 高 | ログイン障害の少なさ(.htaccess不要) | × | × | ○ |
| 低 | 管理ページアクセス制限 | ○ | ○ | × |
| 高 | ログインURLの変更 | ○ | ○ | ○ |
| 高 | ログインCAPTCHA(画像認証) | ○ | ○ | ○ |
| 高 | コメントCAPTCHA(画像認証) | ○ | ○ | ○ |
| 中 | 2段階認証 | ○ | × | ○ |
| 高 | コメントチェックボックス | × | × | ○ |
| 低 | コメント日本語のみ制限 | × | × | ○ |
| 中 | ログインエラーメッセージの簡略化 | ○ | ○ | ○ |
| 高 | ログインロック(試行回数制限など) | ○ | ○ | ○ |
| 高 | メールアドレスのログイン拒否 | × | × | ○ |
| 中 | ログインアラート(メール通知) | ○ | ○ | ○ |
| 中 | ログインログ(履歴) | ○ | ○ | ○ |
| 低 | フェールワンス(必ず一回ログイン失敗) | × | ○ | × |
| 高 | XML-RPC の無効化 | ○ | ○ | ○ |
| 中 | REST API の無効化 | ○ | ○ | ○ |
| 高 | 投稿者スラッグの秘匿 | × | × | ○ |
| 低 | 投稿者スラッグへリダイレクト禁止(ユーザー名漏えい防御) | ○ | ○ | × |
| 中 | WordPressバージョン情報の秘匿 | × | × | ○ |
| 低 | バージョンアップの更新通知(メール通知) | ○ | ○ | × |
| 中 | WAF機能 | ○ | × | × |
| 低 | SiteGuard WAFのチューニング設定 | × | ○ | × |
| 低 | メンテナンスモード | × | × | ○ |
| 高 | 設定内容の保持 | × | × | ○ |
- 2段階認証が必要な場合は、「Two-Factor」がおすすめです。
CloudSecureとSiteGuardは.htaccessを使用するため、技術的な知識があった方がいいです。
.htaccessとは、サーバーでディレクトリ単位に格納できるテキストファイルで、アクセス制限などが可能です。
ApacheやApache互換のLiteSpeedなどのWebサーバーで利用できます。
「SiteGuard WP Plugin」はNginxサーバーで使えないのか?
SiteGuard WP Pluginは.htaccessファイルが必要なので、Nginx系のレンタルサーバーでは使えないと書かれていることがありますが、誤解を招く表現です。
レンタルサーバーは基本的に「LiteSpeed」か「Apache+Nginx」か「Apache」しかありません。
そして、「Apache+Nginx」でもApache側の機能で.htaccessファイルが使えます。
「SiteGuard WP Plugin」で不要になるプラグイン
「SiteGuard WP Plugin」を利用すると、機能が重複する以下のプラグインは不要になります。
| プラグイン名 | 説明 |
|---|---|
| Limit Login Attempts | ログイン試行回数の制限 |
| Akismet Spam Protection | コメントスパム対策 |
アンインストールしてしまいましょう。
「SiteGuard WP Plugin」にはユーザー名漏えい防御という機能がありますが、「Edit Author Slug」とは別物です。
そのため、「SiteGuard WP Plugin」は「Edit Author Slug」の代わりにはなりません。


セキュリティ対策プラグインとして「Wordfence Security」も有名ですが、初心者にはおすすめしません。
- 動作が重いため、サイト高速化(ページ表示速度)の妨げとなる
- WAF機能による不具合やログイン障害が増える
プラグイン「SiteGuard WP Plugin」を導入する流れ
WordPress(ワードプレス)の管理画面から「SiteGuard WP Plugin」プラグインをインストールします。
プラグインを有効化したら「ログインページ変更」が完了するので、必ずブックマークしておきましょう。
セキュリティ向上のために、細かい設定を確認・変更しておきましょう。
1) プラグイン「SiteGuard WP Plugin」をインストール
作業を開始する前に、サーバーでバックアップを取得しておくことをおすすめします。
WordPress(ワードプレス)にログインしたら、左メニューの[プラグイン]→[新規追加]をクリックして、[プラグインの検索]をします。


[プラグイン]→[新規追加]から「SiteGuard WP Plugin」を検索して、[今すぐインストール]した後に[有効化]します。


SiteGuard WP Pluginを有効化すると、自動的にログインページURLが変更になります。
変更前
> https://ドメイン名/wp-login.php
変更後
> https://ドメイン名/login_xxxxx
- xxxxxはランダムな5桁の数字です。
ログインページURLを忘れるとログインできなくなるので、メールにも通知されます。


メールが届かない場合は、「迷惑メール」フォルダに自動的に振り分けられている可能性があります。
携帯メールアドレスを登録している場合、Gmailなどに変更するか、PCメールを許可する必要があります。
このままだと覚えにくいので、この後の設定でログインページURLを変更します。
ブックマークはその後にするといいでしょう。
2) プラグイン「SiteGuard WP Plugin」の設定方法
時間のない方は、ログインページURLとログインロックだけは設定変更しておきましょう。
事前) ダッシュボード
左メニューの[SiteGuard]をクリックすると、[ダッシュボード]が開きます。


ダッシュボードを見ると、デフォルトONの機能とデフォルトOFFの機能があることがわかります。
1) 管理ページアクセス制限(変更:不要)
[管理ページアクセス制限]は、デフォルト設定(OFF)のままで大丈夫です。


管理ページアクセス制限をON(有効)にすると、24時間以上にログインしていないと再ログインが必要になります。
なるほど!手間隙が増えてしまいますね。
管理ページ(wp-admin)と書いてありますが、すべてアクセスNGにしてしまうとWordPressは動かなくなってしまいます。
そのため[除外パス]が設定されていますが、プラグインなどで不具合が出たら、自分で除外パスを追加しないといけません。
なるほど!できる自信がありません。
mod_rewriteとは、.htaccessファイルに記述するURL操作のためのサーバー機能です。
ほとんどのレンタルサーバーで、サーバーにロードされている(使える状態になっている)はずです。
2) ログインページ変更(変更:要)
左メニューの[ログインページ変更]をクリックして、設定変更します。(デフォルトON)


変更後のログインページ名を変更し、[管理者ページからログインページへリダイレクトしない]をONにして[変更を保存]をクリックします。


| 重要度 | 設定項目 | 説明 |
|---|---|---|
| 高 | 変更後のログインページ名 | ログインURL(wp-login.php)の変更 → 変更したら必ずブックマーク |
| 高 | 管理者ページからログインページへリダイレクトしない | wp-adminからログインURLへのアクセス不可 → URL変更した意味がなくなるのでONに変更 |
ログインページURLが変更になると、通知メールが届きます。
ログインページURLを変更した場合、必ず変更後のログインページURLをブックマークしておいてください。


ログインページからでないと、管理画面やダッシュボード(/wp-admin/)にアクセスできなくなります。
メールが届かない場合は、「迷惑メール」フォルダに自動的に振り分けられている可能性があります。
携帯メールアドレスを登録している場合、Gmailなどに変更するか、PCメールを許可する必要があります。
SWELLテーマを使用している場合に、ログインURLを変更すると勝手にログアウトすることがあります。
以下の記事を参考に、Prefetchの除外設定をしてください。
管理者ページからログインページへリダイレクトしないがOFFのままだと、「wp-admin」からログインページにリダイレクトされるため、変更したログインページURLがバレてしまいます。
なぜかデフォルトOFFになっているので、必ず管理者ページからログインページへリダイレクトしないをONに変更してください。
3) 画像認証(変更:不要)
[画像認証]は、デフォルト設定(ON)のままで大丈夫です。


| 重要度 | 設定項目 | 説明 |
|---|---|---|
| 高 | ログインページ | ログインフォームに画像認証を設置 → 海外ロボットが対応しにくい「ひらがな」 |
| 高 | コメントページ | 記事のコメント欄に画像認証を設置 → 海外ロボットが対応しにくい「ひらがな」 |
| 低 | パスワード確認ページ | 「パスワードをお忘れですか?」に画像認証を設置 → 攻撃の対象になりにくい |
| 低 | ユーザー登録ページ | 会員サイトの登録ページに画像認証を設置 → 通常のサイト・ブログには関係なし |
画像認証(CAPTCHA)は、日本語サイトであれば、「英数字」ではなく「ひらがな」に設定することをおすすめします。
日本語対応のロボットは少ないため、日本語にするだけで強力なロボット対策になります。
画像認証(CAPTCHA)を「ひらがな」に設定すると、以下のようなログインページになります。


画像認証(CAPTCHA)は、キャッシュプラグインやCDNなどを利用している場合、ログインできなくなる恐れがあります。
キャッシュプラグイン(高速化プラグイン)としては、以下のようなものがあります。
「SiteGuard WP Plugin」を導入していれば、スパム対策プラグイン「Akismet Spam Protection」が不要になります。
プラグインを減らせば、それだけ不具合が減り、サイト表示速度も速くなるためSEO対策にもなります。
4) ログイン詳細エラーメッセージの無効化(変更:不要)
[ログイン詳細エラーメッセージの無効化]は、デフォルト設定(ON)のままで大丈夫です。


ログインエラーメッセージは、存在するユーザー名を秘匿するため簡略化するのがおすすめです。
WordPress(ワードプレス)では、以下のようにユーザーが存在するかどうか、エラーメッセージで判別できてしまいます。
ユーザーが存在しない場合


ユーザーが存在する場合


このエラーメッセージを同じにすることで、ユーザー名やメールアドレスが特定されるのを防止します。
5) ログインロック(変更:必要)
左メニューの[ログインロック]をクリックして、設定変更します。(デフォルトON)


期間を30秒に、ロック時間を5分に変更して[変更を保存]をクリックします。


| 重要度 | 設定項目 | 説明 |
|---|---|---|
| 高 | 期間 | ロボット試行回数を測る時間 → 長い方がセキュリティ向上(30秒) |
| 高 | 回数 | ロボット判定の上限回数 → 少ない方がセキュリティ向上(5分) |
| 高 | ロック時間 | ロボット判定後のロック時間 → 長い方がセキュリティ向上(5分) |
30秒(期間)に3回(回数)のログイン失敗があれば、その接続元IPアドレスからのアクセスを5分(ロック時間)ブロックする、という意味になります。
このような機能を、ログイン試行制限(ログインロック)と言います。
ログインロックをはじめとしたログイン関連の機能は、リスト攻撃やブルートフォース攻撃の対策となります。
リスト攻撃とは、よくあるパスワードのリスト(一覧)を順番に試行する攻撃です。
予想しにくい複雑なパスワードにしておくことも対策になります。
ブルートフォース攻撃とは、すべての文字列の組み合わせを総当たりで試行する攻撃です。
できるだけ長いパスワードにしておくことも有効です。
「SiteGuard WP Plugin」を導入していれば、ログイン試行回数制限プラグイン「Limit Login Attempts」が不要になります。
プラグインを減らせば、それだけ不具合が減り、サイト表示速度も速くなるためSEO対策にもなります。
6) ログインアラート(変更:不要)
[ログインアラート]は、デフォルト設定(ON)のままで大丈夫です。


自分もしくは第三者がログインに成功すると、以下のような通知メールが届くようになります。


受信者はデフォルトで「管理者のみ」ですが、すべてのユーザーに通知することも可能です。
メールが届かない場合は、「迷惑メール」フォルダに自動的に振り分けられている可能性があります。
携帯メールアドレスを登録している場合、Gmailなどに変更するか、PCメールを許可する必要があります。
7) フェールワンス(変更:不要)
[フェールワンス]は、デフォルト設定(OFF)のままで大丈夫です。


フェールワンス(Fail Once)とは、「一度だけ失敗させる」という意味です。
よくあるパスワードを使ったリスト攻撃や総当たりのブルートフォース攻撃は、一度失敗すると次のパスワードに移ります。
そのため、正しいパスワードでも一度ログインを失敗させることで、不正ログインを阻止することができます。
ただし、正しいユーザーが毎回ログイン操作を2回行うことになるため、他のセキュリティ対策のほうが優先度が高いです。
8) XMLRPC防御(変更:不要)
[XMLRPC防御]は、デフォルト設定(ON)のままで大丈夫です。


XML-RPCとは、プログラム開発に利用する通信方式(プロトコル)の一種です。
ブルートフォースアタック(総当たり攻撃)などの攻撃に悪用されることがあります。
ただし、XML-RPCを無効にすると、プラグイン(Jetpackなど)が動かなくなってしまうことがあります。
そのため、DDoS攻撃(過負荷攻撃)に悪用されるXML-RPC ピンバックだけ無効化します。
9) ユーザー名漏えい防御(変更:不要)
[ユーザー名漏えい防御]は、デフォルト設定(OFF)のままで大丈夫です。


ユーザー名漏えい防御をON(有効)にすると、投稿者アーカイブにリダイレクトされなくなります。
ただし、あまり対策にはなっていないため、完璧を目指すなら「Edit Author Slug」などを併用する必要があります。
「Edit Author Slug」は、投稿者スラッグをユーザー名(ログインID)からニックネームに変更できるプラグインです。


投稿者アーカイブとは、投稿者ごとに記事一覧を表示するアーカイブページです。著者ページとも呼びます。
私(suya)の投稿者アーカイブは以下です。
> https://wp-search.org/ja/blog/author/suya/
投稿者スラッグとは、投稿者アーカイブページのURLのユーザー名(例:suya)を表す部分です。
WordPressでは、この「ユーザー名=ログインID」になっているため、簡単にログインIDがわかってしまいます。
以下のURLにアクセスしてみてください。
> https://wp-search.org/ja/blog/?author=1
ユーザー名を知らなくても、上記のURLからリダイレクトされるので、簡単にユーザー名がわかります。
そして、不正ログイン攻撃は、ほぼこのユーザー名を特定して行われます。
そのため、投稿者スラッグからログインIDを推測できないような対策を行うわけです。
REST APIとは、プログラム開発に利用する通信方式(プロトコル)の一種です。
これまでに、サイト改ざんなどの脆弱性を悪用する攻撃が行われています。
ただし、REST APIを無効にすると、プラグインが動かなくなってしまうことがあります。
WordPress(ワードプレス)の脆弱性を悪用されないように、定期的にアップデート(更新)して最新のバージョンに保ちましょう。
10) 更新通知(変更:任意)
[更新通知]は、デフォルト設定(ON)のままでも、OFFに変更しても大丈夫です。


レンタルサーバーなどで初めから更新通知メールが来るようでしたら、重複するのでOFFにしましょう。
通知メールが多いのが嫌でなければ、ONにしておいたほうが放置サイトでもバージョンアップ管理しやすいです。
11) WAFチューニングサポート(変更:適宜)
[WAFチューニングサポート]は、デフォルト設定(OFF)のままで大丈夫です。
後からテーマやプラグインの機能がWAFで誤検出されたときに、ONにして除外設定します。


「SiteGuard WP Plugin」でWAFチューニングできるのは、WAFにSiteGuardを採用したレンタルサーバーのみです。
他のレンタルサーバーは、WAFがないか、WAFの誤検知が少ないために細かいチューニングは基本的に不要です。
一方で、「SiteGuard」を採用したレンタルサーバーは、WAFの誤検知がかなり多いです。
除外設定は初心者向けではないため、サーバーでWAF機能自体をOFF(無効化)することも視野に入れてください。
サーバーのWAFを無効化する方法とログを確認する方法
レンタルサーバー各社のWAFのON/OFF(有効化/無効化)の変更方法やシグネチャのログ確認方法は、以下をご覧ください。
- 「SiteGuard WP Plugin」プラグインを使用しなくても、サーバー側で除外設定ができる場合があります。
12) 詳細設定(変更:不要)
[詳細設定]は、通常デフォルト設定(リモートアドレス)のままで大丈夫です。


CDN、ロードバランサー、プロキシサーバーなどを使用している場合は、IPアドレス取得方法を変更することがあります。
参考) ログイン履歴
左メニューの[ログイン履歴]をクリックすると、ログインログ(ログイン履歴)を確認することができます。


以上で、セキュリティ対策プラグイン「SiteGuard WP Plugin」の設定は完了です。
ログインページURLを変更した場合、必ず変更後のログインページURLをブックマークしておいてください。


ログインページからでないと、管理画面やダッシュボード(/wp-admin/)にアクセスできなくなります。
3) URLを忘れたとき / 管理画面にログインできないときの対処法
FTPソフトやレンタルサーバーのファイルマネージャーでサーバーディレクトリにアクセスします。
/public_html/サイト/wp-content/plugins/siteguard/を「siteguard2」などに変更します。
/サイト/public_html/wp-content/plugins/siteguard/などの場合もあります。
プラグイン「SiteGuard WP Plugin」が無効化された状態でログインできるはずです。
/public_html/サイト/wp-content/plugins/siteguard2/を「siteguard」に戻します。
/サイト/public_html/wp-content/plugins/siteguard2/などの場合もあります。
必ず変更したログインページのURLをブックマークしておきましょう。
画面が変わらない場合は、Cookie(クッキー)やブラウザキャッシュをクリアするか、別のブラウザでアクセスしてみてください。
.htaccessを確認するやり方もありますが、このやり方は他のプラグインにも使えて便利です。
4) その他の対処法
404エラーページ(Not Found)が表示される場合
ログインページ変更を実施していた場合、間違ったログインページにアクセスしようとすると「404 Not Found」と表示されます。
ブックマークなどから、変更したログインページURLにアクセスしてください。
変更したログインページURLがわからなくなった場合は、1つ上の「3) URLを忘れたとき / 管理画面にログインできないときの対処法」をご覧ください。
403エラーページ(Forbidden)が表示される場合
SiteGuardのWAFが誤検知すると、サイトにアクセスしても「403 Forbidden」「閲覧できません(Forbidden Access)」と表示されます。
閲覧できません (Forbidden access)
指定したウェブページを表示することができません。
入力したURLや値が正しくない可能性がございますのでご確認ください。
この場合、2つの対処法があります。
- サーバーでWAFをOFF(無効化)する
- サーバーで誤検出されたログからシグネチャを確認し、「SiteGuard WP Plugin」のWAFチューニングサポートで除外設定を行う
具体的なやり方は、使用するレンタルサーバーごとに違うため、詳しくはWAFチューニングサポートの項目をご覧ください。
「.htaccessの更新に失敗しました。」と表示される場合
.htaccessファイルへのアクセス権限(パーミッション)がない状態です。
SSHでサーバーにアクセスして、.htaccessファイルのパーミッションを644などに変更してください。
認証画像が表示されない場合
キャッシュプラグインやCDNを利用していると、CAPTCHAの認証画像が表示されない場合があります。
キャッシュ側で除外設定が必要ですが、よくわからない場合は画像認証をOFFにして使用しましょう。
ログインする前ですので、キャッシュクリアすることはできません。
「致命的なエラーをチェックするためにサイトと通信できないため、PHP の変更は取り消されました。」と表示された場合
テーマエディターで、「致命的なエラーをチェックするためにサイトと通信できないため、PHP の変更は取り消されました。SFTP を使うなど、他の手段で PHP ファイルの変更をアップロードする必要があります。」と表示される場合があります。
[管理ページアクセス制限]をOFFにしてください。
よくある質問(FAQ)
この記事のまとめ
プラグイン「SiteGuard WP Plugin」の初期設定と管理画面にログインできなくなったときの復旧方法を見てきました。
重要度の高いところは、必ず設定するようにしてください。
設定忘れてました。
セキュリティプラグインとしては、「BBQ Firewall」もおすすめです。
WordPress(ワードプレス)で最初に入れるその他の基本プラグインは、以下を参考にしてください。


さらに二段階認証でセキュリティを強化したい場合は、以下を参考にしてください。


WordPress(ワードプレス)の初期設定がまだの場合は、以下を参考にしてください。



コメント