今回は、WordPressの人気プラグイン User Login History について詳しくまとめました。
User Login History は管理画面へのログイン履歴を全て残してくれる便利なプラグインで、セキュリティ対策の一環として利用されることが多いです。
他にもログイン履歴を取得できるプラグインはたくさんありますが、個人的に User Login History が一番簡単で使いやすいと感じています。
User Login History でログイン履歴を残すことで、このようなことが可能になります。
■複数ユーザーでサイト運営を行っている場合に、誰がいつログインを行ったかの監視
特に、管理画面から不正にログインしようとする攻撃(ブルートフォース攻撃やパスワードリスト攻撃など)は毎日のように発生しいています。
ログイン履歴はしっかりと残しておくことで様々な攻撃をチェックして、対策もとることができます。
「総当たり攻撃」とも呼ばれ、例えば5桁のパスワードのシステムがあれば、5桁で作成できるパスワード全ての組み合わせでログインを試みる方法です。
要は、手当たり次第にログインを試みてパスワードを盗み取る手段です。
何らかの手段でユーザーIDとパスワードを入手して不正にログインを行う方法です。
多サービスでも同じユーザーIDとパスワードを利用するユーザーも多いので、その情報を用いて不正ログインを行う者もいます。
それでは、まずは User Login History のインストール方法から説明していきます。
User Login History のインストール方法
User Login History のインストールは、管理画面左カラムにある「プラグイン」→「新規追加」から行います。
プラグインのインストール画面が開くので、画面右上に「User Login History」と入力して検索を行います。
すると、検索結果に該当プラグインが出てくるので、「今すぐインストール」をクリックしてインストールを開始します。
インストールが完了すると「有効化」ボタンが表示されるので、ボタンをクリックしてプラグインを有効化します。
これでインストールが完了です。
「User Login History」は、インストールして有効化するだけで機能するので、ログイン履歴画面に移動して履歴をチェックしてみます。
ログイン履歴のチェック方法
インストールが完了したら、WordPress管理画面の左カラムに User Login History というメニューが追加されるので、クリックするとこのような画面が開きます。
管理画面へのログイン履歴は、こちらの画面で確認することができます。
●Username:ログイン時のユーザー名
●Role:ユーザー権限
●Old Role:変更前のユーザー権限(権限を変更した場合)
●Browser:ブラウザ
●Operating System:OS(Windows、Macなど)
●IP Address:IPアドレス
●Timezone:タイムゾーン
●Country:国名
●User Agent:ユーザーエージェント
●Duration:ログイン時に画面に滞在していた時間
●Last Seen:最後に画面を操作した時間
●Login:ログイン日時
●Logout:ログアウト日時
●Login Status:ログインステータス(不明、ログイン、ログアウト、ログイン失敗)
ログイン履歴のフィルター機能
ログイン履歴は、フィルター機能を使って絞り込みを行うこともできます。
デフォルトでは、「日付け」の項目のみが表示されています。
試しに特定の日付を選択して「FILTER」をクリックしてみてください。
該当の日付け内のログイン履歴のみに絞り込まれます。
また、画面右側に表示されている「SHOW ADVANCED FILTERS」をクリックすると、さらに詳細なフィルタリングの項目が出てきます。
これにより、ログイン履歴の細かな検索が行えるようになっています。
●To:ログイン日時 上限
●User ID:ユーザーID
●Username:ログイン時のユーザー名
●Country:国名
●Browser:ブラウザ名(chrome、firefoxなど)
●Operating System:OS(Windows、Macなど)
●IP Address:IPアドレス
●Timezone:タイムゾーン
●Current Role:現在のユーザー権限
●Old Role:変更前のユーザー権限(ユーザー権限を変更した場合)
●Login Status:ログインステータス(不明、ログイン、ログアウト、ログイン失敗)
User Login History の設定変更
User Login History では、オリジナルの設定画面も用意されます。
管理画面左カラムにある「設定」→「User Login History」を選択してください。
「Basic Settings」と「Advanced Settings」という2つのタブが表示されていると思います。
Basic Settings タブ
「Basic Settings」タブでは、「Online」「Idle」の2つのチェックボックスが用意されています。
●Idle:アイドル状態のユーザーとして表示する分数を設定。例えば30分に設定すると、「Last Seen」は30分間灰色で表示されます。
Idleに設定した分数を超えるとオフラインユーザー(Offline)として赤く表示されます。
ログインしたアカウントがオンライン中か、アイドル状態かオフラインかを分かりやすくするために、色で分けて設定できるようになっているだけですので、ここはデフォルトのままでもOKです。
「Advanced Settings」タブ
Advanced Settings タブでは、「Geo Tracker」にチェックを入れることで、タイムゾーンと国名も履歴と一緒に残してくれるようになります。
試しに「Geo Tracker」にチェックを入れると、このようにアクセス元のタイムゾーンと国も残してくれるようになります。
タイムゾーンと国名も残しておきたい方は、「Geo Tracker」にもチェックを入れておきましょう。
Geo Tracker にチェックを入れておいて、特定の国からの不正なログイン履歴があまりにも多く残っているという場合には、その国ごとブロックしてしまうという利用の仕方もあります。
ショートコード
User Login History では、ショートコードを使ってユーザーページに自身のログイン履歴を表示させることもできます。
例えば、ユーザーAというユーザーIDでログインしている場合には、ユーザーAの履歴のみが表示されます。
ショートコードはこちら。
[[user_login_history]]
【テーマファイルに書き込む場合】
<?php echo do_shortcode(‘[[user_login_history]]’); ?>
また、いくつかのオプションも用意されています。
[[user_login_history limit=’20’ reset_link=’custom-uri’ columns=’ip_address,time_login’ date_format=’Y-m-d’ time_format=’H:i:s’]]
【テーマファイルに書き込む場合】
<?php echo do_shortcode(“[[user_login_history limit=’20’ reset_link=’custom-uri’ columns=’ip_address,time_login’ date_format=’Y-m-d’ time_format=’H:i:s’]]”); ?>
ユーザー側にはこのように表示されます。
正直、ユーザー側にログイン履歴を表示させる必要があるかは分かりませんが、興味のある方は一度試してみてください。
因みに、ログイン履歴が表示されるのは、管理画面からログインしているユーザーのみになっています。
不特定多数のユーザーに表示されるわけではないので安心してください。
ここまで記事を書き進めてきて、休憩がてらにログイン履歴を確認してみると……
30分くらいの間に、この様にたくさんのログイン試行がなされていることが確認できました。
びっくりですね!(゚Д゚;)
実際に、このようなログインエラーの履歴が残っているということは、明らかに攻撃を受けている状態なので、早急に何かしらの対処が必要です。
不正なログイン履歴への対処方法
このログイン履歴にはIPアドレスが記録されているので、以前記事にしたIPアドレスをブラックリストに登録する方法が役に立ちます。
しかし、これだけたくさんのIPを、ひとつひとつ登録していくのはなかなか骨が折れる作業で、登録し終えてまた暫くすると別のIPでまた大量にログイン試行されるという、まさにいたちごっこで時間と労力が途方もない状態になりました。
そこで次回は、もう少し簡単に不正ログイン試行を遮断できる方法を書いていこうと思います。
WordPressプラグイン User Login History のまとめ
今回は、WordPressプラグイン User Login History について使い方などを詳細にまとめました。
User Login History を利用することで、不正なログイン履歴をチェックすることもできます。
また、複数ユーザーでサイトを運営している場合には、誰がいつログインを行ったかもチェックすることができます。
WordPressは世界中に多くの利用者がいるために、悪意のあるユーザーからの攻撃対象になることも多いです。
実際、サイトの規模にかかわらず多くの利用者が攻撃を受けています。
管理人も User Login History でログイン履歴をチェックしていますが、驚くほど大量の不正なログイン履歴が残っています。
セキュリティ対応もサイト運営者の責任なので、「User Login History」を使ってしっかりと不正なアクセスを管理するようにしましょう。
今回は以上となります、お疲れ様でした。
コメント