LinuxとUbuntuでログイン履歴を表示する方法
Ubuntu を使っていると、ログに必ずしもすべてがそのまま表示されるわけではないのが不思議です。そのため、ターミナルを開いて手動で操作する必要があることもあります。離席中に誰かがログインしていないか確認したい場合や、最近のアクセス状況を知りたい場合などです。理由が何であれ、このガイドでは、ログイン履歴(成功したログインや失敗したログインなど)を確認するための一般的なコマンドやテクニックをすべて紹介しているので、誰がシステムにアクセスしたかをより明確に把握できます。何が起こっているのかを本当に把握するには、 last、lastb、さらには sudo マジックにも慣れておく必要があります。ログがクリアされたりローテーションされたりすることもあるので常に完璧というわけではありませんが、一般的なケースのほとんどをカバーしています。
Ubuntuでログイン履歴を修正または確認する方法
ログインログが利用可能かどうか、また成功したログインを表示する方法を確認します
last
まず、最近のログイン成功履歴を確認したいとします。Linuxでは昔からあるので、簡単なコマンドで大抵はうまくいきます。このコマンドは/var/log/wtmpからデータを取得しますが、ログがローテーションされたりクリアされたりすると、すべてが表示されなくなることがあります。VPN接続でターミナル(Ctrl+ Alt+ T)に入り、次のように入力するだけです。
last
ユーザー名、ログイン時間、各セッションの継続時間などの情報とともに、最近のログイン履歴が一覧表示されます。「再起動」のエントリにはご注意ください。これはシステムが再起動されたことを意味するので、通常は問題ありません。この機能の便利な点は、手間をかけずに簡単にスナップショットを取得できることです。不自然なユーザー名やログイン時間に気付いた場合は、詳しく調査する価値があるかもしれません。
失敗したログイン試行を確認する方法(もちろん、ハッカーも試みるため)
失敗したログイン試行を確認するには、少しコツが必要です。Ubuntuでは では失敗した試行は表示されませんが、適切な権限があればlast
コマンドは表示されます。このコマンドは/var/log/btmpからログを読み込みます。すぐに動作しない場合は、管理者権限が必要な可能性がありますので、 sudoを先頭に追加してください。lastb
sudo lastb
失敗した試行のリストが出力されます。複数の試行が表示される場合もありますが、これはあまり良い知らせではありませんが、少なくとも情報を得ることができます。ただし、ログがローテーションされていたり、監査が有効になっていなかったりする場合もあるため、完全なシステムであるとは期待しないでください。
パーミッションの扱い方 — Linuxではパーミッションの扱いに手間がかかることがあるため
実行時に権限が拒否された場合は、 sudolastb
を追加してください。Linuxはログの改ざんをある程度防ぐためにこの方法を採用しています。パスワードを入力すると、失敗したログインが表示されます。設定によっては、失敗したログイン試行のログ出力が有効になっていない場合やログが消去されている場合、このコマンドを実行しても何も表示されないことがありますが、試してみる価値はあります。sudo lastb
画面に大量のログが表示された場合のログの終了方法
いろいろ調べていて出力が長すぎてちょっと面倒な場合は、 を押して終了できますQ。これはページャーの通常の動作です。ログが巨大になる場合があり、特にしばらくログをクリーンアップしていない場合は顕著です。特定の情報を探している場合は、リダイレクトやフィルタリングを検討してください。
追加のヒントとよくある問題
ログはシステム構成に依存することを覚えておいてください。必要な情報が見つからない場合は、rsyslogやsystemd-journaldなどのログサービスが正しく動作しているかどうかを確認してください。また、ログは一定期間後にローテーションされたり期限切れになったりする可能性があるため、最近のアクティビティは通常問題ありませんが、古い情報は失われている可能性があります。さらに心配な場合は、Fail2Banやauditdなどのより高度なログ機能を設定して、すべてのログを追跡することを検討してください。
もう一つ奇妙な点があります。ログが残っている場合、実行中last
またはlastb
新規インストール時にほとんど何も表示されないことがあります。ログを手動で消去した場合やシステムクリーンアップ中に消去した場合も同様です。Windowsは必要以上に難しくする必要があるので、これは注意が必要です。
まとめ
Ubuntuのログイン履歴を盗み見るのはそれほど複雑ではありませんが、完全にシームレスというわけでもありません。ログの管理方法によって異なります。ほとんどの場合、last
そしてsudo lastb
これが最善の策です。定期的にログを監視し、何か怪しい点に気づいたら、パスワードを変更するか、セキュリティを強化しましょう。これは潜在的な問題に先手を打つ良い方法です。しばらくすると、どのログが何を意味するのかが分かるようになり、異常なアクティビティをより早く発見できるようになります。
まとめ
last
最近の成功したログインに使用sudo lastb
ログイン失敗時に使用- ログが有効になっており、ローテーションされていないことを確認します
- ログは消去または制限される可能性があるため、100%頼りにしないでください。
- セキュリティが懸念される場合は、定期的にログを監視してください
結論
Ubuntuにログインしたユーザーを特定するのは難しくありませんが、ログが残っていなかったり、ログの詳細が不十分だったりすると、イライラしてしまうことがあります。それでも、これらのコマンドはよくあるシナリオのほとんどに対応しています。誰かがログインしようとしていると思われる場合は、ログを注意深く確認し、システムを最新の状態に保ち、セキュリティを確保することを忘れないでください。Linuxでは、当然のことながら、必要以上に複雑にしているからです。これで、誰かが推測したり、あれこれいじくり回したりする時間を節約できることを願っています。