Blog

Tutoriais, guias e novidades do produto.

Segurança e Backups

Os 10 primeiros passos de segurança em um VPS novo

3 novembro 2026 6 min de leitura
Compartilhar esta publicação

Em um VPS novo, as primeiras tarefas são atualizar o sistema, criar um usuário separado que entra com chave em vez de root, desligar o login por senha, ativar o firewall e o fail2ban, habilitar as atualizações automáticas de segurança e conferir se os backups funcionam. Abaixo estão os 10 passos na ordem em que você deve fazê-los. Os comandos valem para Ubuntu e Debian.

Todo servidor na internet é alvo de varreduras automáticas e de robôs que tentam adivinhar senhas, e você pode ver isso no log de SSH do seu próprio servidor. A ordem importa: confirme que os passos 2 e 3 funcionam antes de fazer o passo 4, ou você pode ficar de fora. O sudo nos comandos também funciona se você estiver logado como root.

Sistema e contas

1. Atualize o sistema

sudo apt update && sudo apt upgrade -y

No Ubuntu, o arquivo /var/run/reboot-required aparece quando uma atualização exige reinício. Se ele aparecer, reinicie o servidor uma vez. O Debian pode não criar esse arquivo, então reinicie de qualquer forma depois de uma atualização do kernel.

2. Crie seu próprio usuário

Não use o root no dia a dia. Crie um usuário separado com direitos de sudo. Troque deploy pelo nome que preferir:

sudo adduser deploy

sudo usermod -aG sudo deploy

3. Entre com uma chave SSH

Se o seu computador ainda não tem um par de chaves, crie um com ssh-keygen -t ed25519. Depois copie a chave pública para o novo usuário e teste o login:

ssh-copy-id [email protected]

ssh [email protected]

Se você entrou sem que pedissem senha, está tudo certo. O Windows não tem o ssh-copy-id. No PowerShell, este comando faz o mesmo trabalho:

Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub | ssh [email protected] "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Reforce o SSH

4. Desligue o login por senha e como root

Primeiro confirme que você consegue entrar como o novo usuário com a sua chave. Depois descubra quais arquivos definem essas configurações. Quando o OpenSSH encontra a mesma configuração em vários lugares, usa o primeiro valor que lê. No Debian e no Ubuntu, o arquivo principal de configuração inclui a pasta /etc/ssh/sshd_config.d/ logo no começo. As imagens de provedores podem deixar nessa pasta um arquivo que liga o login por senha. Mesmo que você escreva no no arquivo principal, o yes desse arquivo continua valendo:

sudo grep -rniE "^\s*(PasswordAuthentication|PermitRootLogin|KbdInteractiveAuthentication)" /etc/ssh/sshd_config /etc/ssh/sshd_config.d/

Defina como no cada linha ativa da saída, no arquivo em que ela aparece: PasswordAuthentication no, PermitRootLogin no, KbdInteractiveAuthentication no. Acrescente ao final de /etc/ssh/sshd_config qualquer configuração que não apareça na saída. Depois teste, aplique e confira os valores que realmente estão em vigor:

sudo sshd -t && sudo systemctl reload ssh

sudo sshd -T | grep -E "^(passwordauthentication|permitrootlogin|kbdinteractiveauthentication)"

As três linhas devem terminar em no. Não feche a sessão que está aberta. Abra um novo terminal e confirme que o login com chave funciona antes de sair. Se mesmo assim ficar de fora, abra o console VNC pelo painel. O login pelo console não é afetado pelas configurações do SSH.

Essas configurações podem voltar sem você perceber. Ações no painel do provedor, como adicionar uma chave SSH ou redefinir a senha, podem fazer o script de primeira inicialização do provedor (cloud-init) rodar de novo no próximo boot, e esse script pode ligar o login por senha de volta. Depois de qualquer ação assim, execute o comando sshd -T acima de novo e confira os valores.

Restrinja o acesso externo

5. Ative o firewall

No ufw, libere o SSH primeiro e ative o firewall depois. Se fizer ao contrário, sua conexão cai. Se o SSH roda em uma porta diferente da 22, use essa porta no lugar da 22:

sudo ufw allow 22/tcp

sudo ufw enable

sudo ufw status verbose

Se você vai rodar um servidor web, libere também as portas 80 e 443. Por padrão, o ufw rejeita conexões de entrada. O painel também tem uma ferramenta de firewall. Se você usa Docker, tome cuidado: segundo a documentação do Docker, as portas que você publica ignoram as regras do ufw. Para serviços que só o próprio servidor precisa acessar, publique a porta apenas no endereço de loopback, por exemplo 127.0.0.1:5432:5432 em um arquivo Docker Compose.

6. Instale o fail2ban

O fail2ban bloqueia por um tempo os endereços IP que falham repetidamente no login:

sudo apt install -y fail2ban python3-systemd

printf '[sshd]\nenabled = true\nbackend = systemd\nmaxretry = 5\nbantime = 1h\n' | sudo tee /etc/fail2ban/jail.local

sudo systemctl enable fail2ban && sudo systemctl restart fail2ban

sudo fail2ban-client status sshd

Nos servidores com app de um clique da Seturack, o ufw está ativo e o fail2ban roda. Se você instalou um sistema operacional limpo, confira o estado deles com sudo ufw status e systemctl is-active fail2ban.

7. Revise as portas abertas

sudo ss -tulpn

O comando lista todos os serviços e portas em escuta. Serviços que não precisam de acesso externo, como bancos de dados e caches, devem escutar apenas em 127.0.0.1. Desligue o que você não usa: sudo systemctl disable --now service-name

Mantendo assim

8. Automatize as atualizações de segurança

Segundo a documentação do Ubuntu, o pacote unattended-upgrades normalmente vem pré-instalado e as atualizações de segurança ficam ativas. Se ele estiver faltando, instale e ative:

sudo apt install -y unattended-upgrades

sudo dpkg-reconfigure -plow unattended-upgrades

A reinicialização automática vem desligada por padrão, então reinicie o servidor você mesmo depois de atualizações do kernel. Pelos termos de serviço, manter o sistema atualizado depois da configuração é responsabilidade sua.

9. Faça backups e teste uma restauração

Na Seturack, seu servidor passa por backup toda noite e os últimos 7 dias são mantidos. Isso está incluído no preço. Na aba Gerenciamento, abra Backups para vê-los, recuperar um único arquivo ou restaurar o servidor inteiro. Para testar uma restauração, recupere um único arquivo: restaurar o servidor inteiro substitui todo o disco atual. Fazer um snapshot antes de uma grande mudança é um bom hábito, mas snapshot não é backup. Guarde também uma cópia dos seus dados importantes fora do servidor. Para mais detalhes, veja o artigo sobre backups diários.

10. Fortaleça suas senhas

A sua conta do painel é a chave do servidor. Use ali uma senha longa que você não use em nenhum outro lugar e guarde-a em um gerenciador de senhas. Troque a primeira senha de root que você copiou do painel com sudo passwd root. Coloque uma frase secreta na sua chave privada SSH. Nunca cole senhas ou chaves em mensagens de suporte ou chats.

Comentários0

Ainda não há comentários

Seja a primeira pessoa a compartilhar sua opinião.

Participe da discussão

Entre ou crie uma conta para deixar um comentário.

Não perca nenhuma publicação

Receba nossos tutoriais, guias e novidades de produtos na sua caixa de entrada.

Sua inscrição no nosso boletim informativo foi concluída.