Em um cenário em que constantemente vemos organizações sendo atacadas por hacker’s, precisamos tomar contra-medidas para nossa infraestrutura e também nossos serviços. Atualmente dispomos de diversas opções de serviços para pelo menos minimizar estes ataques.
Entre eles estão: Cloudflare, Incapsula, AWS Shield, Akamai, F5, entre outros. Porém, essas soluções são pagas. nShield é uma solução de código aberto e bastante acessível.
E para nós, meros mortais, como ter acesso a essa maravilhosa solução? É bem simples!
nShield e IpTables
O nShield é uma solução simples Anti-DDoS baseada em iptables para VPS (Virtual Private Server), servidores dedicados e dispositivos IoT (Internet das Coisas). O Iptables é a ferramenta que permite a criação de regras de firewall.
O Netfilter é um módulo do kernel do Linux que fornece as funções de firewall, NAT e log dos dados para o Iptables. Iptables não é um firewall, e sim uma interface para trabalhar com os recursos de firewall fornecidos pelo Netfilter.
Requerimentos para Instalação
- Uma distribuição Linux com Iptables (Debian, Fedora, CentOS, Ubuntu);
- Python;
- Nginx (Será instalado automaticamente pelo script install.sh).
Instalação Simples, Rápida, Estilo Linux.
siga os passos:
Modo de Uso
O script da instalação acima instalará o suporte ao Python (caso não esteja presente) e fará o download de todo o repositório com exemplos de arquivos de configuração, em seguida executará o script para realizar algumas configurações e uma rotina na cron que executará a cada 30 minutos para checar as conexões com bases nas configurações de IPs (IPSET). Você pode encontrar exemplos de arquivos de configuração no diretório examples.
O script Python após verificar a configuração, solicitará que você informe um endereço de e-mail (para o Let´s Encrypt por exemplo) e mudará o domínio de seu DNS para o nShield Server e fará um pedido de confirmação para o SSL DNS. Exemplo:
Agora seu domínio está verificado e um certificado SSL é emitido para a configuração do Nginx (Lembrando que ele será instalado consequentemente no script). Você poderá alterar o registro A de seu DNS para este servidor.
Como vai funcionar?
O script vem configurado para trabalhar em default (por padrão), com isso, ele será executado a cada 30 minutos para verificar o arquivo de configuração afim de que as seguintes operações sejam executadas:
- Obter as últimas listas de BOT’s, Spammers, reputação de IPs/Redes suspeito(a)s e verificar se esses caras estão atacando seu servidor (valeu FireHol);
- Habilitar métodos Anti-DDoS básicos para negar tráfego indesejado/mal-intencionado;
- Limitar a taxa da banda quando estiver sob ataque;
- Permitir que seja executado um proxy HTTPS para proteger o seu site através de um proxy/servidor externo (Você precisa executar manualmente a verificação do SSL pela primeira vez).
Abaixo um vídeo intuitivo mostrando como baixar e instalar o script:
Para Mais detalhes: