> Linux教程 > 系统运维 >

查看服务器用户登陆情况

1.使用w显示当前登陆系统的用户,包括非法用户。
语法:w [-fhlsuV][用户名称]

linux w 命令补充说明:执行这项指令可得知目前登入系统的用户有那些人,以及他们正在执行的程序。单独执行linux w 命令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息。

命令参数:

-f  开启或关闭显示用户从何处登入系统。

-h  不显示各栏位的标题信息列。

-l  使用详细格式列表,此为预设值。

-s  使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的CPU时间。

-u  忽略执行程序的名称,以及该程序耗费CPU时间的信息。

-V  显示版本信息。

以上是linux w 命令详解。(摘自http://os.51cto.com/art/200908/144244.htm)


2.使用last显示目前与过去登入系统的用户相关信息
1.作用
功能说明:列出目前与过去登入系统的用户相关信息。
linux系统中last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户。通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统。
2.格式
last [—R] [—n][-f file][-t tty] [—h 节点][-I —IP][—1][-y][ID]
3.主要参数
- R: 省略 hostname 的栏位
-n:指定输出记录的条数。
-f file:指定用文件file作为查询用的log文件。
-t tty:只显示指定的虚拟控制台上登录情况。
-h 节点:只显示指定的节点上的登录情况。
-i IP:只显示指定的IP上登录的情况。
-1:用IP来显示远端地址。
-y:显示记录的年、月、日。
-ID:知道查询的用户名。
-x:显示系统关闭、用户登录和退出的历史。

范例:
========linux环境: Fedora Core 6.0;内核:2.6.18========
#last用了显示用户登录情况。以下是直接显示固定行数的记录。sunson是新建的用户。
#last用了显示用户登录情况。以下是直接显示固定行数的记录。sunson是新建的用户。
[sunson@localhost ~]$ last -6
sunson     pts/2        :0.0             Thu Jul 26 20:48   still logged in 
sunson     pts/2        :0.0             Thu Jul 26 20:21 - 20:21 (00:00)  
sunson     :0                            Thu Jul 26 20:21   still logged in 
reboot   system boot 2.6.18-1.2798.fc Thu Jul 26 20:20          (00:41)  
sunson     pts/2        :0.0             Thu Jul 26 11:16 - 11:46 (00:30)  
sunson     pts/2        :0.0             Thu Jul 26 10:18 - 10:18 (00:00)  
wtmp begins Sun Jul 1 15:17:08 2007
#默认是显示wtmp的记录,btmp能显示的更详细,可以显示远程登录,例如ssh登录。

[root@localhost ~]# last -n 15 -f /var/log/btmp
sunson     :0                            Thu Jul 26 20:21   still logged in 
keox     tty1                          Fri Jul 20 22:27    gone - no logout
np962e76 tty1                          Fri Jul 20 22:26 - 22:27 (00:00)  
keox     tty1                          Fri Jul 20 22:26 - 22:26 (00:00)  
root     :0                            Fri Jul 20 22:22 - 20:21 (5+21:58) 
keox     :0                            Fri Jul 20 22:22 - 22:22 (00:00)  
root     tty1                          Fri Jul 20 20:58 - 22:26 (01:28)  
keox     tty1                          Fri Jul 20 20:58 - 20:58 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:58 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
reboot   tty1                          Fri Jul 20 20:55 - 20:57 (00:02)  
root     tty1                          Fri Jul 20 20:54 - 20:55 (00:00)  
root     tty1                          Fri Jul 20 20:54 - 20:54 (00:00)
btmp begins Mon Apr 30 22:05:54 2007

#显示特定tty口的登录,1是tty1的登录情况,看的很清楚的。 np962e76 和 lkdjflkj 和keox其实都没有登
#录成功,我是把密码忘记了。前面两个用户,是根本不存在的,但是也有记录。
[root@localhost ~]# last -n 15 -f /var/log/btmp 1
keox     tty1                          Fri Jul 20 22:27    gone - no logout
np962e76 tty1                          Fri Jul 20 22:26 - 22:27 (00:00)  
keox     tty1                          Fri Jul 20 22:26 - 22:26 (00:00)  
root     tty1                          Fri Jul 20 20:58 - 22:26 (01:28)  
keox     tty1                          Fri Jul 20 20:58 - 20:58 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:58 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
reboot   tty1                          Fri Jul 20 20:55 - 20:57 (00:02)  
root     tty1                          Fri Jul 20 20:54 - 20:55 (00:00)  
root     tty1                          Fri Jul 20 20:54 - 20:54 (00:00)  
root     tty1                          Fri Jul 20 20:54 - 20:54 (00:00)  
lkdjflkj tty1                          Fri Jul 20 20:54 - 20:54 (00:00)  
keox     tty1                          Fri Jul 20 20:53 - 20:54 (00:00)  
btmp begins Mon Apr 30 22:05:54 2007

#显示特定用户的登录情况。
[root@localhost ~]# last -n 15 -f /var/log/btmp keox
keox     tty1                          Fri Jul 20 22:27    gone - no logout
keox     tty1                          Fri Jul 20 22:26 - 22:26 (00:00)  
keox     :0                            Fri Jul 20 22:22 - 22:22 (00:00)  
keox     tty1                          Fri Jul 20 20:58 - 20:58 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:58 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1                          Fri Jul 20 20:53 - 20:54 (00:00)  
keox     tty1                          Fri Jul 20 20:53 - 20:53 (00:00)  
keox     tty1                          Fri Jul 20 20:53 - 20:53 (00:00)  
keox     tty1                          Fri Jul 20 20:53 - 20:53 (00:00)  
keox     tty1                          Fri Jul 20 20:52 - 20:53 (00:00)  
keox     tty1                          Fri Jul 20 20:52 - 20:52 (00:00)  
keox     tty1                          Fri Jul 20 20:52 - 20:52 (00:00)  
btmp begins Mon Apr 30 22:05:54 2007

#显示登录登出的记录,-x。
[root@localhost ~]# last -n 15 -f /var/log/btmp keox -x
keox     tty1                          Fri Jul 20 22:27    gone - no logout
keox     tty1                          Fri Jul 20 22:26 - 22:26 (00:00)  
keox     :0                            Fri Jul 20 22:22 - 22:22 (00:00)  
keox     tty1                          Fri Jul 20 20:58 - 20:58 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:58 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1                          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1                          Fri Jul 20 20:53 - 20:54 (00:00)  
keox     tty1                          Fri Jul 20 20:53 - 20:53 (00:00)  
keox     tty1                          Fri Jul 20 20:53 - 20:53 (00:00)  
keox     tty1                          Fri Jul 20 20:53 - 20:53 (00:00)  
keox     tty1                          Fri Jul 20 20:52 - 20:53 (00:00)  
keox     tty1                          Fri Jul 20 20:52 - 20:52 (00:00)  
keox     tty1                          Fri Jul 20 20:52 - 20:52 (00:00)  

btmp begins Mon Apr 30 22:05:54 2007

#-i显示特定ip登录的情况。跟踪用。
[root@localhost ~]# last -n 15 -i 127.0.0.1 -f /var/log/btmp keox
keox     tty1         0.0.0.0          Fri Jul 20 22:27    gone - no logout
keox     tty1         0.0.0.0          Fri Jul 20 22:26 - 22:26 (00:00)  
keox     :0           0.0.0.0          Fri Jul 20 22:22 - 22:22 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:58 - 20:58 (00:00) 
keox     tty1         0.0.0.0          Fri Jul 20 20:57 - 20:58 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:57 - 20:57 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:53 - 20:54 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:53 - 20:53 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:53 - 20:53 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:53 - 20:53 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:52 - 20:53 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:52 - 20:52 (00:00)  
keox     tty1         0.0.0.0          Fri Jul 20 20:52 - 20:52 (00:00)  
btmp begins Mon Apr 30 22:05:54 2007
4.提示:
#/var/log/wtmp
/var/log/wtmp文件是二进制文件,该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件。因此随着系统正常运行时间的增加,该文件的大小也会越来越大,增加的速度取决于系统用户登录的次数。该日志文件可以用来查看用户的登录记录,last命令就通过访问这个文件获得这些信息,并以反序从后向前显示用户的登录记录,last也能根据用户、终端 tty或时间显示相应的记录。(来源http://linux.jboke.com/type112/art3/rl4.html)


3.分析日志
    进入/var/log/目录下查看相关日志信息

    网上帖子说查看secure文件,我这里没有,查看了auth.log后发现有一个来自韩国的可疑ip一直尝试登陆,虽然具体看不懂,但是一直显示很多此ip的Failed password 信息。



4.查询IP地址:
    推荐

    http://www.gongju.com/  

    http://tool.chinaz.com/



(责任编辑:IT)