检查 DDoS 网站:什么是 DDoS?网站 DDoS 或拒绝服务攻击是一种使用一个或多个 IP 地址的协同攻击,旨在通过使其服务器无法访问来削弱网站。这是通过使服务器资源过载并耗尽所有可用连接和带宽来完成的。就像开车一样,如果车流量太大,你从 A 点到 B 点的旅行时间就会变慢。
通过用超出其处理能力的连接淹没服务器,服务器变得过载,无法处理合法请求。即使是大型服务器也无法处理遭受 DDoS 攻击的网站所能带来的连接数。
虽然实施 DDoS 攻击的方式有很多种,从 HTTP 泛洪到慢速长连接,但绝大多数都需要直接连接到您的服务器。其中很多。好消息是,由于这些连接是活跃的,您很可能会看到它们正在建立。使用几个简单的命令,您不仅可以确定网站是否正在遭受 DDoS 攻击,还可以获得帮助缓解这些攻击所需的信息。
如果您担心您的服务器可能被黑客入侵,您的网站可能受到 DDoS 攻击,您需要做的第一件事就是查看您服务器的负载。
可接受的负载是多少?这取决于您的 CPU 资源或可用线程。通常,规则是每个线程一分。
要确定服务器的当前负载,可以使用 grep /proc /cpuinfo | . 命令 wc -l 命令,将返回逻辑处理器(线程)的数量。在 DDoS 攻击期间,您可能会看到负载是您应有的最大负载的两倍、三倍甚至更高。
首先,使用下面的两个命令返回服务器正常运行时间和负载。
负载平均值显示以下时间段的负载:1 分钟平均值、5 分钟平均值和 15 分钟平均值。在这种情况下,大于 7 的平均负载可能是一个问题。
与上面的示例不同,有时您的服务器会通过后端连接(如 IPMI)响应良好,但在通过公共接口连接时仍然会很慢。要确定是否属于这种情况,您需要检查您的网络流量。
这可以使用多种工具之一来完成,包括 nload、bmon、iftop、vnstat 和 ifstat。您的选择将取决于您的操作系统,但所有这些工具都可以通过您的包管理器(apt、yum 等)安装。
由于大多数 DDoS 攻击都需要连接到您的服务器,因此您可以检查并查看有多少 IP 地址以及哪些 IP 地址同时连接到您的服务器。
这可以使用 netstat 来确定,netstat 是一个用于提供各种详细信息的命令。但是,在这种情况下,我们只对建立连接的特定 IP、IP 的数量以及它们所属的子网感兴趣。要开始,请在终端中键入以下命令:
netstat -ntu|awk '{print $5}' |cut -d: -f1 -s|sort|uniq -c|sort -nk1 -r
此命令将返回降序排列哪些 IP 连接到您的服务器的列表以及每个 IP 有多少个连接。
结果还可能包含虚拟数据,这些数据将显示为非 IP 信息并且可能会被忽略。
查看结果,您应该会看到每个 IP 列出的连接数从 1 到大约 50 个不等。这对于正常流量来说很常见。但是,如果您看到某些 IP 具有超过 100 个连接,则需要进行调查。
您可以查看已知 IP、一个或多个服务器私有 IP,甚至您自己的多个连接私有 IP。在大多数情况下,它们可以忽略,因为它们仍然很正常。当您看到具有数百或数千个连接的单个未知 IP 时,您应该担心,因为这可能是攻击的迹象。
一旦您检测到哪些 IP 正在攻击您的服务器,就可以通过一些简单的命令来阻止这些特定的 IP。
要开始使用,请使用以下命令,将“ipaddress”替换为您要阻止的 IP 地址。
在服务器上阻止特定 IP 后,您可以使用以下命令交叉检查该 IP 是否已成功阻止:
您还可以通过输入以下命令使用 iptables 突出显示服务器上的 IP 地址:
iptables -A INPUT 1 -s IPADDRESS - j DROP/REJECT
service iptables restart
service iptables save
输入这一系列命令后,您需要终止所有 httpd 连接并重新启动 httpd 服务。这可以通过键入以下内容来完成:
killall -KILL httpd
service httpd startssl
如果多个未知 IP 地址正在建立大量连接,则可以对所有被滥用的 IP 重复这些过程中的任何一个。
虽然可以很容易地诊断和修复来自生成多个连接的单个 IP 的拒绝服务攻击,但防止网站受到 DDoS 攻击变得更加复杂,因为攻击者使用更少的连接,更多的连接超过更多的攻击 IP。
在这些情况下,即使网站受到 DDoS 攻击,您也会看到更少的个人连接。随着物联网 (IoT) 的兴起,此类攻击变得越来越普遍。通过渗透和使用具有 Internet 连接的“智能”设备、设备和工具,恶意行为者建立了一个可用 IP 网络,称为僵尸网络,当网站由 DDoS 协调针对特定目标时,能够部署在攻击中。
那么,如果您看到大量未知 IP 仅建立单一连接,您该怎么办?在这种情况下,很难确定这是有机流量还是协同攻击。
首先,您需要确定这些连接是否来自公共子网:公共是相同的/16 或 /24。您可以使用接下来的两个命令列出包含 IP 的子网。已连接以及有多少 IP每个子网。
要从同一 /16 子网 (xxx.xxx.0.0) 中查找 IP,请使用:
netstat -ntu|awk '{print $5}' |cut -d: -f1 -s |cut -f1, 2 - d '.' |sed 's/$/.0.0/' |sort|uniq -c|sort -nk1 -r
输入时,此命令将显示以相同的两个八位字节开头的任何 IP:即。192.168.xxx.xxx。
要从同一 /24 子网 (xxx.xxx.xxx.0) 中查找 IP,请使用:
netstat -ntu|awk '{print $5}' |cut -d: -f1 -s |cut -f1, 2 , 3 -d '.' |sed 's/$/.0/' |sort|uniq -c|sort -nk1 -r
输入时,此命令将显示以相同的三个八位字节开头的任何 IP:即。192.168.1.xxx。
当您的网站遭受多 IP DDoS 攻击时,一旦确定您是否真的受到攻击,缓解它的步骤与上面使用的针对单个 IP 攻击的步骤相同,只是复制到多个 IP。
这些技术只是一些可用于检查可能的攻击的工具。虽然可以使用更高级的工具,但这些方法可以提供快速简便的结果来确定您是否正在遭受 DDoS 攻击。
即使没有被黑客攻击,这些命令提供的信息也很有用,熟悉它们可以帮助增强任何管理员的工具。
与 DDoS 攻击相关的风险和成本比以往任何时候都大。不幸的是,随着僵尸网络的泛滥,即使验证了 DDoS 攻击,手动阻止成百上千个攻击 IP 也是极其困难的。在这些情况下,攻击一旦开始就很难停止。
出于这个原因,最好在 DDoS 攻击发生之前制定一个计划来应对它们。除了这里提到的方法之外,您可能还想考虑订阅在线提供的各种 DDoS 保护服务之一。热门选项包括 Akamai、Verisign 和 Radware。