首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux系统管理锦囊妙计:锁定非法用户的登入登出,仅需一指令

引言

如果你管理的是多用户系统,则通常需要知道哪个用户、什么时间、从何处登录到该计算机。last是一个命令行实用程序,它显示有关系统用户上次登录会话的信息。

当你需要跟踪用户活动或调查可能的安全漏洞时,它非常有用。本文介绍如何使用last命令审查登录到系统的人员。

基本用法

last命令的参数结构如下

last [OPTIONS] [USER] [...]

每次用户登录系统时,该会话的记录都会写入/var/log/wtmp文件。last读取文件wtmp文件并打印有关用户登录和注销的信息。记录以时间的倒序排列打印,从最近的记录开始。

在不带任何选项或参数的情况下调用last时,输出如下所示:

mark pts/0 10.10.0.7 Fri Feb 21 21:23 still logged in

mark pts/0 10.10.0.7 Tue Feb 18 22:34 - 00:05 (01:31)

lisa :0 :0 Thu Feb 13 09:19 gone - no logout

reboot system boot 4.15.0-74-g Fri Jan 24 08:03 - 08:03 (00:00)

...

输出的每行从左到右包含以下列:

用户名:当系统重启或关机时,最后显示特殊用户重启和关机。

会话在其上进行的tty:0通常表示用户正在登录桌面环境。

用户登录时使用的IP地址或主机名。

会话开始和停止时间。

会话周期。如果会话仍处于活动状态或用户未注销,则last将显示有关该会话的信息,而不是显示持续时间。

要将输出限制为特定用户或tty,请将用户名或tty作为参数传递给最后一个命令:

last mark

last pts/0

last命令选项

last接受多个选项,允许你限制、格式化和筛选输出。在本节中,我们将介绍最常见的用法。

要指定要在命令行上打印的行数,只需传递 减号 + 数字。例如,要仅打印最后10个登录会话,你可以键入:

last -10

使用-p(--present)选项,可以找出在特定日期登录系统的人员。

last -p 2020-03-15

使用-s(--since)和-t(--until)选项告诉last显示从指定时间开始或到指定时间为止的行。这两个选项通常一起用于定义要检索信息的时间间隔。

例如,要显示从3月13日到3月18日的登录记录,你可以运行:

last -s 2020-03-13 -u 2020-03-18

传递给-p、-s和-t选项的时间可以用以下格式指定:

默认情况下,last不显示秒和年份。使用-F,--fulltime选项查看完整登录和注销时间和日期:

last -F

-i(--ip)选项强制last始终显示IP地址,-d(--dns)强制显示主机名:

last -i

写在最后

last命令打印有关用户登录和注销时间的信息,更多信息,请man last查看帮助手册。

比起手动查询日志方便太多了。

Happy coding :-)

我是 @程序员小助手 ,持续分享编程故事,欢迎关注。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200411A0QFWD00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券