一、概述
在Linux運維過程中,我們經常需要監控系統的資源使用情況以及用戶活動情況,其中用戶活動情況是非常重要的一部分。Linux系統提供了last命令來實時監控Linux用戶的活動情況。last命令可以列出所有成功登錄的用戶,顯示用戶名字、登錄時間、退出時間、登錄IP等信息。
二、last命令的語法
下面是last命令的基本語法:
last [選項] [用戶名] [終端名] [tty設備名] [主機名] [-f 文件名] [-n 顯示行數] [--time-format 格式] [--until 時間] [--since 時間]
其中,常用的選項包括:
- -n:指定最近顯示的行數
- –since:指定顯示從某個時間開始的記錄
- –until:指定顯示到某個時間截止的記錄
- –time-format:指定時間格式,例如%s、%F %T等
三、last命令的示例
1. 顯示所有用戶的登錄記錄
$ last root pts/0 192.168.1.100 Wed Sep 8 10:50 still logged in user pts/1 192.168.1.100 Wed Sep 8 09:08 - 09:18 (00:10) root tty1 Wed Sep 8 07:51 still logged in reboot system boot 4.15.0-151-gene Wed Sep 8 07:44 - 11:56 (04:12)
上面的結果顯示了所有用戶的登錄和登出記錄,其中每條記錄包括用戶名、終端名、遠程主機IP、登錄和登出時間等信息。
2. 顯示指定用戶的登錄記錄
$ last myuser myuser pts/2 192.168.1.100 Tue Sep 7 16:45 - 16:51 (00:06) myuser pts/2 192.168.1.100 Tue Sep 7 16:29 - 16:45 (00:16) myuser pts/1 192.168.1.100 Tue Sep 7 14:49 - 14:58 (00:08) myuser pts/2 192.168.1.100 Mon Sep 6 22:45 - 22:46 (00:01)
上面的命令顯示了用戶myuser的登錄和登出記錄。
3. 顯示指定時間段內的登錄記錄
$ last --since "2021-09-06 00:00:00" --until "2021-09-07 00:00:00" root tty1 Tue Sep 7 07:30 - 07:31 (00:00) reboot system boot 4.15.0-151-gene Tue Sep 7 07:28 - 15:06 (07:37)
上面的命令顯示了從2021年9月6日零點到2021年9月7日零點期間的登錄和登出記錄。
四、注意事項
1. 僅顯示活動期間的記錄
last命令會記錄所有用戶的登錄和登出記錄,但默認情況下會顯示所有成功登錄過的用戶,而不區分活動期間和非活動期間。如果只需要查看用戶的活動期間,可以使用下面的命令:
$ last -F
2. 依據IP顯示用戶的登錄記錄
如果需要按照IP地址顯示用戶的登錄記錄,可以使用下面的命令:
$ last -a -i
3. 檢查登錄異常
通過last命令可以及時發現系統登錄異常的情況,可以方便的判斷用戶是否異常登錄,以及是否存在未授權的IP登錄等問題。
4. 文件格式化輸出
last命令還可以將輸出結果格式化保存到指定文件中,例如:
$ last -F > last.log
這樣就可以將所有用戶的登錄記錄保存到文件last.log中。
五、總結
last命令可以方便的實時監控Linux用戶的活動情況,通過簡單的命令選項和格式化輸出,可以快速發現系統的登錄異常問題,並及時採取措施保障系統的安全。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/272463.html