我得到DDoSed,我应该怎么办?

目前我的服务器比较差,而且崩溃了。 这是一个专门的服务器,两天来运行良好。

这个命令是做什么的?

netstat -n|grep :80|cut -c 45-|cut -f 1 -d ':'|sort|uniq -c|sort -nr|more 

这我我得到:

  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 

IP旁边的数字是什么意思? 这是否意味着连接? 如果是这样的话,那么最顶级的IP就是给我的吗?

  • netstat打印networking连接
  • -n显示数字地址
  • grep :80filter连接连接到80端口
  • cut -c 45-只得到第四和第五列
  • cut -d: -f1以冒号分开第一个字段
  • sort | uniq -c sort | uniq -c按IP地址sorting并统计唯一IP的个数
  • sort -rn反转数字sorting

您可以使用awk而不是cut -c 45-来获得第五列:

 netstat -n | grep :80 | awk '{ print $5 }' | cut -d: -f1 | sort | uniq -c | sort -rn | head 

关于你的结果,这似乎是正常的,没有DDoS。 看看access_log了解更多细节。

Quanta&DTest解释了命令的作用。 每个人都会告诉你,几百个连接并不是一个DoS所造成的(当你至less有5-10 个时候和我谈话),我会扩大说这个连接是为了让你成为一个Dos,你会看到更多的条目(可能有更多的连接每个)比你上面显示。


当你有一个服务器的问题不要跳到异国的原因(DDoS,宇宙射线,Z0MG H4X0R3D !,等等) – 你有一个更无聊和平凡的问题。

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

如果这不是一个真正的,严重的崩溃开始寻找正常的平凡的故障排除项目:

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

数字是每个ip唯一条目的数量(由uniq -c生成)

netstat -n会给你所有的当前networkingstream量,然后你把它们传送给grep :80 ,它只会在你的web服务器上抓取连接。 接下来,我们用cut -c 45- ,然后cut -f 1 -d ':'之后的IP(从冒号开始)之后的所有内容cut -f 1 -d ':'然后我们对它进行分类,得到唯一的IP count( uniq -c ),然后按相反的顺序sorting,这样大多数IP就出现在顶部。

这并不一定意味着你得到了DDoS,因为大部分的stream量来自单一的IP。 有人可能会抓取您的网站的内容或其他原因。