Detecção e Prevenção de Intrusões
Configure sistemas de detecção de intrusões (IDS), como o Fail2Ban, e entenda os princípios dos sistemas de prevenção de intrusões (IPS) para defender ativamente seu servidor.
Detecção e Prevenção de Intrusões é uma aula grátis de Linux Server Deployment & SSH Mastery no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Linux Server Deployment & SSH Mastery, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Linux Server Deployment & SSH Mastery inclui 4 aulas no total.
Além dos firewalls: defesa ativa
Bem-vindo à lição final sobre segurança de servidores! Abordamos firewalls e auditorias, que são fundamentais para a prevenção. Mas o que acontece se um invasor determinado tentar contornar essas defesas?
Esta lição apresenta os sistemas de detecção de intrusão (IDS) e os sistemas de prevenção de intrusão (IPS). Essas ferramentas oferecem uma camada extra de defesa ativa, ajudando você a identificar e interromper atividades maliciosas no servidor.
O que é um IDS?
Um sistema de detecção de intrusão (IDS) é como um segurança que observa constantemente atividades suspeitas. Ele monitora o tráfego de rede do servidor ou os registros do sistema em busca de padrões que indiquem um ataque.
- Monitoramento passivo: um IDS detecta ameaças e alerta você sobre elas.
- Sem bloqueio: ele não bloqueia nem impede ativamente a intrusão. Sua função é apenas notificar.
- Exemplos: ferramentas como Snort ou Suricata podem atuar como IDS baseados em rede, analisando dados de entrada e de saída.
O que é um IPS?
Um sistema de prevenção de intrusão (IPS) leva o conceito de IDS um passo adiante. Em vez de apenas emitir alertas, um IPS intervém ativamente para interromper as ameaças detectadas.
- Proteção ativa: ele pode bloquear automaticamente endereços IP maliciosos, encerrar conexões suspeitas ou descartar pacotes nocivos.
- Foco na prevenção: o objetivo é impedir que a intrusão seja bem-sucedida em tempo real.
- Fail2Ban: um exemplo popular de IPS baseado no host, no qual vamos nos concentrar hoje.
Apresentando o Fail2Ban
O Fail2Ban é um IPS poderoso e de código aberto baseado no host. Ele funciona examinando arquivos de registro (como os de SSH, servidores web ou servidores de e-mail) em busca de repetidas tentativas de login malsucedidas ou outros padrões suspeitos.
Quando detecta tentativas malsucedidas demais de um único endereço IP dentro de um período especificado, o Fail2Ban atualiza automaticamente as regras do firewall do servidor para banir temporária ou permanentemente esse endereço IP.
Como o Fail2Ban funciona
O Fail2Ban funciona com base em três conceitos principais:
- Filtros: são expressões regulares que definem os padrões a serem procurados nos arquivos de registro (por exemplo, 'failed password for root').
- Jails: um jail combina um filtro com uma ação. Ele especifica qual arquivo de registro monitorar, qual filtro usar e qual ação executar quando as condições do filtro forem atendidas.
- Ações: são os comandos executados quando um IP é banido, normalmente modificando as regras do firewall (como
iptablesouufw) para bloquear o IP de origem.
Instalando o Fail2Ban
O Fail2Ban está disponível nos repositórios padrão da maioria das distribuições Linux. Vamos instalá-lo em um sistema baseado em Debian (como o Ubuntu).
Primeiro, atualize a lista de pacotes e depois instale o pacote fail2ban:
sudo apt update
sudo apt install fail2banConfiguração básica: jail.local
O principal arquivo de configuração do Fail2Ban é /etc/fail2ban/jail.conf. No entanto, você nunca deve editar esse arquivo diretamente, pois ele pode ser substituído durante as atualizações.
Em vez disso, crie uma cópia chamada /etc/fail2ban/jail.local e faça suas alterações nela. Esse arquivo substitui as configurações de jail.conf.
Veja algumas configurações globais importantes que você pode definir em jail.local:
bantime: por quanto tempo um IP fica banido (por exemplo,10mpara 10 minutos).findtime: o intervalo durante o qual as tentativas malsucedidas são contabilizadas (por exemplo,10m).maxretry: número de tentativas malsucedidas antes que um IP seja banido (por exemplo,5).
Ativando a proteção do SSH
Um dos usos mais comuns do Fail2Ban é proteger o SSH contra ataques de força bruta. No arquivo /etc/fail2ban/jail.local, você encontrará seções para diferentes serviços, chamadas de 'jails'.
Para ativar o jail do SSH, normalmente basta definir enabled = true na seção [sshd]. Você também pode personalizar os valores de bantime, findtime e maxretry.
Depois de editar o arquivo, reinicie o Fail2Ban para que as alterações entrem em vigor:
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 1h
sudo systemctl restart fail2banMonitorando o Fail2Ban
Depois de configurar e iniciar o Fail2Ban, você deverá verificar o status dele e confirmar se está banindo IPs ativamente. Para isso, use o comando fail2ban-client.
Para verificar o status geral do Fail2Ban:
sudo systemctl status fail2banVerificação rápida: configuração do Fail2Ban
Você configurou o Fail2Ban para proteger seu serviço SSH. Definiu maxretry = 3 e bantime = 1h.
Um invasor tenta fazer login por SSH:
- Login malsucedido às 10:00:00
- Login malsucedido às 10:00:30
- Login malsucedido às 10:01:00
- Login malsucedido às 10:01:30
Supondo que findtime esteja definido como 10 minutos, o que acontece com o endereço IP do invasor?
Revisão: IDS, IPS e Fail2Ban
Excelente trabalho! Você aprendeu a adicionar uma camada ativa de defesa ao seu servidor:
- IDS (sistema de detecção de intrusão) detecta e alerta sobre atividades suspeitas.
- IPS (sistema de prevenção de intrusão) detecta, alerta e bloqueia ativamente as ameaças.
- Fail2Ban é um IPS baseado no host que examina os registros em busca de padrões maliciosos e bane os endereços IP responsáveis, atualizando as regras do firewall.
- Você aprendeu a instalar o Fail2Ban, configurar definições globais em
jail.local, ativar jails específicos (como o SSH) e monitorar o status deles.
Implementar o Fail2Ban aumenta significativamente a resistência do servidor contra ataques de força bruta e outras ameaças automatizadas. Continue praticando essas habilidades para criar sistemas realmente robustos e seguros!
Aprenda Linux Server Deployment & SSH Mastery com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 12
- Aulas
- 48
Perguntas Frequentes
A aula “Detecção e Prevenção de Intrusões” é grátis?
Sim — o texto completo de “Detecção e Prevenção de Intrusões” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Linux Server Deployment & SSH Mastery, atualize para CoddyKit PRO. O curso de Linux Server Deployment & SSH Mastery inclui 4 aulas no total.
O que vou aprender em “Detecção e Prevenção de Intrusões”?
Configure sistemas de detecção de intrusões (IDS), como o Fail2Ban, e entenda os princípios dos sistemas de prevenção de intrusões (IPS) para defender ativamente seu servidor. Você pratica Linux Server Deployment & SSH Mastery com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Linux Server Deployment & SSH Mastery?
Nenhuma experiência prévia é necessária. Linux Server Deployment & SSH Mastery no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Detecção e Prevenção de Intrusões”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Linux Server Deployment & SSH Mastery?
Sim. Cada aula de Linux Server Deployment & SSH Mastery inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Auditoria de Segurança do Servidor
- Regras Avançadas de Firewall (IPTables)
- Detecção e Prevenção de Intrusões
- Registro Centralizado e Integração com SIEM