如何保护家庭服务器免受 DoS 攻击?有关研究的问题

如何保护家庭服务器免受 DoS 攻击?有关研究的问题

我研究了几种类型的攻击,这一页就是一个例子。有些攻击对整个系统并没有太大的危害,而大多数攻击类型都可以通过小心谨慎或借助自动化软件来预防。例如,“阻止在 y 秒内连续 x 次登录失败的 IP 地址”可能在基本层面上对暴力密码攻击有效。然而,我无法想出一个针对 DoS 攻击的解决方案。因为: (如果我错了,请纠正我)

  1. 攻击者可以从单个端口每秒向服务器发送数百个(或更多?)请求。

    假设请求来自同一个 IP 地址,可以添加防火墙规则来阻止该 IP - 甚至可以通过自动安全软件来阻止。但是,如果攻击者不断发送请求,那么防火墙每秒应用数百次“额外”检查是否仍然不成负担?这是否不会消耗通常有限的服务器带宽以及计算资源?此外,防火墙开始丢弃/丢失数据包是否没有计算限制?

  2. 攻击者可以修改数据包的头并不断使用新鲜的 IP 地址轰炸服务器。

    防火墙封锁这么多 IP 地址,会不会导致合法客户端在一段时间内被封锁?很可能第一个路由服务器会过滤掉来自网络外源 IP 地址的数据包,但是,与攻击者位于同一网络的合法客户端是否也会被封锁?

据我所知,云服务器会分散负载,只需等待 DoS/DDos 攻击过去,而攻击来源网络的管理员会采取行动。但是对于家庭服务器来说,什么是最小信任损失和最小声誉损失的解决方案?

谢谢。

答案1

在互联网上,您无法控制传入流量。

假设您有一个 1Gbps 的互联网管道。

如果你收到超过 1Gbps(使用单个 IP 或与僵尸网络拆分),则你的 ISP 和你之间的管道将会满. 不管您的防火墙是否能够在网络早期边缘丢弃流量。

最好有一个单独的设备(路由器或防火墙)来丢弃数据包,这样它就不会影响你的应用服务器的性能。

是的,网络设备可以处理的 pps(每秒数据包)有限制。因为它会消耗 CPU 来处理数据包(丢弃或接受)。

通常你实际上并不会阻止 IP,而只是丢弃符合模式的数据包。

真正的解决方案是:

  • 你的 ISP 阻止了流量。
  • 您有足够大的管道来接收流量并将其丢弃。

有趣的读物: https://javapipe.com/blog/iptables-ddos-protection/ https://blog.cloudflare.com/how-to-drop-10-million-packets/

相关内容