过多的出站 DNS 流量

5 domain-name-system postfix denial-of-service

我有一个 VPS 系统,我在一台主机上使用了 3 年没有问题。近日,主机启动的发送极端对外DNS流量的量31.193.132.138。由于Linode对此的回应方式,我最近离开了Linode并搬到了6sync。除了 postfix 邮件配置外,服务器完全在 6sync 上重建。

目前,守护进程运行如下:

sshd nginx postfix dovecot

php5-fpm(仅限本地主机) spampd(仅限本地主机) clamsmtpd(仅限本地主机)

鉴于服务器是 100% 重建的,我找不到任何针对上述守护程序的严重漏洞,密码已更改,重建中甚至不存在 ssh 密钥等......这似乎极不可能用于 DoS 地址的妥协。

提供的 IP 在网上被标记为已知的垃圾邮件来源。我最初的假设是它试图将我的 postfix 服务器用作中继,并且它提供的虚假地址是将该 IP 注册为其名称服务器的域。我可以想象,鉴于我的 postfix 配置,对 SPF 信息等内容的 DNS 查询将与尝试发送的垃圾邮件数量相等或更多。

Linode 和 6Sync 都表示出站流量极其不成比例。以下是我从 Linode 收到的有关出站流量的所有信息:

21:28:28.647263 IP 97.107.134.33.32775 > 31.193.132.138.53: 28720 op8+% [b2&3=0x4134] [17267a] [30550q] [28773n] [14673au][|domain]
21:28:28.647264 IP 97.107.134.33 > 31.193.132.138: udp
21:28:28.647264 IP 97.107.134.33.32775 > 31.193.132.138.53: 28720 op8+% [b2&3=0x4134] [17267a] [30550q] [28773n] [14673au][|domain]
21:28:28.647265 IP 97.107.134.33 > 31.193.132.138: udp
21:28:28.647265 IP 97.107.134.33.32775 > 31.193.132.138.53: 28720 op8+% [b2&3=0x4134] [17267a] [30550q] [28773n] [14673au][|domain]
21:28:28.647266 IP 97.107.134.33 > 31.193.132.138: udp
Run Code Online (Sandbox Code Playgroud)

6sync 无法确认最近出站流量的峰值是指向同一个 IP 还是通过 DNS,但我已经假设是这样。现在,我的服务器正在阻止整个 31.0.0.0/8 子网,以帮助阻止这种情况,而我正在弄清楚。

任何人有任何想法是怎么回事?

pQd*_*pQd 3

不是答案,只是一些随机的想法:

  • 当您在[虚拟]网络接口上运行 tcpdump 时,您能看到此流量吗?如果是这样 - 你能尝试找出是否有每日/每小时的模式吗?您可以创建 iptables 规则来计算流量,然后允许munin 插件收集统计数据。
  • 您可以尝试确定哪个应用程序正在产生此流量吗?我在这里看到两种方法:
    • 残酷的方法是等到流量显示并开始一个又一个地杀死应用程序。
    • 温和的方法 - 在 OUTPUT 链和所有者匹配上使用 iptables将端口 53 上的输出数据包记录到系统日志中。类似于: iptables -I OUTPUT -p udp --dport 53 --matchowner --uid-owner 33 -j LOG --log-prefix "uid 33"应用于您使用的所有 uid。检查系统日志以查看哪个进程生成了不需要的流量。
  • 您是否有本地 dns 服务器 [例如绑定] 正在运行?如果是这样:
    • 还可以在环回上进行嗅探,以查看哪些应用程序可能正在发送导致不需要的流量的请求。
    • 外部服务器可以与您的 DNS 服务器通信吗?如果是这样 - 也许这是某种反向散射攻击,您的服务器从欺骗地址接收数据包并响应轰炸受害者。
  • 你110%确定你的php代码没有被改变吗?难道你的某些脚本中包含很少的恶意行吗?