无法停止DDOS

我需要一点帮助处理ddos。 我在服务器上遇到了1GB的ddos攻击,我不知道如何阻止它。 (1gbs是服务器的最大速度。)

我有以下的iptables规则:

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p tcp --dport 22 -j ACCEPT iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp --dport 8080 -j ACCEPT iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -j DROP 

但是使用tcpdump,我可以看到来自端口53的数据包

 12:14:40.341410 IP 195.137.162.149 > xxxx: ip-proto-17 12:14:40.341411 IP 193.169.188.52.53 > xxxx23495: 23454- 0/4/6 (234) 12:14:40.341414 IP 195.248.88.120 > xxxx: ip-proto-17 12:14:40.341416 IP 193.19.184.42.53 > xxxx50529: 26701| 6/0/1 TXT[|domain] 12:14:40.341418 IP 192.41.13.71.53 > xxxx10634: 23454| 6/0/1 TXT[|domain] 12:14:40.341418 IP 50.97.53.214.53 > xxxx65437: 23454| 6/0/1 TXT[|domain] 12:14:40.341419 IP 192.3.130.149.53 > xxxx57519: 24820| 6/0/1 TXT[|domain] 12:14:40.341438 IP 195.182.58.136 > xxxx: ip-proto-17 12:14:40.341441 IP 193.234.216.12 > xxxx: ip-proto-17 12:14:40.341442 IP 195.228.85.145.53 > xxxx7903: 37969| 6/0/1 TXT[|domain] 12:14:40.341512 IP 192.195.177.60.53 > xxxx42871: 57501- 0/13/23 (718) 12:14:40.341552 IP 192.210.150.10.53 > xxxx41447: 25994| 6/0/1 TXT[|domain] 12:14:40.341556 IP 193.28.177.41 > xxxx: ip-proto-17 

iptables -xnvL

 Chain INPUT (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 415575 293176304 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state ESTABLISHED 24101 1323153 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 19725 1182436 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8080 2 104 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 13101233 35329988490 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 488686 packets, 518540789 bytes) pkts bytes target prot opt in out source destination 

在nginx我

 limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s; 

在这个截图中,你可以看到实际的数字。 我的正常用法是不超过5mb /秒。 在这里输入图像说明

netstat -ntu | awk'{print $ 5}'| 切-d:-f1 | sorting| uniq -c | sort -n | 尾巴| grep -v“127.0.0”

  13 87.149.xx 14 95.68.xx 15 109.186.xx 15 84.108.xx 15 91.231.xx 17 162.17.xx 18 82.212.xx 82 151.248.xx 94 79.180.xx 

据我所知, iptables问题是一个红鲱鱼:你的规则丢弃这些数据包就好了,因此非常大的数据包在你的第五和最后的规则( DROP规则)。

我想你的问题是,你不仅要放弃他们,而且不要在你的端口上看到他们,而只能通过与你的提供者交谈来实现。 只要使用源端口53阻止所有入站UDP通信,就可能会停止服务器的工作,因为它会中断DNS,但是如果您可以重新configuration服务器以仅使用两个或三个特定的上游DNS服务器,则有一些机会让您的提供商阻止所有其他入站端口53stream量。

编辑 :我的你的可怜的提供者的慰问。 我认为硬件防火墙的问题是无关紧要的:其中之一不会阻止交付到您的端口的stream量,它将只位于您的端口和您的服务器之间,并停止您的服务器上的stream量消耗资源。 由于我没有看到任何上述证据,导致服务器上的任何资源问题,我不明白这将如何帮助你。

如果一个负责任的供应商同意暂时阻止某些港口的stream量,这将是非常正常的,但如果你的供应商不这样做,那么我不认为你可以做的很多,但是耸耸肩,然后在你的合同到期续约时查看其他提供者。

假设你的端口尺寸小于1Gbps:

简单的答案。 获取硬件防火墙。 打击dDoS,特别是在Gbps范围内的一个dDoS不会发生在实际的服务器上。

如果所有stream量都来自端口53,请让您的提供商阻止端口53上游。

安装NGINIX并解决这个问题,这是一个非常好的软件,而且这个工作有很多的文献可以阅读关于添加额外的工具,或者为你的问题做configuration工作。