我的服务器上的某个用户刚刚删除了一个文件,我想找出是谁干的。查看每个人的历史记录是不可行的,命令也不可能像 这么简单rm -rf file
。是否有可能知道谁对文件夹进行了最后更改?我在 Linux 上。
答案1
一般来说,如果不知道“日志系统”或预配置事件,很难找出谁删除了文件,谁修改了文件
尝试找出目录被删除时登录的人。
检查操作系统系统日志(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 \;
这是只有 root 才能删除的文件,然后查看 root 的 .bash_history,但随后您必须找出谁以 root 身份登录或被 su 为 root。为此,命令最后的根|更多可以帮助你
由于 trans 目录可能是通过 NFS 安装到其他服务器的,因此您可能也需要在那里进行检查。
此外,为了将来的使用,安装任何开源 SIEM 解决方案,如 alienvault 等,它们可以帮助您维护和记录事件。
答案2
步骤1:启用进程核算。
步骤 2:启用 tty 的 fascist 日志记录,在 pam system-auth 中添加/启用 pam_tty_audit.so
步骤 3:使用 ausearch 搜索用户活动