ブログやサイトの運営において、セキュリティ対策は欠かせない存在です。
どれだけ完成度の高い記事やコンテンツを作っても、
不正アクセスで乗っ取られては全てが台無しになります。
ブログやサイトの大小にかからわず、不正アクセスは行われるリスクは常にあり、
個人ブログで小規模だから狙われないということもありません。
今回はセキュリティ対策の1つとして有名な「SiteGuard WP Plugin」プラグインの
使い方と設定方法について解説をしていきます。
ログインページURLの解説ばかりで他の設定を細かく知りたい!
という方向けにも各項目について解説していますので参照ください。
『SiteGuard WP Plugin』のインストール方法
- 管理画面の左メニューの「プラグイン」から「新規プラグインを追加」を選びます。
- 画面右側の検索ボックスに「SiteGuard WP Plugin」と入力します。

- 検索一覧から次のアイコンのプラグインを探します。
これをインストールし、有効化します。

見つからない場合は、次のリンクからダウンロードしてください。
- SiteGuard WP Plugin(作者: jp-secure)/ ja.wordpress.org
WP Content Copy Protectionの設定内容について
本プラグインで実装できる内容は以下の通りです。
それぞれの機能と設定内容について解説していきます。
最上部の管理ページアクセス制御は基本的に設定変更が不要なので解説を省略します。
ログインページURLの変更
プラグインの有効化を行うとプラグイン一覧の上部に次のようなメッセージが表示されます。
メッセージ末尾の「こちら」をクリックします。
既に画面を閉じていて上記の画面が出せない場合は、
管理画面の左メニューに「Site Guard」という項目が追加されているので選択します。
左メニューの「Site Guard」を選択した場合は、次にメニューから「ログインページ変更」を選択します。
いずれかの方法で次の画面が出たら、変更後のログインページ名の項目を確認します。
「http://■■■■■/login_56837」が現在のログインページのURLです。
※最後の数字はプラグインのインストール時にランダムに決まります。
「■■■■■」について
これはドメイン名です。
本ブログであれば「https://meredy.org/~」の「meredy.org」の部分に該当します。
これはブログ作成時に決めたものなので変更はできません。
「login_56837」について
先ほど記載した通り、初期の状態では「login_ランダムな5桁数字」が生成されます。
この部分は変更可能です。
この最後の部分を自由に変更し、最後の「変更を保存」ボタンを押すことで、
ログインページのURLを変更することができます。
オプションについて(※重要※)
変更後のログインページURLの項目の下に次の設定項目があります。
絶対にチェックを入れてください。
WordPressは、標準で「/wp-admin」がログインページのURLとして設定されています。
つまり「https://ドメイン名/wp-admin」が初期のログインページです。
ここに記載のある「リダイレクト」とは、上記の初期URLを直接入力した時にログインページが変更されている場合、自動的にログインページに飛ぶことのできる機能です。ログインページをどれだけ変更してもリダイレクトした場合、一発でログインページがバレます。なので絶対にチェックを入れてください。
つまり、チェックを入れてリダイレクト機能を実行できなくすることで、初期URLを入力してもログインページを隠すことができます。初期URLを入力した場合はログイン画面ではなく、ブログまたはサイトのホーム画面に飛ぶようになります。
画像認証について
初期状態では、「有効化」になっています。
不要な場合は解説から「無効化」に変更する必要があります。
画像認証のサンプル
画像認証機能を有効にした場合、ユーザ名(またはメールアドレス)とパスワードに加えて、次のような画像を使った文字入力が追加されます。人間による不正アクセスは防げませんが、AIや機械を使った不正アクセスを防ぐ手段にはなります。
画像認証の設定方法
管理画面の左メニューの「Site Guard」を選択し、ダッシュボード画面を出します。
「画像認証」を選択します。
初期状態では次のページで画像認証が設定されています。
- 「ログインページ」
- 「コメントページ」
- 「パスワード確認ページ」
- 「ユーザ登録ページ」
画像認証は「ひらがな」または「英数字」から選択することができます。
設定が不要なページまたは画像認証が不要な場合は「無効」を選択し、
「変更を保存」をクリックします。
ログイン詳細メッセージの無効化
初期状態では、「有効化」になっています。
これは必要な設定なので無効化する必要はありません。
設定内容自体も「有効化」「無効化」ボタンがあるだけなので設定画像は省略します。
ログイン詳細エラーメッセージとは、ログインに失敗した際、間違っているのがログインID(ユーザ名やメールアドレス)かパスワード、または両方なのかをお知らせする機能です。この機能を無効化することでエラーメッセージを一律で次の画像のように表示することができます。「有効化」で無効化する機能が働くので設定は変更しないでください。
ログインロック
管理画面の左メニューの「Site Guard」を選択し、ダッシュボード画面を出します。
「ログインロック」を選択します。
ログインロックとは、同じ接続IP(接続元)からの連続ログインを制限する機能です。
期間
連続ログインを制限する機能です。
初期状態では「5秒」が設定されているので、「5秒以内の連続ログイン」を制限します。
回数
ログインを一定回数失敗した際に、ログインの試行を制限する機能です。
制限する回数は次の項目で変更することができます。
初期状態では「3回」が設定されているので、
連続で3回ログインに失敗した場合、(ロック時間)の間ログインの試行ができなくなります。
ロック時間
ログインを一定回数失敗した際に、ログインの試行を制限する機能です。
初期状態では「1分」が設定されているので、「回数」の設定が初期の「3回」の場合は、
連続で3回ログインに失敗した場合、1分の間ログインの試行ができなくなります。
それぞれの設定回数や時間を変更した場合は、最後の「変更を保存」をクリックします。
ログインアラート
管理画面の左メニューの「Site Guard」を選択し、ダッシュボード画面を出します。
「ログインアラート」を選択します。
ログインに成功した場合の通知設定です。
失敗した場合の設定ではないので注意してください。
通知は設定しているメールアドレスに自動送信されます。
心当たりのない通知があった場合はすぐに不正アクセスを疑ってください。
変数について
通知時のメールに表示する件名や本文に表示する内容を変数を用いて設定することができます。
例えば、設定項目の「サブジェクト」には「%SITENAME%」という変数が使用されています。
これはサイト名を表示する変数です。
「%SITENAME%にログインがありました」という設定の場合、
本サイトであれば「メルプラにログインがありました」という件名になります。
ここで使用できる変数は次の通りです。
| サイト名 | %SITENAME% |
| ユーザ名 | %USERNAME% |
| 日付 | %DATE% |
| 時刻 | %TIME% |
| IPアドレス | %IPADDRESS% |
| ユーザーエージェント | %USERAGENT% |
| リファラー | %REFERER% |
サブジェクト
通知時のメールの件名です。
既に解説しましたが、「%SITENAME%」は、サイト名が自動入力されます。
次の内容はその他設定の一例です。
| %SITENAME%にログインがありました | ●●(サイト名)にログインがありました |
| %DATE%%TIME%にログインがありました | ●月●日●時●分にログインがありました |
| %USERNAME%がログインしました | ●●(ユーザ名)がログインしました |
メール本文
初期の内容は次の通りです。
リファラーとは
どこからアクセスしたかという情報です。
例えば「Google Chrome」で「Yahoo」を検索してアクセスした場合、
「Yahoo」から見たリファラーは「Googleの検索結果ページ」となります。
不正アクセスされた場合、早急な対応が必要になりますが、
ログインページを変えた上でどこからログインページを探し当てたのかという情報を
今後のセキュリティ対策として参考にするための要素になり得ます。
今回はセキュリティの一環として解説していますが、
サイトやブログの運営においては、Google検索やMicrosoft Edgeなど、
どこからのアクセスが多いかを割り出して活用する場面もあります。
ユーザーエージェントとは
アクセスに使用したブラウザの情報です。
リファラーとの違いの例として、
「Google Chrome」を起動して「Yahoo」を検索し、Yahoo検索からサイトAにアクセスした場合、
リファラーは「Yahooの検索結果ページ」、リファラーは「Google Chrome」となります。
両方を指定して表示させることで何を使って、どういった経路でアクセスしたかを参照できます。
受信者
サイトを複数人で管理している場合などはチェックを外す場合もあるかもしれません。
管理状態によって変更してください。1人で管理している場合はこのままで問題ありません。
フェールワンス
初期状態では、「無効化」になっています。
フェールワンスとは、正しいログイン情報(ユーザ名・パスワード)を
入力しても最初の1回は必ず失敗になる機能です。
失敗から一定時間内にもう1度正しいログイン情報を入力すると
ログインができるようになります。
有効化することでより強固なサイトになりますが、
その分管理者のログインも2度手間となるデメリットがあります。
設定をする場合は次の手順で有効化を行います。
管理画面の左メニューの「Site Guard」を選択し、ダッシュボード画面を出します。
「フェールワンス」を選択します。
有効化したい場合は「有効」を選択し、「変更を保存」をクリックします。
本プラグインでは、正しいログイン情報を入力した場合に1度目のログインが失敗し、
60秒以内に再度正しいログイン情報を入力した場合にログインが成功するようになります。
XMLRPC防御
XMLRPCをざっくりで説明すると、XMLと呼ばれる通信形式を使って、ネットワーク経由で他のコンピュータに処理を依頼する仕組み(RPC)です。本来この仕組みは、外部アプリとの連携やスマホアプリとの連携に使用されています。しかしこれを悪用した攻撃も存在します。その1つとしてブルートフォース攻撃と呼ばれるパスワードの総当たり攻撃等が存在します。
初期状態では「有効化」となっていますが、本プラグインではXMLRPCの機能の一部である「Pingback機能」のみを無効化する設定となっています。XMLRPC全体を無効化して不正アクセスの可能性をなるべく減らすこともできますが、当然デメリットもあるのでサイト上で外部アプリと連携する機能がある場合は注意しましょう。
設定をする場合は次の手順で行います。
管理画面の左メニューの「Site Guard」を選択し、ダッシュボード画面を出します。
「XMLRPC防御」を選択します。
先ほど解説した通り、初期状態ではXMLRPCの一部機能である「ピンバック無効化(Pingback機能)」となっています。全てを無効化したい場合は「XMLRPC無効化」を選択します。サイト運営上で不都合が生じてXMLRPC自体を有効化したい場合は機能自体を「無効」にし、「変更を保存」をクリックします。
ユーザー名漏えい防御(※有効化推奨)
WordPressの初期状態では記事の作成後、記事作成者のユーザ名が表示される場合があります。
ユーザ名が露呈した場合、ログイン情報が「ユーザ名+パスワード」の場合、
パスワードだけを試せばいいため、不正ログインされる可能性があがります。
WordPressにおいて、何の対策もしていないサイトでは、
「https://ドメイン名/?author=0」を入力することで、
そのサイト上のログインユーザーが表示されるようになっています。
そのため、初期状態では「無効化」となっていますが、
可能な限りは「有効化」するべきです。
設定をする場合は次の手順で行います。
管理画面の左メニューの「Site Guard」を選択し、ダッシュボード画面を出します。
「ユーザー名漏えい防御」を選択します。
「無効」から「有効」に切り替え、
最下部の「変更を保存」をクリックすることで変更ができます。
オプションに「REST API無効化」とありますが、
REST APIという機能を使用してユーザー名を割り当てる手段も存在するため、
これを無効化したい場合はチェックを入れます。
ただし、元々REST APIを用いた機能の例として天気アプリが天気データを取得するように、
何かしらの外部データを取得する機能があるようなプラグインを使用していた場合に
一部機能が動作しなくなる可能性もあります。
対象となるプラグインは下部のボックスから対象のプラグインを選択し、
「除外プラグイン 追加」をクリックすることで無効化の対象から除外されます。
更新通知
初期状態では「有効化」となっています。
特に変更する必要はありません。
WordPress本体、プラグイン、テーマいずれかの更新があった場合に管理者に通知する機能です。
バージョンが古い状態で使用することは、
セキュリティにおける脆弱性となり得ますので基本は更新が必要です。
ただし、今まで使えていたプラグインもWordpressを更新したことで
互換性を失い、使用できなくなる場合もあるので注意してください。
WAFチューニングサポート
初期設定では「無効化」となっています。
サイトにWAF(Web Application Firewall)を導入している場合の
誤検知対策のルールを設定できます。
関係のない場合は飛ばしてそのままで構いません。
設定を行いたい場合は設定を有効化し、こちらからでルールの作成手順を参照してください。
ログイン履歴(一番見るところです)
本プラグインで一番活用する機能です。
管理画面の左メニューの「Site Guard」を選択し、ダッシュボード画面を出します。
「ログイン履歴」を選択します。
ログインに使用した情報が自動的に表示されます。
ここで重要なのは「ログイン名」です。
色んなパターンでログイン名を試しているのであれば問題ありませんが、
正しいログイン名を使用して試行されていた場合、
ログイン名が露呈しているということなのですぐに変更するようにしましょう。
| 日時 | ログインを試行した「年-月-日-時-分-秒」が表示されます。 |
| 結果 | ログイン結果が「成功」または「失敗」で表示されます。 |
| ログイン名 | ログインに試行したユーザ名が表示されます。 |
| IPアドレス | ログイン元のIPアドレスが表示されます。 |
| タイプ | ログインを試したページが表示されます。 |
まとめ
いかがでしょうか。
何度か専門用語が出てきましたが、いずれも解説を読めばすぐに分かるものばかりです。
本プラグインを使用することでログイン履歴から不正アクセスの傾向や
ログインに使用したユーザー名をチェックすることができますし、
それ以外の面でも更新通知機能によってプラグインやテーマの更新を確認することもできます。
プラグインは多ければ多いほど、サイトが重くなるとはよく言われますが、
大事なサイトである以上、セキュリティ対策は欠かせないものとなります。
セキュリティ対策プラグインの導入を検討している方、
導入したけど設定方法が分からなかった方など、
本解説を改めて読み、導入の検討や設定方法の見直しをしてみてください。

コメントを残す