Recebendo Ataques DDoS

Iniciado por heitorzinhotc, 30 de Dezembro de 2011, 16:08

tópico anterior - próximo tópico

heitorzinhotc

Olá pessoal, eu tenho um servidor de jogo online, www.golden-ot.org e estou sofrendo ataques tipo BOTNET e para vocês terem noção da grandeza dos ataques, a empresa que eu aluguei meu servidor dedicado bloqueou meu ip durante 6 horas, vocês podem ver, site e todo meu sistema fora do ar....

Existe regras de iptables que bloqueia aqueles ataques tipo DDos, botnet ??

Eu andei pesquisando, e a unica coisa que eu percebi, foi que esse tipo de ataque só é barrado com cisco guard, dai gostaria de ver aqui com vocês se regras de iptables tambem é capaz de bloquear esses ataques, pois vi tambem que esse tipo de ataque não se conecta com ip no servidor dedicado, é como se fosse um ataque oculto intendem, dai não sei se uma regra de iptables é capaz de indentificar isso, e ae gostaria de ver com vocês oque eu poderia fazer, pois um firewall cisco guard ta custando media de R$1,100,00 mensal, ou sejá, pra quem ta começando é algo meio que impossivel!!

Meu sistema operacional é o ubuntu 10.04 server LST, me ajudem pessoal, por favor!!

Aguardo uma resposta, obrigado pessoal!

zekkerj

Olá Heitor,

Quem tem que bloquear o DDoS é a empresa, não você.

DDoS significa "Distributed Denial of Service", ou "Ataque Distribuído de Negação de Serviço".

Imagine que uma máquina começa a tentar pingar seu servidor, com intervalo pequeno, digamos, um milésimo de segundo entre cada pacote. Seu servidor terá que processar os pings e pra cada um que chega, decidir se quer responder ao ping ou não. Isso, pelo menos mil vezes a cada segundo. Sendo um ping de tamanho mínimo --- 64 bytes --- serão 64KB/s de tráfego (~640Kbps), fora as mil interrupções que seu processador estará sofrendo pra processar os pacotes. Um processador atual lida com isso fácil, e não chega a tomar muita banda, nem de quem está enviando, nem de quem está recebendo, mas já haverá algum impacto tanto em seu processador quanto em sua rede.

Agora imagine que dez máquinas estejam fazendo isso. Seu servidor terá que processar dez mil pacotes (dez mil interrupções por segundo), e tráfego de 640KB/s (~6Mbps). Seu servidor ainda dá conta de processar esses pacotes, mas esse tráfego já é mais do que algumas conexões internet conseguem transportar. Sim, dez máquinas podem saturar uma conexão internet.

Pois bem, um ataque DDoS pode ter de mil a um milhão de máquinas, dependendo da botnet que esteja atacando.

Estando seu servidor sob ataque, não há regra de iptables capaz de impedir os pacotes de chegarem à sua máquina, pois você não controla a conexão de rede, você só controla quais dos pacotes que chegam à sua máquina vão ser aceitos pra processamento. Então quem pode controlar isso? Seu provedor. É ele quem controla a conexão de rede, e é ele que pode perceber que uma das máquinas da rede interna está sob ataque. É ele que pode estabelecer um filtro seletivo, limitando a quantidade de pacotes que sua máquina pode receber num período de tempo. É ele quem tem que ativar o firewall Cisco ASA ou Cisco PIX pra proteger a rede interna, não você.

O que o provedor pode fazer é te cobrar um adicional por esse serviço --- o que não seria nada absurdo, ter duas redes, uma protegida, mais cara, e outra desprotegida, mais barata. Mas quem tem fazer isso é o provedor, não você.

Até pq é interesse dele proteger a rede, pois em algum ponto os pacotes que estão indo pra vc estão se juntando com os pacotes que vão pros outros clientes dele. E se vc está sofrendo um ataque pesado, esse peso acaba caindo em cima dos outros clientes também.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

heitorzinhotc

#2
Então cara, concordo, foi isso mesmo que tenho visto pela internet.... Mas é complicado, eles não fazem nada, fazem duas horas que liberaram meu ip, mas jaja alguem vem com as botnet e ataca denovo e a empresa vem e bloqueia meu ip novamente, conheçe a limestone ? é uma das melhores empresas de servidor dedicado, eles nem fazem nada, é triste pensa que vou ter que ficar com isso até conseguir fatura alguma coisa!

Oque você me diz dessas regras? Pois é oque eu tenho para este momento, infelismente..

#!/bin/sh
echo "FIREWALL"
echo
sudo echo 1 > /proc/sys/net/ipv4/ip_forward
sudo echo 1 > /proc/sys/net/ipv4/ip_dynaddr
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i ! lo -d 127.0.0.0/8 -j REJECT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 1 --connlimit-mask 24 -j REJECT --reject-with tcp-reset
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 465 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j REJECT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -m limit --limit 4/minute --limit-burst 1 -j ACCEPT
iptables -A INPUT -p tcp -m state --syn --state NEW --dport 22 -j DROP
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --syn --dport --dports 7171,2322 -m connlimit --connlimit-above 1 --connlimit-mask 24 -j REJECT --reject-with tcp-reset
iptables -A INPUT -p tcp -m multiport --dports 7171,2322 -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT
iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
iptables -A FORWARD -p tcp --syn -j DROP
iptables -A FORWARD -p tcp --syn -m limit --limit 2/s -j ACCEPT
iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH SYN -j DROP
iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH FIN -j DROP
iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH ACK -j DROP
iptables -A INPUT -m conntrack --ctstate INVALID -p tcp --tcp-flags ! SYN,RST,ACK,FIN,URG,PSH SYN,RST,ACK,FIN,URG,PSH -j DROP
iptables -A INPUT -m conntrack --ctstate NEW -p tcp --tcp-flags SYN,RST,ACK,FIN,URG,PSH FIN,URG,PSH -j DROP
iptables -A INPUT -p UDP -f -j DROP
iptables -A INPUT -p TCP --syn -m iplimit --iplimit-above 9 -j DROP
iptables -A INPUT -m pkttype --pkt-type broadcast -j DROP
iptables -A INPUT -p ICMP --icmp-type echo-request -m pkttype --pkttype broadcast -j DROP
iptables -A INPUT -p UDP --dport 7 -j DROP
iptables -A INPUT -p UDP --dport 19 -j DROP
iptables -A INPUT -p UDP --dport 135:139 -j DROP
iptables -A INPUT -p TCP --dport 135:139 -j DROP
iptables -A INPUT -p TCP --syn -m iplimit --iplimit-above 3 -j DROP
iptables -A INPUT -p UDP -m pkttype --pkt-type broadcast -j DROP
iptables -A INPUT -p UDP -m limit --limit 3/s -j ACCEPT
iptables -A INPUT -j REJECT --reject-with icmp-host-prohibited
iptables -A INPUT -p ICMP -f -j DROP
SERVER_IP="64.31.48.219"
echo
echo "...Done"

zekkerj

O que eu te digo dessas regras? Digo que não vão resolver.

Não adianta tentar resolver DDoS com regra de iptables. Quando o pacote chega na tua máquina, ele já conseguiu o objetivo dele.

Se o serviço tá pela metade, o negócio é procurar outro provedor que faça o serviço completo.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D