Hardening para Servidores

De Wiki Projeto Root
Ir para navegação Ir para pesquisar

Sobre

Olá! Visitante, reunimos aqui, informações sobre como aumentar a segurança em ambientes Linux.

Manual de Hardening para Servidores Debian

Objetivo

Aplicar medidas de segurança para proteger servidores Debian contra ataques, vazamentos de dados e falhas de configuração, em conformidade com os principais frameworks de segurança como NIST SP 800-53, HIPAA, CIS Controls, e ISO/IEC 27001.

1. Atualizações e Patches

  • Mantenha o sistema atualizado:
 apt update && apt full-upgrade -y
  • Habilite atualizações automáticas:
 apt install unattended-upgrades apt-listchanges -y
 dpkg-reconfigure --priority=low unattended-upgrades

2. Contas de Usuário e Permissões

  • Remova usuários e grupos não utilizados.
  • Desabilite o login root via SSH.
  • Use sudo para usuários com privilégios administrativos.

3. Configuração Segura do SSH

Edite o arquivo /etc/ssh/sshd_config:

PermitRootLogin no
PasswordAuthentication no
  • Use autenticação via chave SSH.
  • Permita apenas usuários autorizados.

4. Firewall (UFW)

Instale e ative o UFW:

apt install ufw
ufw default deny incoming
ufw default allow outgoing
ufw allow ssh
ufw enable

5. Auditoria e Logs

  • Instale o auditd:
 apt install auditd
  • Configure regras específicas para monitoramento de eventos críticos.

6. Logrotate

  • Verifique o arquivo /etc/logrotate.conf.
  • Centralize logs usando syslog-ng ou rsyslog remoto.

7. Verificação de Integridade

  • Instale o AIDE:
 apt install aide
 aideinit
  • Agende verificações regulares com cron.

8. Antivírus

  • Instale o ClamAV:
 apt install clamav

9. Controle de Acesso com AppArmor

  • Verifique se o AppArmor está habilitado:
 systemctl status apparmor
  • Use perfis específicos para serviços.

10. Serviços e Daemons

  • Desabilite serviços desnecessários:
 systemctl disable nome_servico

11. Sincronização de Hora (NTP)

  • Instale o Chrony:
 apt install chrony

12. Criptografia

  • Criptografe discos com LUKS.
  • Use certificados válidos com TLS.

13. Políticas de Senha

Garantir que as senhas criadas pelos usuários sigam regras de complexidade para aumentar a segurança e prevenir o uso de senhas fracas, em conformidade com o NIST e outras normas de segurança Verifique se o módulo libpam-pwquality está instalado:

apt install libpam-pwquality

Edite o arquivo /etc/pam.d/common-password: pam_pwquality.so

retry=3 
minlen=12 
difok=3 
ucredit=-1 
lcredit=-1 
dcredit=-1 
ocredit=-1


Explicação dos parâmetros:

Parâmetro Significado
retry=3 Permite até 3 tentativas em caso de erro de senha.
minlen=12 A senha deve ter no mínimo 12 caracteres.
difok=3 A nova senha deve diferir da anterior em pelo menos 3 caracteres.
ucredit=-1 Requer pelo menos 1 letra maiúscula.
lcredit=-1 Requer pelo menos 1 letra minúscula.
dcredit=-1 Requer pelo menos 1 número.
ocredit=-1 Requer pelo menos 1 caractere especial (ex: !@#).

14. Backup Seguro

  • Utilize ferramentas como Borg, Restic ou Rsnapshot.
  • Mantenha backups criptografados e fora do ambiente de produção.

15. Conformidade com Frameworks

  • NIST SP 800-53: AC-2 (Controle de Acesso), AU-2 (Logs), SC-28 (Proteção de Dados)
  • HIPAA: 164.312(a)(1) - Controle de Acesso, 164.308(a)(1)(ii)(D) - Avaliação
  • CIS Controls: Control 4 (Controle de Acesso), Control 6 (Auditoria), Control 10 (Backups)

16. Ferramentas de Verificação

  • Instale e rode o Lynis:
 apt install lynis
 lynis audit system

17. Checklist Final

  • [x] Atualizações automáticas
  • [x] SSH seguro
  • [x] Firewall ativo
  • [x] Logs e auditoria configurados
  • [x] Backup seguro
  • [x] Verificação de integridade ativa
  • [x] AppArmor ou SELinux ativos
  • [x] Conformidade com frameworks aplicada