共计 1308 个字符,预计需要花费 4 分钟才能阅读完成。
导读 | DOS 攻击或者 DDOS 攻击是试图让机器或者网络资源不可用的攻击。这种攻击的攻击目标网站或者服务通常是托管在高防服务器比如银行,信用卡支付网管,甚至根域名服务器。 |
服务器出现缓慢的状况可能由很多事情导致,比如错误的配置,脚本和差的硬件。但是有时候它可能因为有人对你的服务器用 DoS 或者 DDoS 进行洪水攻击。
DoS 攻击或者 DDoS 攻击是试图让机器或者网络资源不可用的攻击。这种攻击的攻击目标网站或者服务通常是托管在高防服务器比如银行,信用卡支付网管,甚至根域名服务器,DOS 攻击的实施通常迫使目标重启计算机或者消耗资源,使他们不再提供服务或者妨碍用户,访客访问。
在这篇小文章中,你可以知道在受到攻击之后如何在终端中使用 netstat 命令检查你的服务器。
netstat -na
显示所有连接到服务器的活跃的网络连接
netstat -an | grep :80 | sort
只显示连接到 80 段口的活跃的网络连接,80 是 http 端口, 这对于 web 服务器非常有用, 并且对结果排序. 对于你从许多的连接中找出单个发动洪水攻击 IP 非常有用
netstat -n -p|grep SYN_REC | wc -l
这个命令对于在服务器上找出活跃的 SYNC_REC 非常有用, 数量应该很低, 最好少于 5.
在 dos 攻击和邮件炸弹, 这个数字可能非常高. 然而值通常依赖于系统, 所以高的值可能平分给另外的服务器.
netstat -n -p | grep SYN_REC | sort -u
列出所有包含的 IP 地址而不仅仅是计数.
netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'
列出所有不同的 IP 地址节点发送 SYN_REC 的连接状态
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
使用 netstat 命令来计算每个 IP 地址对服务器的连接数量
netstat -anp |grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
列出使用 tcp 和 udp 连接到服务器的数目
netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr
检查 ESTABLISHED 连接而不是所有连接, 这可以每个 ip 的连接数
netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1
显示并且列出连接到 80 端口 IP 地址和连接数.80 被用来作为 HTTP
当你发现攻击你服务器的 IP 你可以使用下面的命令来关闭他们的连接:
iptables -A INPUT 1 -s $IPADRESS -j DROP/REJECT
请注意你必须用你使用 netstat 命令找到的 IP 数替换 $IPADRESS
在完成以上的命令,使用下面的命令杀掉所有 httpd 连接,清除你的系统,然后重启 httpd 服务。