linux - 了解 netstat 列表并防止 DDOS

标签 linux ubuntu netstat fail2ban

我的服务器被攻击了!

当我使用 netstat -anp | grep:80 我得到以下 list :

tcp        0      0 162.167.98.11:80        5.189.156.224:58211     SYN_RECV    -
tcp        0      0 162.167.98.11:80        5.189.156.224:39608     SYN_RECV    -
tcp        0      0 162.167.98.11:80        5.189.156.224:33261     SYN_RECV    -
tcp        0      0 162.167.98.11:80        5.189.156.224:56951     SYN_RECV    -

这样有几十行。

请帮助我理解此列表以及如何保护服务器免受发出大量请求的 IP 的影响。我正在使用针对 DDOS 攻击配置的 fail2ban,但看起来我遗漏了一些东西。

服务器是运行Ubuntu 12.04的虚拟机

最佳答案

Fail2ban 只会对生成某种错误的客户端使用react。

这可能是 Slowloris攻击。它的工作原理是打开一个连接,并通过不断向请求中添加内容来尝试尽可能长时间地保持打开状态。然后打开其他此类连接并保持打开状态。

因此可能的解决方案是限制每个客户端的打开连接数。

这可以直接使用 iptables 完成,如前所述 here或者通过使用适当的 apache 模块(如果这是您的网络服务器的话)。

一个明确为此目的而设计的是 mod_antiloris ,另一个更可配置的是 mod_qos .

关于linux - 了解 netstat 列表并防止 DDOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28349511/

相关文章:

c++ - 无法在 Eclipse CDT 中指定多个 rpath

c - 通过调用内核模块写入proc文件/给参数

非零持续时间的 jQuery 隐藏/显示在 Firefox 中不起作用(但在 Chrome 中起作用)

sockets - http: 接受错误:接受 tcp [::]:9000: accept4: 打开的文件太多; 1s 重试

linux - 使用 linux 命令删除文件和文件夹

linux - 如何检查 vsyscall 模式

python - 来自主机的 nc -> VM 工作(端口 9050),但 VM(运行用 Python 编写的服务器)重置连接 [TCP RST] 来自主机 -> VM 在同一端口(9050)

r - 编译较旧的 R 版本并在 Ubuntu 和 RStudio 中的版本之间切换

用于从 netstat 输出中过滤掉 PID 的 UNIX 表达式

powershell - 从命令行查看与 "Local Area Connection"Status gui 相同的统计信息