Linuxでは、各ユーザーの最終ログイン時刻を記録した
/var/log/lastlog ファイルが存在します。このファイルはバイナリ形式のため、cat や less では読めません。専用の lastlog コマンドを使って参照します。【この記事でわかること】
・lastlogコマンドで全ユーザーの最終ログイン時刻を一覧表示できる・-uオプションで特定ユーザーの最終ログインだけを絞り込める
・/var/log/lastlogはバイナリ形式のためcatコマンドでは読めない
・セキュリティ監査でlastlogを使う実務的な手順を解説
lastlogコマンドとは
lastlog コマンドは、/var/log/lastlog ファイルに記録された「ユーザーごとの最終ログイン情報」を読み取って表示します。/var/log/wtmp(ログイン履歴)とは異なり、あくまでも「最後にログインした記録のみ」を保持する点が特徴です。基本的な使い方
1. 全ユーザーの最終ログインを確認する
引数なしで実行すると、システム上のすべてのユーザーとその最終ログイン時刻が表示されます。[root@Tiger ~]# lastlog ユーザ名 ポート 場所 最近のログイン root tty1 金 8月 24 13:45:27 +0900 2012 bin **一度もログインしていません** daemon **一度もログインしていません** adm **一度もログインしていません** lp **一度もログインしていません** sync **一度もログインしていません** shutdown **一度もログインしていません** 〈中略〉 sshd **一度もログインしていません** tcpdump **一度もログインしていません** pakira pts/0 192.168.0.162 水 10月 10 12:21:19 +0900 2012
2. 特定ユーザーのみを確認する(-uオプション)
特定のユーザーの最終ログインだけを確認したい場合は、-u オプションでユーザー名を指定します。[root@Tiger ~]# lastlog -u pakira ユーザ名 ポート 場所 最近のログイン pakira pts/0 192.168.0.162 水 10月 10 12:21:19 +0900 2012
3. 一定期間ログインしていないユーザーを確認する(-bオプション)
-b 日数 を指定すると、指定した日数より前にログインしたユーザー(長期間ログインしていないユーザー)のみ表示できます。# 90日以上ログインしていないユーザーを表示する [root@Tiger ~]# lastlog -b 90
応用・セキュリティ監査での実務活用
lastlogとlastコマンドの違い
混同されやすいコマンドとの違いを整理しておきます。・lastlog:ユーザーごとの「最終ログイン時刻のみ」を保持(
/var/log/lastlog参照)・last:ログイン・ログアウトの全履歴を保持(
/var/log/wtmp参照)・lastb:ログイン失敗の履歴(
/var/log/btmp参照)セキュリティ監査では、3つのコマンドを組み合わせて調査するのが現場の定番手順です。
不審なシステムアカウントのログインを検出する
本来ログインしないはずのbin や daemon などのシステムアカウントに最終ログイン時刻が記録されていた場合、セキュリティインシデントの可能性があります。# ログイン記録があるユーザーのみ一覧表示する [root@Tiger ~]# lastlog | grep -v "**一度もログインしていません**"
トラブルシュート
「/var/log/lastlog が存在しない」場合
/var/log/lastlog が存在しない場合、lastlogコマンドはエラーを表示します。ファイルが削除されている場合は空ファイルを作成することで記録が再開されます(過去の記録は失われます)。# lastlogファイルを新規作成する(過去の記録は復元不可) [root@Tiger ~]# touch /var/log/lastlog [root@Tiger ~]# chmod 644 /var/log/lastlog
本記事のまとめ
・lastlog:全ユーザーの最終ログイン時刻を表示(/var/log/lastlog参照)・
lastlog -u ユーザー名:特定ユーザーの最終ログインを確認・
lastlog -b 日数:長期間ログインしていないユーザーを抽出・システムアカウントへの不審なログインはセキュリティインシデントの兆候
・
/var/log/lastlog はバイナリ形式のため cat では読めないでも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
Linuxサーバーのセキュリティ管理を体系的に学びたい方へ
lastlogコマンドによるユーザー管理は、サーバーセキュリティ監査の基本の一つです。
現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。
「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
登録10秒/合わなければ解除3秒 / 詳細はこちら
- 次のページへ:lastコマンドでLinuxのログイン履歴を確認する方法|lastbで失敗ログインとwtmpの見方も
- 前のページへ:セキュリティ関連のログを表示する
- この記事の属するカテゴリ:Linuxtips・ログ管理へ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。
登録無料・いつでも解除できます