如何找到删除文件的用户?

use*_*567 5 linux

我服务器上的某个用户刚刚删除了一个文件,我想找出是谁做的。翻阅每个人的历史是不可能的,命令也不是那么简单rm -rf file。是否可以知道谁对文件夹进行了最后更改?我在 linux 上。

Blu*_*303 3

一般来说,在不知道“日志系统”或预先配置的事件的情况下,很难找出谁删除了文件,谁修改了文件

尝试找出目录被删除时谁登录。

  • 检查操作系统系统日志(对于 hp-ux,为 /var/adm/syslog/syslog.log;对于 linux,为 /var/log/messages)

  • 尝试使用最后一个突击队来获取登录时间的列表

  • 检查sidadm、root用户的命令历史记录,使用history命令,或者h别名

  • 检查是否有脚本正在运行,定期删除文件

您还可以查看您的用户的 . bash_history,假设他们使用 bash:

在终端中执行以下命令:

cd /home

find `ls`/.bash_history -exec /usr/bin/grep "deleted-filename" {} /dev/null \;
Run Code Online (Sandbox Code Playgroud)

这是一个只有 root 可以删除的文件,然后查看 root 的 .bash_history,但随后您必须找出谁以 root 身份登录或 su'ed 为 root。为此,命令last root|more可以帮助你

由于 trans 目录可能通过 NFS 挂载到其他服务器,因此您可能也需要在那里进行检查。

另外,为了将来的使用,安装任何开源 SIEM 解决方案,如 Alivault 等,它们可以帮助您维护和记录事件。