Um VPS novo recebe 1.000+ tentativas brute-force SSH por dia de botnets. Esta configuração de 10 minutos bloqueia todas. Testado em Ubuntu 22.04/24.04 — o SO padrão para Hospedagem VPS Hostiger.
1. Criar usuário não-root (2 min)
adduser deploy
usermod -aG sudo deploy
mkdir -p /home/deploy/.ssh
chmod 700 /home/deploy/.ssh
echo "ssh-ed25519 AAAA... you@laptop" > /home/deploy/.ssh/authorized_keys
chmod 600 /home/deploy/.ssh/authorized_keys
chown -R deploy:deploy /home/deploy/.ssh
2. Desabilitar login por senha e SSH root (2 min)
Edite /etc/ssh/sshd_config:
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
X11Forwarding no
ClientAliveInterval 300
Reinicie SSH — mas mantenha a sessão atual aberta em outro terminal caso se tranque fora:
systemctl restart ssh
3. Habilitar firewall ufw (1 min)
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp # SSH
ufw allow 80/tcp # HTTP
ufw allow 443/tcp # HTTPS
ufw enable
ufw status verbose
4. Instalar fail2ban (2 min)
Fail2ban vigia logs de auth e bane IPs auto após tentativas falhadas.
apt install fail2ban -y
cat > /etc/fail2ban/jail.local << EOF
[DEFAULT]
bantime = 24h
findtime = 10m
maxretry = 5
[sshd]
enabled = true
EOF
systemctl restart fail2ban
fail2ban-client status sshd
5. Atualizações automáticas de segurança (2 min)
apt install unattended-upgrades -y
dpkg-reconfigure --priority=low unattended-upgrades
Responda "Sim" para habilitar. Só atualizações de segurança se instalam automaticamente.
6. Mudar porta SSH padrão (opcional, 1 min)
Não acrescenta segurança real mas reduz spam de logs. Em sshd_config:
Port 2222
Verificar tudo
ss -tlnp— deve mostrar apenas serviços esperadosfail2ban-client status sshd— mostra "Currently failed" e "Total banned"ufw status— mostra suas portas permitidas
Se segurança é alta prioridade, considere Servidores Dedicados Hostiger — isolamento total de hardware sem hipervisor compartilhado.