Linux豆知識 190
認証に関する情報を記録するログファイル
公開日:2016年04月28日
認証に関するログファイルは、「/var/log/wtmp」「/var/log/lastlog」「/var/log/btmp」「/var/log/faillog」「/var/log/tallylog」などがあります。しかし、これらのファイルはいずれもバイナリファイルですので、エディタなどで直接参照することはできません。内容を参照するには、専用のコマンドを利用します。
「/var/log/wtmp」は、ログインに成功した場合にその情報が記録されるファイルです。このファイルを参照するには、lastコマンドが利用できます。
---
$ last
user01 pts/0 192.168.0.101 Sun Apr 17 03:29 - down (00:03)
reboot system boot 2.6.32-573.22.1 Sun Apr 17 06:33 - 13:46 (12+10:13)
---
このように、どのユーザが、どのコンソールを利用して、どのホストから、いつ接続してきたかがわかります。なお、2つ目のrebootの記述は、システムが再起動されたことを意味するので、「いつシステムが再起動されたか」ということもわかります。
「/var/log/lastlog」は、ユーザの最終ログイン時刻が記録されるファイルです。このファイルは、lastlogコマンドを利用します。
「/var/log/btmp」は、ログインを試みたが失敗した場合に、その情報が記録されるファイルです。このファイルを参照するにはlastbコマンドを利用しますが、このコマンドを実行するには管理者権限が必要です。システムに不正侵入が試みられていないかどうか?を確認するため、外部から意図不明のアクセスが確認されたときなど、あるいは何もなくても定期的に実行するとよいでしょう。
「/var/log/faillog」は、ログインの失敗回数がユーザごとに記録されるファイルです。「/var/log/btmp」では失敗したログインが(システムに存在しないユーザ名を用いた場合であっても)すべて記録するのに対し、「/var/log/faillog」ではシステムに存在するユーザのログイン失敗が記録されます。このファイルとPAMのpam_tallyモジュールを利用すると、予め決められた回数ログインに失敗したユーザにアカウントロックをかけることができるようになります。この操作はpam_tallyコマンドが利用できます。
「/var/log/tallylog」は、「/var/log/faillog」と同じ役割のファイルですが、「/var/log/faillog」がアーキテクチャごとに異なる形式となってしまっているため、アーキテクチャに依存しないファイルとして「/var/log/tallylog」ファイルが用意されています。「/var/log/tallylog」を利用する場合には、「pam_tally2モジュール」を利用することになります。アカウントロックなどの制御にはpam_tally2コマンドを利用します。
さまざまな情報が得られるログファイルですので、それぞれの役割と参照方法をしっかりと押さえておきましょう。