Linux如何查看登陆用户信息

直接说,Linux里要查登录用户信息,这几个命令用得最多:
1 . w:想看谁,直接w [用户名],看所有用户用w。

2 . who:当前谁登录了,直接who,指定用户用who [用户名]。

3 . last:想看历史登录,用last,最近5 次用last -n 5
4 . lastlog:想看最后一次登录,用lastlog,指定用户用lastlog -u [用户名]。

权限问题记得,普通用户只能看自己,root用户才看全。
系统版本不同,细节可能有点区别,man命令手册一看就明白了。

在 Linux 中查找用户帐户信息和登录详细信息的 12 种方法

Linux里查用户信息啊,方法挺多。

1 . /etc/passwd文件 这个文件有用户基本信息,像用户名、UID、GID这些。
所有用户都能看。
cat /etc/passwd 直接看就行。

2 . /etc/shadow文件 这个存加密密码和安全设置,只有root才能看。
sudocat /etc/shadow 需要sudo权限。

3 . getent命令 这个能从系统数据库(比如LDAP)拿用户信息,本地和网络用户都能查。
getent passwd 用这个命令。

4 . id命令 显示当前用户或指定用户的UID、GID、所属组。
id username 指定用户 id 当前用户 这样看就行。

5 . finger命令 这个能看用户详细资料,比如真名、终端、登录时间啥的。
finger username 输入用户名查。

6 . who命令 列出当前登录的用户,有用户名、终端、登录时间。
who 直接敲命令。

7 . w命令 比who信息多,显示当前登录用户和他们在干嘛。
w 这个命令看更细。

8 . last命令 看用户登录/注销历史,连IP地址和时间都有。
last 查登录记录。

9 . lastlog命令 显示所有用户最近一次登录信息,没登录过的用户也能查到。
lastlog 看最近登录情况。

1 0. utmp和wtmp文件 这两个文件存登录信息。
/var/run/utmp:当前登录用户。
/var/log/wtmp:历史登录/注销记录。
sudocat /var/run/utmp 当前登录 sudocat /var/log/wtmp 历史记录 需要sudo。

1 1 . journalctl命令 systemd系统能用这个过滤系统日志里的登录事件。
journalctl _SYSTEMD_UNIT=systemd-logind.service --since today 看今天登录啥的。

1 2 . 自定义脚本与日志 可以写脚本整合信息,存到自定义日志文件。
bash !/bin/bash LOG_FILE="/var/log/user_info.log" { echo "User Account Information:" cat /etc/passwd echo echo "Login Details:" lastlog } >> "$LOG_FILE"
这样脚本会存信息到日志里。

怎么选?
快看当前用户:用id、who、w。

审计登录历史:last、lastlog、journalctl。

批量管理用户:getent passwd、解析/etc/passwd。

敏感操作:用sudo看/etc/shadow或日志。

组合着用,用户活动监控、合规啥的都能搞定。

如何在Linux上查找上次登录信息?

上周试过这个。

last命令是好用的。
直接敲last就行。
默认看所有人。
时间倒着排。

要看最近1 0条? last -n 1 0 没问题。

想看张三的记录? last 张三 就显示张三的。

想看2 02 3 年1 月1 日之后? last -t 2 02 3 01 01 这个对。

lastlog也行。
lastlog看所有人的最后登录。
lastlog -u 张三 就只看张三的。

用户的操作记录? 在家目录下。
~/.bash_history 敲cat /home/username/.bash_history 就能看。

系统日志在哪? 看发行版。
Debian/Ubuntu在 /var/log/auth.log RHEL/CentOS在 /var/log/secure 或者 /var/log/messages
想看谁用ssh登录? cat /var/log/auth.log | grep "ssh" 这样就行。

auditd是好东西。
需要先装上。
sudo apt install auditd 装好了。

规则要加。
sudo auditctl -w /var/log/secure -p w -k login 这个是监视写操作。

服务要开。
sudo systemctl start auditd 或者 sudo service auditd start
查记录? sudo ausearch -k login 这个看。

报告? sudo aureport -k -i 这个生成报告。

当前谁在登录? who 或者 w 这两个命令。
显示用户名、终端、时间。

登录成功/失败? lastb 这个看。
不过需要root权限。

root权限是必须的。
看系统日志、审计记录 都得有。

日志可能被轮转了。
logrotate会搞事情。
得找找旧日志。
比如 .gz 结尾的。

隐私要保护。
登录记录很敏感。
限制下访问权限。
文件权限或者SELinux。

总结下。
快速看? last、lastlog就行。

详细分析? .bash_history、系统日志、auditd 结合起来看。

安全审计? auditd能长期监控。
报告也能生成。

看情况选方法。
定期备份日志。
防止丢了。

Linux系统下如何查看已经登录用户

直接说:
1 . w命令:终端输w,看登录用户活动详情,包括时间、负载等。
2 . who命令:终端输who,快速看登录用户名单,终端、来源、时间。
3 . last命令:终端输last,查用户登录历史,终端、时间、注销。
w详细,who简单,last历史。