我对游戏服务器上的DDoS攻击有问题。这不是直接攻击机器的常规ddos攻击,而是攻击具有多个IP地址的端口(UDP协议)。因此,我已经用Python开发了一个函数,它将识别传入的ddos攻击,但我不能单独阻止每个传入ip。
所以我的问题是..。如何阻止对特定端口的所有传入请求(例如。27022)还没有阻塞连接的?
发布于 2022-11-14 07:14:06
如果您的python函数针对的是一个特定的日志文件来识别这些DDOS尝试,则值得查看Fail2Ban动态删除“坏”UDP连接。它根据您定义的匹配条件更新iptable。
几乎所有标识您可能要删除的IP的日志都可以使用源。您可以创建复杂的规则,比如(用简单的语言):“5分钟内从IP地址获得的三个‘短包UDP’连接=下降15分钟”
在下面是一个例子中,有人使用kern.log来识别UDP的“短数据包”。排名最高的答案展示了一个示例正则表达式和如何使用Fail2Ban测试drop规则的指南。
Fail2Ban可能会完全取代您的python函数。或者,如果函数所做的事情比通过regexes和Fail2Ban规则集进行组装要复杂得多,那么如果函数输出到一个文件,则可以将其用作源。
发布于 2022-11-18 20:27:40
您可以创建一个临时白名单,它是您的python应用程序与已经连接的客户端的字典。
https://serverfault.com/questions/1115593
复制相似问题