我们的一台服务器昨天最终使用了大约 20 GB 的数据,因为它反复从镜像中请求 packages.bz2 文件。
请求于周日晚上 22:00 左右开始,并于周一 21:00 左右停止。
在 apt 历史记录、无人值守升级或系统日志中都没有任何内容可以表明原因。
我所能看到的是 UFW 日志中来自镜像 IP 地址的一堆被阻止的流量 - UFW 设置中没有阻止此 IP 的规则,在此异常活动期之外,与镜像的通信是成功的,所以它看起来像洪水保护(虽然我已经检查过 UFW 配置,但找不到明确设置的功能)。
/var/log/apt/term.log
并且/var/log/apt/term.log
上周五 6:45 之后(活动开始前整整 2 天)没有任何参赛作品。
/var/log/aptitude
自一年多前创建以来,它一直是空的。
auth.log
sudo
显示 Ubuntu 服务器的正常 cron 活动 - 除了我登录并尝试诊断其中的问题时使用的内容外,没有太多其他内容。
cron.d 中没有任何内容调用 apt 或 aptitude - 并且 cron.daily 具有与其他没有行为异常的服务器相同的脚本集合。
我与镜像的系统管理员交谈过 - 他非常乐于助人。我就是这样发现我的服务器重复请求 packages.bz2 文件。他说每个请求都得到了满足并正确关闭。
那么,到底发生了什么事情导致了这一过程的开始?为什么这个过程会持续这么长时间,又为什么会突然停止呢?
一周后,它又开始了——但日志中仍然没有任何内容表明原因。
答案1
apt-get update
没有记录在 APT 日志中。
在我看来,服务器似乎没有获取文件,或者文件无效。另一种可能是奇怪的 cron 脚本。
现在原因就更有趣了。
- 可能需要运行一个 cron
apt-get update
- 有人(另一个管理员和/或黑客)正在发送垃圾邮件
apt-get update
为什么它会运行 23 个小时...也许是一个错误的 cron 条目?
而且,并不是 UFW/blocking 方面的专家。
就我个人而言,我会检查 cron,并auth.log
按照@Braiam 建议的那样。
答案2
对我来说这听起来像是一个脚本循环。
系统是否设置为在周日 22:00 左右更新其软件?
您是否正在运行某种脚本来在无人值守的情况下进行更新?