Não é possível parar o DDOS [duplicado]

3

Eu preciso de uma pequena ajuda para lidar com ddos. Estou tendo um ataque de ddos de 1GB no meu servidor e não sei como pará-lo. (1gbs é a velocidade máxima do servidor.)

Eu tenho as seguintes regras do 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

no entanto com o tcpdump eu posso ver pacotes vindos da porta 53

12:14:40.341410 IP 195.137.162.149 > x.x.x.x: ip-proto-17
12:14:40.341411 IP 193.169.188.52.53 > x.x.x.x.23495: 23454- 0/4/6 (234)
12:14:40.341414 IP 195.248.88.120 > x.x.x.x: ip-proto-17
12:14:40.341416 IP 193.19.184.42.53 > x.x.x.x.50529: 26701| 6/0/1 TXT[|domain]
12:14:40.341418 IP 192.41.13.71.53 > x.x.x.x.10634: 23454| 6/0/1 TXT[|domain]
12:14:40.341418 IP 50.97.53.214.53 > x.x.x.x.65437: 23454| 6/0/1 TXT[|domain]
12:14:40.341419 IP 192.3.130.149.53 > x.x.x.x.57519: 24820| 6/0/1 TXT[|domain]
12:14:40.341438 IP 195.182.58.136 > x.x.x.x: ip-proto-17
12:14:40.341441 IP 193.234.216.12 > x.x.x.x: ip-proto-17
12:14:40.341442 IP 195.228.85.145.53 > x.x.x.x.7903: 37969| 6/0/1 TXT[|domain]
12:14:40.341512 IP 192.195.177.60.53 > x.x.x.x.42871: 57501- 0/13/23 (718)
12:14:40.341552 IP 192.210.150.10.53 > x.x.x.x.41447: 25994| 6/0/1 TXT[|domain]
12:14:40.341556 IP 193.28.177.41 > x.x.x.x: 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      

no nginx eu tenho

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

nesta imagem você pode ver os números reais. meu uso normal não é mais que 5mb / seg.

netstat-ntu|awk'{print$5}'|corte-d:-f1|classificar|uniq-c|sort-n|cauda|grep-v"127.0.0"

 13 87.149.x.x
 14 95.68.x.x
 15 109.186.x.x
 15 84.108.x.x
 15 91.231.x.x
 17 162.17.x.x
 18 82.212.x.x
 82 151.248.x.x
 94 79.180.x.x
    
por Orlo 02.01.2014 / 17:23

3 respostas

7

Até onde eu posso ver, a questão iptables é um arenque vermelho: suas regras estão soltando esses pacotes muito bem, portanto o pacote muito grande conta com sua quinta e última regra (a regra DROP ). / p> Eu presumo da sua pergunta que você não quer apenas abandoná-los, mas não vê-los em sua porta, e isso só pode ser alcançado falando com seu provedor. Simplesmente impedi-los de bloquear todo o tráfego UDP de entrada com a porta 53 provavelmente impedirá o funcionamento do servidor, pois isso irá quebrar o DNS, mas se você puder reconfigurar seu servidor para usar apenas dois ou três servidores DNS específicos, há alguma chance de obter seu provedor para bloquear todos os outros tráfegos de entrada da porta 53.

Editar : minhas comiserações sobre seu provedor ruim. Acho que a questão dos firewalls de hardware é irrelevante: um deles não impedirá que o tráfego seja entregue em sua porta, ele ficará apenas entre sua porta e seu servidor e interromperá o tráfego consumindo recursos em seu servidor. Como não vejo nenhuma evidência acima de que esteja causando problemas de recursos no servidor, não vejo como isso ajudará você.

Seria muito normal, na verdade, que um provedor responsável concordasse em bloquear temporariamente certos tipos de tráfego para uma porta, mas se o seu provedor não fizer isso, então não vejo que você possa fazer muito, mas encolher os ombros, o tempo a tempestade, em seguida, olhe para outros provedores quando o contrato chegar para a renovação.

    
por 02.01.2014 / 17:35
5

Supondo que o tamanho da sua porta seja menor que 1 Gbps:

Resposta simples. Obtenha um firewall de hardware. Lutar contra um dDoS, especialmente um no intervalo de Gbps, não acontecerá no servidor real.

Se todo o tráfego estiver vindo da porta 53, faça com que seu provedor bloqueie a porta 53 a montante.

    
por 02.01.2014 / 17:26
-4

Instale o NGINIX e solucione o problema, é um software muito bacana e faz o trabalho lá. Há muita literatura para ler sobre como adicionar ferramentas extras por trás dele ou para fazer a configuração do trabalho de configuração do seu problema.

    
por 07.03.2014 / 10:02