有什么方法可以对运行该命令的其他用户隐藏特定用户的登录条目吗last
?
答案1
的输出last(1)
来自传统wtmp
文件(通常为/var/log/wtmp
)。正如您可能想象的那样,该文件对于普通用户来说是不可写的(在这个盒子上,它属于root:wtmp
)。
传统上,由getty
负责维护wtmp
,但现在由 PAM 负责pam_lastlog.so
维护/var/log/lastlog
。
如果您是计算机的超级用户,您可以根据需要从其中出现的任何位置/etc/pam.d
注释掉该行。pam_lastlog.so
在我的机器上,它仅在文件中使用login
。当然,如果您是计算机的超级用户,您也可以将last
和替换lastlog
为执行类似last.orig | fgrep -v some_user
.
如果你是不是计算机的超级用户,并且您所在的网站使用此方案,您对此无能为力。从合法性和权限角度来看,您无法阻止系统记录您的登录和注销。
答案2
该useradd
命令附带一个-l
选项,不添加您要添加到上次登录日志文件中的用户名。
答案3
如果您拥有root权限帐户,可以通过修改上次登录信息文件来隐藏。喜欢
/var/日志/wtmp
它将显示最后一条日志信息的空白。
答案4
一个快速的解决方案是last
通过 来“禁用”所有普通用户chmod o-r /var/log/wtmp
。
在这种情况下,您可能还有兴趣运行chmod o-r /var/log/lastlog
以禁用该lastlog
命令。