当前位置:首页 > Linux > 正文

Linux系统登录记录怎么查

在Linux中,使用 last命令查看用户登录历史, lastb查看失败登录尝试,相关记录保存在 /var/log/wtmp/var/log/btmp文件中, lastlog命令可显示所有用户最近登录时间,常用于系统审计和安全检查。

通过系统日志文件查看

Linux的登录记录主要存储在日志文件中,路径通常为:

  1. /var/log/auth.log(Debian/Ubuntu系)
  2. /var/log/secure(RedHat/CentOS系)

操作命令:

# Debian/Ubuntu
sudo cat /var/log/auth.log | grep "session opened"
# RedHat/CentOS
sudo cat /var/log/secure | grep "Accepted password"

输出解读:

Jun 15 10:23:45 server sshd[1234]: Accepted password for user1 from 192.168.1.100 port 54322
  • Jun 15 10:23:45:登录时间
  • user1:登录用户名
  • 168.1.100:来源IP地址
  • sshd[1234]:SSH服务进程ID

使用专用命令工具

last 命令(最常用)

查看所有用户的登录/登出记录:

last

输出示例:

user1   pts/0        192.168.1.100  Mon Jun 15 10:23   still logged in
root    tty1                          Mon Jun 15 09:45   down (00:05)
  • 关键字段
    pts/0:远程终端会话
    tty1:本地物理终端
    still logged in:当前仍在线

lastb 命令

查看失败登录尝试(需sudo权限):

Linux系统登录记录怎么查  第1张

sudo lastb

lastlog 命令

查看所有用户最后一次登录时间

lastlog

查看实时登录活动

who 命令

显示当前登录用户:

who

输出示例:

user1   pts/0    2025-06-15 10:23 (192.168.1.100)

w 命令

显示更详细的在线用户信息(包括操作进程):

w

输出示例:

10:30:05 up 1:45,  1 user,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
user1    pts/0    192.168.1.100    10:23    0.00s  0.05s  0.00s w

高级审计工具

启用 auditd 服务

适合企业级安全审计,记录所有登录事件:

# 安装auditd
sudo apt install auditd    # Debian/Ubuntu
sudo yum install audit     # CentOS/RHEL
# 添加SSH登录监控规则
sudo auditctl -w /etc/ssh/sshd_config -p wa -k sshd_login
# 查看审计日志
sudo ausearch -k sshd_login | grep "USER_LOGIN"

使用 faillock 检查账户锁定

查看用户登录失败次数:

faillock

关键注意事项

  1. 权限要求

    • 查看 /var/log/secureauth.logsudo 权限。
    • lastb 命令默认需要root权限。
  2. 日志轮转
    历史日志可能被压缩(如 /var/log/auth.log.1.gz),使用 zcat 查看:

    zcat /var/log/auth.log.1.gz | grep "session opened"
  3. 安全建议

    • 定期检查异常IP的登录记录(如 lastb | grep 192.168.1.100)。
    • 敏感服务器可配置实时告警(如 fail2ban)。

场景 推荐命令 作用
快速查看历史登录 last 所有成功登录记录
检查暴力破解尝试 lastb 失败登录记录
实时监控在线用户 wwho 当前活跃会话
深度审计 auditd 企业级安全日志

引用说明基于Linux核心文档(man lastman auditd)及Red Hat/Debian官方运维指南整理,符合Linux审计标准,命令测试环境为Ubuntu 22.04/CentOS 7,兼容主流发行版。

0