Voltar para o blog
VPS06 de junho de 20265 min de leitura

Como alterar a porta do SSH na sua VPS Linux

O passo a passo completo, na ordem que evita você perder o acesso, incluindo o firewall, o SELinux e a pegadinha do socket no Ubuntu novo.


A porta 22 é o endereço padrão do SSH, e por isso é onde toda varredura automática da internet bate primeiro. Se você olhar os logs de uma VPS nova, vai ver centenas de tentativas de login por dia sem que ninguém saiba que ela existe.

Trocar a porta derruba esse volume quase a zero. Mas vale começar sendo honesto sobre o que isso é e o que não é.

O que isso resolve e o que não resolve

Mudar a porta não é segurança de verdade. É obscuridade: você não fechou a porta, só mudou de lugar. Quem fizer uma varredura completa das portas da sua máquina acha o SSH em segundos.

O que muda é o volume. Some quase todo o ruído dos bots automatizados, os logs ficam legíveis, e o risco de alguém acertar sua senha por tentativa e erro cai bastante.

Ou seja: vale a pena fazer, mas como complemento, nunca como substituto de senha forte, chave SSH e fail2ban, que estão em como manter a segurança da sua VPS.

A regra de ouro

Faça tudo isso com a sessão atual aberta. Não feche o terminal em que você está até ter confirmado que a nova porta funciona, abrindo uma segunda conexão.

Se algo der errado com a sessão antiga ainda aberta, você desfaz. Se der errado depois de fechar, você perde a máquina.

1. Escolha a porta

Use um número acima de 1024 e que não esteja em uso por outro serviço. Valores como 2222 são comuns, mas justamente por isso também são escaneados. Um número menos óbvio, tipo 49222, funciona melhor.

Confira se a porta está livre:

ss -tulpn | grep 49222

Se não retornar nada, está livre.

2. Edite a configuração do SSH

nano /etc/ssh/sshd_config

Procure a linha:

#Port 22

Ela normalmente vem comentada, com o # na frente. Descomente e troque o número:

Port 49222

Uma dica que evita dor de cabeça: durante o teste, deixe as duas portas ativas, uma em cada linha:

Port 22
Port 49222

Assim, se algo falhar na porta nova, a antiga continua funcionando. Você remove a linha da 22 depois de confirmar que está tudo certo.

Salve com Ctrl + O e saia com Ctrl + X.

3. Libere a porta no firewall

Esse é o passo mais esquecido, e é o que mais tranca gente para fora.

UFW, no Ubuntu e Debian:

ufw allow 49222/tcp

firewalld, no Rocky, AlmaLinux e CentOS:

firewall-cmd --permanent --add-port=49222/tcp
firewall-cmd --reload

Se você ainda não configurou o firewall, o guia completo está em como ativar o firewall no Linux.

4. Ajuste o SELinux, se for Rocky ou AlmaLinux

Nas distribuições baseadas em Red Hat, o SELinux bloqueia o SSH em portas fora do padrão mesmo com o firewall liberado. O sintoma é o serviço se recusar a iniciar sem motivo aparente.

dnf install -y policycoreutils-python-utils
semanage port -a -t ssh_port_t -p tcp 49222

No Ubuntu e Debian esse passo não existe.

5. Confira o socket, se for Ubuntu recente

Essa é a pegadinha nova, e ela pega muita gente.

Nas versões mais recentes do Ubuntu, o SSH sobe por socket activation, e nesse modo a porta definida no sshd_config pode ser simplesmente ignorada.

Confira:

systemctl status ssh.socket

Se aparecer como ativo, você tem duas saídas. A mais simples é desativar o socket e deixar o serviço tradicional cuidar:

systemctl disable --now ssh.socket
systemctl enable --now ssh

Se preferir manter o socket, a porta precisa ser definida nele, com systemctl edit ssh.socket.

6. Reinicie o SSH

systemctl restart sshd

Em algumas distribuições o serviço se chama ssh:

systemctl restart ssh

Reiniciar o SSH não derruba a sua sessão atual. Ela continua viva.

Confirme que subiu sem erro:

systemctl status sshd

7. Teste em uma nova conexão

Agora, sem fechar o terminal atual, abra outro e conecte na porta nova:

ssh -p 49222 usuario@IP_DA_VPS

No PuTTY, o campo Port, ao lado do Host Name, é onde vai o número novo. O passo a passo da conexão está em como conectar na sua VPS Linux.

Se entrou, funcionou.

8. Feche a porta 22

Só agora, com a nova porta confirmada, remova a linha Port 22 do sshd_config, reinicie o serviço e feche a porta no firewall:

ufw delete allow 22/tcp

Ou, no firewalld:

firewall-cmd --permanent --remove-service=ssh
firewall-cmd --reload

Se não funcionou

Percorra nesta ordem, que é a frequência real dos problemas:

  1. Firewall. É a causa em quase todos os casos. Confira com ufw status ou firewall-cmd --list-all.
  2. Socket do Ubuntu. Se a porta antiga continua funcionando e a nova não, é quase certo que seja isso.
  3. SELinux, em Rocky e AlmaLinux. Confira o log com journalctl -u sshd -n 50.
  4. Erro de digitação no arquivo. Rode sshd -t, que valida a configuração e aponta a linha do problema sem precisar reiniciar.
  5. Firewall externo. Algumas hospedagens têm uma camada de firewall no painel, além do firewall da máquina. Vale conferir lá também.

Se a sua VPS for Windows

O equivalente é trocar a porta do RDP, que sofre exatamente o mesmo tipo de varredura. O passo a passo está em como trocar a porta RDP da sua VPS.

Trocar a porta reduz o volume de tentativa automatizada, mas não substitui proteção de rede. Nos planos de VPS da WyzeHost a mitigação de DDoS vem inclusa, sem custo adicional.

Pronto para começar o seu projeto?

Encontre o plano certo para o seu projeto e conte com servidores no Brasil, Ryzen 9 e anti-DDoS incluso.

Logo

Olá
como podemos te ajudar?

Suporte via Discord

Normalmente respondemos em 2 min.

Suporte via WhatsApp

Normalmente respondemos em 2 min.

Ver dúvidas comuns