Ferramentas para bloqueio de ataques DDOS

Iniciado por ajsantos, 30 de Março de 2016, 18:03

tópico anterior - próximo tópico

ajsantos

Boa tarde, gostaria da opinião e ajuda de vocês sobre melhores formas de bloquear ataques DDOS.
Recentemente sofri ataques no meu servidor linux, que por minha falta de experiência, estava bem desprotegido.
passado o estrago, comecei a pesquisar sofre esse tipo de ataque e sobre algumas ferramentas para auxiliar no combate, então até o momento estou utilizando as seguintes configurações:

Desabilitado acesso root via SSH;
Alteração da porta padrão do SSH;

Instalação da ferramenta:
fail2ban;

Ferramentas de monitoramento:
Ajenti Control Panel;
Vnstat;
Iftop;
Ossec HIDS;

Configuração de firewall via iptables:
# limpando todas as regras existentes.
iptables -F
iptables -X

# aceita todas  as conexões (será filtrado depois)
iptables -P INPUT   ACCEPT
iptables -P OUTPUT  ACCEPT
iptables -P FORWARD ACCEPT

# bloqueia os ataques de flood mais comuns
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP
iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP

# permite tráfego nas portas
iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 5432 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT

# desativa a resposta do comando ping
iptables -A OUTPUT -p icmp -o eth0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-reply -s 0/0 -i eth0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type destination-unreachable -s 0/0 -i eth0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type time-exceeded -s 0/0 -i eth0 -j ACCEPT
iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p icmp -i eth0 -j DROP

# permite o SSH, FTP e portas passivas (configuradas em nosso guia)
iptables -A INPUT -p tcp --dport ssh --jump ACCEPT
iptables -A INPUT -p tcp --dport 20 --jump ACCEPT
iptables -A INPUT -p tcp --dport 21 --jump ACCEPT
iptables -A INPUT -p tcp --dport 60000:60005 --jump ACCEPT
iptables -A INPUT -s 127.0.0.1/32 --jump ACCEPT

# nega qualquer conexão que não esteja na regra
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -L -n


Sei que é muito difícil bloquear um ataque ddos 100% mas minha pergunta é: essas ações que tomei são suficiente?

vocês indicam mais alguma coisa pra proteger o servidor desses ataques?

agradeço a opinião de vocês.

zekkerj

CitarSei que é muito difícil bloquear um ataque ddos 100% mas minha pergunta é: essas ações que tomei são suficiente?
Não.

Citarvocês indicam mais alguma coisa pra proteger o servidor desses ataques?
Sim. Converse com seu provedor, e certifique-se de que ele te proteja de DDoS. Você até pode ignorar o tráfego de DDoS, impedindo que sua máquina seja bloqueada, mas se o seu provedor não identifica e bloqueia, significa (1) que ele repassa esse ataque pra você; e (2) que no fim do mês, ele vai te cobrar esse tráfego do ataque como tráfego efetivamente usado.
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

cpaynes

#2
Complementando o que o Zekkerj falou, o provedor tem que auxiliar nessa tarefa. Caso não consiga evoluir, sugiro trocar de provedor.

Existem alguns parâmetros no sysctl que ajudam a manter a estabilidade do servidor em pequenos ataques na camada 3 e 4. um ponto importante para camada 7 é ter um firewall de aplicação web rodando, como o Modsecurity - https://www.modsecurity.org/documentation.html, não é para DDOS, mas te ajuda contra algumas explorações triviais e complexas.. Outra camada que alivia a carga no teu server seria inserir um Varnish na frente do teu servidor web, seja Apache ou Nginx.

Outra dica importante é lberar o acesso as regras abaixo somente quando precisar. Usando a política DROP.

Citariptables -A INPUT -p tcp -m tcp --dport 5432 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 --jump ACCEPT
iptables -A INPUT -p tcp --dport 21 --jump ACCEPT
iptables -A INPUT -p tcp --dport 60000:60005 --jump ACCEPT

É importante mudar a porta padrão do teu SSH. Existe um relatório da Digital Ocean, que em menos de 30 segundos que uma máquina sobe na rede ela já é escaneada nas portas default. Sugiro uma porta alta como 2222.. 2227... 60022...



ajsantos

Meu provedor não quer se responsabilizar pois meu plano é servidor "gerenciado pelo usuário", então segundo eles, o proprietário é responsável pela configuração, ainda estou pensando como posso provar que sofri um ataque pra pelo menos dividir com eles a responsabilidade.

Assim com o Zekkerj disse, estão querendo me cobrar o tráfego excedente gerado como se fosse trafego comum.

Agradeço as respostas de vocês, seguirei suas dicas.

Obrigado pessoal

cpaynes

Por mais que o plano seja gerenciado pelo usuário geralmente a responsabilidade de barrar um DDOS é do provedor.
E se for esse mesmo o caso, a minha sugestão é mudar de provedor.

fernando_pinhal

Galera, tô entrnado de penetra na conversa e tô procurando o seguinte:

tenho um servidor de 7 Days to Die e recentemente estou recebendo ataques de DDOS nele, tão pesados que estão impedindo a navegação na internet na rede.

Ele utiliza as portas 26900 a 26903, 8080 a 8082 e outras que não são portas de conhecimento público.

Estou usando o ubuntu server 14.04, ele não recebeu atualizações (o que até pode ser um erro da minha parte), mas mesmo assim, ele está configurado como padrão, não bloqueando qualquer porta. O soda é que por causa desses ataques, minha rede toda vai acabar pagando pato.

Alguém tem como me ajudar passo a passo de como proceder?
Sou muito leigo e realmente não sei nada do assunto.

Rockwave

Cara, como o Zekkerj falou não tem tanta coisa que você consiga fazer individualmente, o melhor é você contar com a empresa que hospeda o seu servidor pra que eles atuem nisso.

zekkerj

Uma coisa precisa ficar clara... vc pode atuar o quanto quiser no DDoS dentro do teu servidor, e cada coisa que vc fizer pode e vai te ajudar a manter o servidor no ar.

Mas todo o tráfego que chegar ao seu servidor poderá ser cobrado pela hospedagem, portanto, se você está sofrendo DDoS, é essencial que você comunique isso à administração da hospedagem o mais rápido possível para que ***ELES*** ajam sobre esse tráfego, senão você vai pagar por ele.
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