Hardening do Linux: SELinux, AppArmor e Configurações de Kernel

Escudo Linux

🎯 Objetivo Geral

Implementar medidas de hardening em sistemas Linux, utilizando os mecanismos de controle de acesso obrigatório (SELinux/AppArmor), ajustes de kernel e outras configurações para reduzir vulnerabilidades.

📌 Objetivos Específicos

  • Entender a diferença entre SELinux e AppArmor e como ativá‑los.
  • Ajustar parâmetros sysctl para proteger contra ataques de rede e kernel.
  • Configurar auditoria e monitoramento de logs.
  • Aplicar políticas de senha e bloqueio de sessão.
  • Utilizar ferramentas como Lynis para verificação de segurança.

📖 Introdução

Hardening é o processo de fortalecer um sistema reduzindo sua superfície de ataque. Além das configurações de firewall e SSH, o Linux oferece mecanismos de controle de acesso obrigatório (MAC) e ajustes de kernel que podem tornar o sistema muito mais resistente a invasões.

⚙️ Desenvolvimento

1. SELinux vs AppArmor

SELinux (Security-Enhanced Linux) é mais complexo, usado principalmente no Red Hat/CentOS. AppArmor é mais simples e padrão no Ubuntu/Debian. Verifique o status:

sudo sestatus  # SELinux
sudo aa-status  # AppArmor

Para AppArmor, crie ou modifique perfis em /etc/apparmor.d/.

2. Ajustes sysctl

Edite /etc/sysctl.conf ou crie arquivos em /etc/sysctl.d/. Exemplos:

# Proteger contra IP spoofing
net.ipv4.conf.all.rp_filter = 1
# Desabilitar redirecionamento ICMP
net.ipv4.conf.all.accept_redirects = 0
# Proteger contra ataques de SYN flood
net.ipv4.tcp_syncookies = 1
# Restringir acesso a /proc
kernel.kptr_restrict = 2
kernel.dmesg_restrict = 1

Aplicar: sudo sysctl -p

3. Auditoria com auditd

Instale e configure regras para monitorar arquivos críticos:

sudo apt install auditd
sudo auditctl -w /etc/passwd -p wa -k passwd_changes

Logs em /var/log/audit/audit.log.

4. Ferramentas de verificação

Use lynis para escanear o sistema e obter recomendações:

sudo lynis audit system

💬 Discussão

O hardening deve ser aplicado gradualmente, testando cada alteração para não quebrar funcionalidades. Considere também a desativação de serviços desnecessários, remoção de pacotes não utilizados e a implementação de um sistema de detecção de intrusão (IDS) como o AIDE.

✅ Conclusão

O hardening é uma camada essencial para proteger servidores expostos à internet. A combinação de MAC, sysctl, auditoria e verificações periódicas cria uma defesa em profundidade.

📚 Referências

إرسال تعليق