我有一个关于我认为与日志文件 /var/log/wtmp 相关的异常行为的问题
有一台服务器安装了 Ubuntu 14.04.5 LTS 最小服务器并运行了一段时间。在某个时间点,决定重新安装基本操作系统并将其更改为 CentOS Linux 版本 7.8.2003 最小服务器安装。安装已完成并验证。一切运作良好。但是我注意到一些非常奇怪的事情,即发出命令时
last
我看到盒子验证成功在使用 CentOS 重新安装服务器的时间点之前!这怎么可能呢。进行身份验证的 IP 是有效的,也是预期的!但是,我很感兴趣的是在/var/log/wtmp
安装 CentOS 后如何将这些信息添加到 IP 中。
因此,我开始详细研究日志,即使用 utmpdump
utmpdump < /var/log/wtmp
在一些有效的日志中,我看到如下内容:
[7] [123933] [ts/6] [user1 ] [pts/6 ] [ ] [192.168.74.2 ] [Wed Oct 07 00:34:20 2020 ]
[8] [123933] [ ] [ ] [pts/6 ] [ ] [0.0.0.0 ] [Wed Oct 07 02:45:41 2020 ]
[8] [120363] [ ] [ ] [pts/5 ] [ ] [0.0.0.0 ] [Wed Oct 07 03:30:31 2020 ]
起初,我注意到高级进程 123933 和 120363,并立即开始在 /proc/ 和“ps auxwf”中查找。
最后的命令输出未显示最后两个条目。此外,我没能找到任何指向 proc 中已删除文件的进程!
我认为第二行和第三行只是意味着超时 ssh 会话,因为它们与第一行共享相同的进程 ID,即 123933,但对此不确定。根据 utmp 手册页
类型 8 表示“死进程”
服务器只有一项可用服务,即非标准端口上的 ssh。仅允许使用证书进行身份验证,并且配置了fail2ban,基本上遵循标准 ssh 强化指南。例如,AllowUsers、ClientAliveInterval、协议 2、无 root 用户登录、无密码身份验证等运行 3.10.0-1127.el7.x86_64 内核。 SeLinux 一直处于启用状态。
我没有看到任何正在侦听的原始套接字,即 iess -w -a
是空的,并且防火墙只有一个用于 ssh 的开放 tcp 端口,没有其他端口。没有有趣的点“...”目录。其余的日志似乎完好无损。
到目前为止我无法解释一件事,即 wtmp 日志文件。是否有一些星座,Centos 的安装可以从以前的服务器读取 wtmp 日志,这些日志可能存储在某些非易失性内存上并将它们导入到新安装中,因为我确实在当前的 CentOS wtmp 日志中看到在 CentOS 安装之前实际上已经发生的有效身份验证,即当服务器使用 Ubuntu 作为操作系统而不是 CentOS 时!
为什么在安装过程中这些信息会被转移到 CentOS 上?
我能想到的另一个原因是机器被入侵并且有人复制/编辑了 wtmp 日志文件,在这种情况下服务器被入侵。
是否有可能 wtmp 也存储在除当前硬盘驱动器之外的其他地方,即一些非易失性内存或类似的东西,这是一些默认的 CentOS 星座。如何解释在 wtmp 中看到的服务器上的那些有效登录(时间戳位于安装日期之前)?