Linux 命令之 - last
命令简介
last
命令用于显示系统中记录的最近登录用户的信息。它可以显示登录和注销的时间、用户名、来源主机等详细信息。该命令通常用于审计和监控系统的登录活动。
命令格式
1 | last [选项] |
参数说明
命令实例
基本用法
1.显示最近登录信息
1 | last |
这将显示最近登录系统的用户信息,包括登录时间、注销时间、用户名和来源主机。
2.显示最近 7 天的登录信息
1 | last -d 7 |
这将仅显示最近 7 天内登录系统的用户信息。
- 显示最后一次登录信息
1 | last -f |
这将仅显示最后一次登录系统的用户信息。
4.显示 IP 地址而不是主机名
1 | last -i |
这将显示用户登录时的 IP 地址,而不是主机名。
5.同时显示主机名和 IP 地址
1 | last -x |
这将同时显示用户登录时的主机名和 IP 地址。
扩展用法
1.将输出保存到文件
1 | last > last_logins.txt |
这将将 last
命令的输出保存到 last_logins.txt
文件中。
2.结合 grep 过滤输出
1 | last | grep "root" |
这将仅显示与 root
用户相关的登录信息。
3.统计登录次数
1 | last | awk '{print $1}' | sort | uniq -c | sort -rn |
这将统计每个用户登录系统的次数,并按降序排列。
高级用法
1.监控登录活动
1 |
|
这个脚本将监控最近 20 次登录活动,并报告新的登录用户。它通过比较上一次和当前的登录用户列表来检测新的登录活动。可以将此脚本添加到 cron 作业中定期执行。
2.检测暴力破解尝试
1 | last | grep "LOGIN" | awk '{ print $1 }' | sort | uniq -c | sort -rn | head |
这将显示最近登录失败次数最多的用户列表,可以帮助检测潜在的暴力破解尝试。它首先过滤出所有登录失败的记录,然后统计每个用户的失败次数,并按降序排列。
3.根据登录时间范围过滤输出
1 | last -F "$(date -d '-7 days' '+%Y%m%d%H%M')" -t "$(date '+%Y%m%d%H%M')" |
这将显示最近 7 天内的登录信息。它使用 last
命令的 -F
和 -t
选项来指定登录时间范围。
以上是关于 last
命令的详细文档,包括命令简介、语法格式、参数使用说明、演示实例以及扩展和高级使用方法。last
命令是一个非常有用的工具,可以帮助监控和审计系统的登录活动,检测潜在的安全威胁。通过组合其他命令和脚本,可以实现更加强大的功能。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 生活日志!
评论