Linux命令-lastlog(显示系统中所有用户的最近一次登录信息)

🧭说明

lastlog 命令用于显示系统中所有用户的最近一次登录信息,对于系统安全和用户活动监控非常实用。

核心语法与选项

lastlog 命令的基本语法为 lastlog [选项]。常用的选项如下表所示:

选项 说明
-u <用户名> 仅显示指定用户的登录信息。
-t <天数> 显示在最近指定天数内有登录活动的用户。
-b <天数> 显示早于指定天数前的登录记录。
-S (需与 -u 连用)将指定用户的登录记录设置为当前时间。
-C (需与 -u 连用)清除指定用户的登录记录。
-h 显示帮助信息。

基础用法示例

下面通过几个例子来说明如何使用这些选项。

  1. 查看所有用户的登录信息

    直接执行 lastlog 命令,会列出系统中所有用户(按UID排序)的最后登录信息,包括用户名、终端端口、来源IP地址和登录时间。从未登录过的用户会显示为 Never logged in

    复制代码
    $ lastlog
    Username         Port     From             Latest
    root             pts/0    192.168.1.10     Mon Jan 20 10:30:15 +0800 2025
    john             pts/1    192.168.1.15     Tue Jan 21 14:22:05 +0800 2025
    daemon                                      Never logged in
    ...
  2. 查询特定用户

    使用 -u 选项可以快速定位单个用户的信息。

    复制代码
    $ lastlog -u john
    Username         Port     From             Latest
    john             pts/1    192.168.1.15     Tue Jan 21 14:22:05 +0800 2025
  3. 筛选登录时间

    结合 -t-b 选项,可以筛选在特定时间范围内有过登录行为的用户。

    • 查看最近7天内登录过的用户:

      bash 复制代码
      lastlog -t 7
    • 查看超过30天未登录的用户:

      bash 复制代码
      lastlog -b 30

实用技巧与注意事项

  • 查找休眠账户 :一个非常实用的安全技巧是结合 grep 命令快速找出所有从未登录过的系统账户,这有助于识别和清理不必要的账户。

    bash 复制代码
    lastlog | grep "Never logged in"
  • 权限要求lastlog 命令读取的是 /var/log/lastlog 文件,因此通常需要 root 权限 才能获得完整的输出结果。在普通用户下执行,可能无法看到所有用户的信息。

  • 谨慎使用管理选项-S(设置)和 -C(清除)选项可以直接修改登录记录,请谨慎使用,通常用于特定的系统维护或调试场景。

相关推荐
小五传输4 小时前
消防总队信创改造实践:国产文件传输服务器解决文件传输难题
大数据·运维·安全
云飞云共享云桌面4 小时前
医疗器械设备研发:多人同时操作 SolidWorks,怎样依靠单台服务器替代多工作站
运维·服务器·网络·数据库·制造
T型码农要学习4 小时前
开源项目5|FileBrowser:免费在线文件管理器!随时随地管控服务器文件
运维·服务器·人工智能·开源
朱 欢 庆5 小时前
云服务器附件备份到本机内网服务器
运维·服务器·前端·经验分享
梦想不只是梦与想5 小时前
Web 服务器网关协议:ASGI 和 WSGI
服务器·python·fastapi
智恒百亿5 小时前
8 卡 RTX 5090 服务器深度实测:256GB 显存能否支撑 70B 模型微调?选型参考
大数据·运维·服务器·人工智能
志栋智能10 小时前
超自动化运维如何支持合规审计?
运维·自动化
小诗懂技术10 小时前
【网络通信UDP】基础 进程间不同主机的通信
运维·服务器·网络
weixin_4407305010 小时前
selenium实战记录-从登陆-首页-进入应用流程用例三种参数化+日志+报告
服务器·selenium·测试工具
名字还没想好☜11 小时前
Docker 容器安全加固实战:非 root、只读根文件系统、drop capabilities 与最小攻击面
运维·安全·docker·容器·kubernetes