我是否受到 DDoSed 攻击,我该怎么办?

Mua*_*zam 1 linux debian ddos

目前我的服务器滞后很严重,它崩溃了。这是一个专用服务器,最近两天运行良好。

这个命令有什么作用?

netstat -n|grep :80|cut -c 45-|cut -f 1 -d ':'|sort|uniq -c|sort -nr|more
Run Code Online (Sandbox Code Playgroud)

这就是我得到的:

    154 76.217.x.xx
     11 79.51.xx.xxx
     10 174.119.xx.xx
      9 201.230.xxx.xxx
      8 24.184.xx.xxx
      8 127.0.0.1
      6 50.51.xxx.xxx
      6 216.121.xxx.xxx
      4 80.203.xx.xxx
      4 24.186.xxx.xxx
      4 223.25.xx.xxx
      4 119.93.xx.xx
Run Code Online (Sandbox Code Playgroud)

IP旁边的数字是什么意思?是连接的意思吗?如果是这样......顶级IP正在欺骗我?

qua*_*nta 14

  • netstat 打印网络连接
  • -n 显示数字地址
  • grep :80 过滤器连接连接到端口 80
  • cut -c 45- 仅获得第 4 和第 5 列
  • cut -d: -f1 取用冒号分隔的第一个字段
  • sort | uniq -c 按IP地址排序并计算唯一IP的数量
  • sort -rn 反转数字排序

您可以使用awk而不是cut -c 45-仅获取第 5 列:

netstat -n | grep :80 | awk '{ print $5 }' | cut -d: -f1 | sort | uniq -c | sort -rn | head
Run Code Online (Sandbox Code Playgroud)

关于你的结果,看起来很正常,没有DDoS。看看access_log更多细节。

  • +1,虽然 <pedant> `sort -rn` 是一个反向的 *numeric* sort` </pedant> (2认同)

vor*_*aq7 12

Quanta & DTest 解释了该命令的作用。每个人都会告诉你,几百个连接不是 DoS(当你有至少 5-10000时跟我说),我会扩展说,为了让它成为D Dos 你'会看到比上面显示的更多的条目(每个条目可能有更多的连接)。


当您的服务器出现问题时,请不要跳到奇怪的原因(DDoS、宇宙射线、Z0MG H4X0R3D!等)——您可能会遇到一个更加无聊和平凡的问题。

你说“它崩溃了”——你的意思是整个服务器锁定、恐慌或以其他方式需要硬重启?
如果是这样,请检查您的 RAM(MemTest86+ 或类似的)。通常就是这个问题。

如果这不是真正的硬崩溃,请开始查看正常的普通故障排除项目:

  • top
    • 什么是平均负载?当你有问题的时候是什么?
    • 你用了多少交换?遇到问题时是否使用更多?(如果是这样,内存泄漏!)
    • 哪些程序试图占用 CPU?
  • 运行操作系统的磁盘 I/O 信息工具(不是 Debian 人,也许有人可以列出它们?)
    • 你是磁盘绑定吗?(磁盘是否一直在使用 100% 的带宽?)
  • 查看您的网络统计信息
    • 您是否达到了 ISP 的带宽上限?
  • 查看您的辅助程序(如果适用)
    • 数据库连接
    • 共享文件系统
    • 在您需要时可能被锁定/阻塞的任何其他资源