Configurar um servidor Debian em produção vai muito além de instalar o sistema operacional. Este checklist cobre as configurações essenciais de segurança que toda equipe de infraestrutura deveria aplicar antes de expor qualquer serviço na internet.
1. Atualizações e patches
O primeiro passo é garantir que o sistema esteja completamente atualizado e configurado para receber atualizações de segurança automaticamente.
apt update && apt upgrade -y
apt install unattended-upgrades -y
dpkg-reconfigure unattended-upgrades
2. Configuração de SSH
O SSH é o principal vetor de ataque em servidores expostos. Edite /etc/ssh/sshd_config e aplique:
Port 2222 # Mude a porta padrão
PermitRootLogin no # Desabilite login root
PasswordAuthentication no # Use apenas chaves SSH
MaxAuthTries 3 # Limite tentativas
AllowUsers seuusuario # Whitelist de usuários
ClientAliveInterval 300
ClientAliveCountMax 2
3. Firewall com UFW
Configure o firewall para permitir apenas o tráfego necessário:
apt install ufw -y
ufw default deny incoming
ufw default allow outgoing
ufw allow 2222/tcp # SSH na nova porta
ufw allow 80/tcp # HTTP
ufw allow 443/tcp # HTTPS
ufw enable
4. Fail2Ban
Bloqueie automaticamente IPs com comportamento suspeito:
apt install fail2ban -y
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Edite /etc/fail2ban/jail.local:
[sshd]
enabled = true
port = 2222
maxretry = 3
bantime = 3600
5. Desabilitar serviços desnecessários
Reduza a superfície de ataque removendo o que não é utilizado:
systemctl list-units --type=service --state=running
systemctl disable --now bluetooth
systemctl disable --now avahi-daemon
6. Auditoria com Lynis
O Lynis é uma ferramenta open source de auditoria de segurança que analisa o sistema e gera recomendações:
apt install lynis -y
lynis audit system
7. Permissões e SUID
Verifique binários com bit SUID que podem ser vetores de escalada de privilégio:
find / -perm -4000 -type f 2>/dev/null
8. Logs centralizados
Configure o rsyslog para enviar logs a um servidor centralizado e garanta que logs locais sejam preservados:
apt install rsyslog -y
systemctl enable rsyslog
Checklist rápido
- ✅ Sistema atualizado e unattended-upgrades ativo
- ✅ SSH na porta não padrão, root desabilitado, autenticação por chave
- ✅ UFW configurado com política default deny
- ✅ Fail2Ban ativo para SSH e serviços web
- ✅ Serviços desnecessários desabilitados
- ✅ Auditoria com Lynis executada e recomendações aplicadas
- ✅ Monitoramento de logs ativo
Precisa de ajuda para hardening de servidores em produção? Fale com a TuziaIT.