utmp、wtmp和lastlog日志檔案是多數重用UNIX日志子系統的關鍵--保持使用者登入進入和退出的紀錄。1)/var/log/secure:記錄登入系統存取資料的檔案;例如:pop3,ssh,telnet,ftp等都會記錄在此.2)/ar/log/btmp:記錄登入這的資訊記錄,被編碼過,是以必須以last解析;例如:lastb | awk '{ print $3}' | sort | uniq -c | sort -nr | more3)/var/log/message:幾乎所有的開機系統發生的錯誤都會在此記錄;4)/var/log.boot.log:記錄一些開機或者關機啟動的一些服務顯示的啟動或者關閉的資訊;5)/var/log/maillog:記錄郵件的存取和往來;6)/var/log/cron:用來記錄crontab這個服務的内容;7)/var/log/httpd,/var/log/mysqld.log等等檔案,記錄幾個不同的網絡服務的記錄檔案;8)/var/log/acpid , ACPI - Advanced Configuration and Power Interface,表示進階配置和電源管理接口。後面的 d 表示 deamon 。 acpid 也就是 the ACPI event daemon 。 也就是 acpi 的消息程序。用來控制、擷取、管理 acpi 的狀态的服務程式。9)/var/run/utmp 記錄着現在登入的使用者;10)/var/log/lastlog 記錄每個使用者最後的登入資訊;11)/var/log/btmp 記錄錯誤的登入嘗試;12)/var/log/dmesg核心日志;13)/var/log/cpus CPU的處理資訊;14)/var/log/syslog 事件記錄監控程式日志;15)/var/log/auth.log 使用者認證日志;16)/var/log/daemon.log 系統程序日志;17)/var/log/mail.err 郵件錯誤資訊;18)/var/log/mail.info 郵件資訊;19)/var/log/mail.warn 郵件警告資訊;20)/var/log/daemon.log 系統監控程式産生的資訊;21)/var/log/kern 核心産生的資訊;22)/var/log/lpr 行列印機假脫機系統産生的資訊;-----------------------------------------------常用日志檔案系統日志是由一個名為syslog的服務管理的,如以下日志檔案都是由syslog日志服務驅動的:/var/log/boot.log:錄了系統在引導過程中發生的事件,就是Linux系統開機自檢過程顯示的資訊/var/log/lastlog :記錄最後一次使用者成功登陸的時間、登陸IP等資訊/var/log/messages :記錄Linux作業系統常見的系統和服務錯誤資訊/var/log/secure :Linux系統安全日志,記錄使用者和工作組變壞情況、使用者登陸認證情況/var/log/btmp :記錄Linux登陸失敗的使用者、時間以及遠端IP位址/var/log/syslog:隻記錄警告資訊,常常是系統出問題的資訊,使用lastlog檢視/var/log/wtmp:該日志檔案永久記錄每個使用者登入、登出及系統的啟動、停機的事件,使用last指令檢視/var/run/utmp:該日志檔案記錄有關目前登入的每個使用者的資訊。如 who、w、users、finger等就需要通路這個檔案/var/log/syslog 或 /var/log/messages 存儲所有的全局系統活動資料,包括開機資訊。基于 Debian 的系統如 Ubuntu 在 /var/log/syslog 中存儲它們,而基于 RedHat 的系統如 RHEL 或 CentOS 則在 /var/log/messages 中存儲它們。/var/log/auth.log 或 /var/log/secure 存儲來自可插拔認證子產品(PAM)的日志,包括成功的登入,失敗的登入嘗試和認證方式。Ubuntu 和 Debian 在 /var/log/auth.log 中存儲認證資訊,而 RedHat 和 CentOS 則在 /var/log/secure 中存儲該資訊。/var/log/wtmp該日志檔案永久記錄每個使用者登入、登出及系統的啟動、停機的事件。是以随着系統正常運作時間的增加,該檔案的大小也會越來越大,增加的速度取決于系統使用者登入的次數。該日志檔案可以用來檢視使用者的登入記錄,last指令就通過通路這個檔案獲得這些資訊,并以反序從後向前顯示使用者的登入記錄,last也能根據使用者、終端tty或時間顯示相應的記錄。/var/run/utmp該日志檔案記錄有關目前登入的每個使用者的資訊。是以這個檔案會随着使用者登入和登出系統而不斷變化,它隻保留當時聯機的使用者記錄,不會為使用者保留永久的記錄。系統中需要查詢目前使用者狀态的程式,如 who、w、users、finger等就需要通路這個檔案。該日志檔案并不能包括所有精确的資訊,因為某些突發錯誤會終止使用者登入會話,而系統沒有及時更新 utmp記錄,是以該日志檔案的記錄不是百分之百值得信賴的。以上提及的3個檔案(/var/log/wtmp、/var/run/utmp、/var/log/lastlog)是日志子系統的關鍵檔案,都記錄了使用者登入的情況。這些檔案的所有記錄都包含了時間戳。這些檔案是按二進制儲存的,故不能用less、cat之類的指令直接檢視這些檔案,而是需要使用相關指令通過這些檔案而檢視。其中,utmp和wtmp檔案的資料結構是一樣的,而lastlog檔案則使用另外的資料結構,關于它們的具體的資料結構可以使用man指令查詢。每次有一個使用者登入時,login程式在檔案lastlog中檢視使用者的UID。如果存在,則把使用者上次登入、登出時間和主機名寫到标準輸出中,然後login程式在lastlog中記錄新的登入時間,打開utmp檔案并插入使用者的utmp記錄。該記錄一直用到使用者登入退出時删除。utmp檔案被各種指令使用,包括who、w、users和finger。下一步,login程式打開檔案wtmp附加使用者的utmp記錄。當使用者登入退出時,具有更新時間戳的同一utmp記錄附加到檔案中。wtmp檔案被程式last使用。清除logrm -rf /var/log/.gzrm -rf /var/log/.1echo "" > /var/log/dmesgecho "" > /var/log/kern.logecho "" > /var/log/messagesecho "" > /var/log/syslogecho " " > test.log> test.logcat /dev/null > test.logcat /dev/null /var/log/wtmpcat /dev/null /var/log/messagescat /dev/null /var/log/secure linux 下可以用history 檢視曆史執行指令,但預設沒有記錄操作時間,也無法檢視是哪個用戶端執行的指令;可以用/usr/bin/script 來記錄使用者操作;netstat -a 查詢連接配接狀态wtmp和utmp檔案都是二進制檔案,他們不能被諸如tail指令剪貼或合并(使用cat指令)。使用者需要使用who、w、users、last和ac來使用這兩個檔案包含的資訊。who:who指令查詢utmp檔案并報告目前登入的每個使用者。Who的預設輸出包括使用者名、終端類型、登入日期及遠端主機。w:w指令查詢utmp檔案并顯示目前系統中每個使用者和它所運作的程序資訊。users:users用單獨的一行列印出目前登入的使用者,每個顯示的使用者名對應一個登入會話。如果一個使用者有不止一個登入會話,那他的使用者名把顯示相同的次數。例如:users(回車)顯示:chyang lewis lewis ylou ynguo ynguo last:last指令往回搜尋wtmp來顯示自從檔案第一次建立以來登入過的使用者。例如: linux檢視日志:# cd /var/log# less secure或者# less messages最近登入的日志:# las
作者:Drafei
連結:https://www.jianshu.com/p/ad59f4a938e9
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。