Base de Conhecimento

Mudar a porta do SSH: passo a passo na VPS

  • ssh, vps, ufw, ubuntu, sshd, porta
  • Usuários acharam útil: 0

Veja como mudar a porta do SSH na VPS com menos risco de perder o acesso: liberar a porta no firewall, editar a configuração, testar e fechar a porta 22 só no fim.

Por Redação Eleven Host · @robson.direitodigital · 30 de outubro de 2026 · 9 min de leitura

Arte da Eleven Host: janela de terminal com o título: Mudar a porta do SSH: passo a passo na VPS

Capa da Redação Eleven Host para o guia: Mudar a porta do SSH: passo a passo na VPS Arte: Eleven Host

Para mudar a porta do SSH, troque a diretiva Port da configuração do servidor, libere a nova porta no firewall antes de aplicar, teste a configuração com sshd -t e conecte numa segunda sessão antes de fechar a atual.

Este guia é para quem já administra uma VPS e acessa por SSH. Os exemplos usam a porta 2222, o usuário usuario e o endereço 203.0.113.10. Troque pelos seus valores. Os comandos são de Ubuntu, e o passo de aplicar a mudança tem um caminho para o Ubuntu 24.04 e outro para versões que não usam o ssh.socket.

O que a porta muda e o que não muda

Segundo o manual do sshd_config, a opção Port define a porta em que o servidor SSH escuta, e o valor padrão é 22. Você pode escrever mais de uma linha Port, e o servidor passa a escutar em todas elas. Esse detalhe é útil: durante a troca, dá para manter a 22 e a nova porta ao mesmo tempo, e só retirar a antiga depois de confirmar que a nova funciona.

Ainda segundo o manual, para cada opção do arquivo vale o primeiro valor lido, com a exceção da própria Port, que aceita várias linhas. No Ubuntu, a documentação recomenda guardar as suas mudanças em arquivos próprios dentro de /etc/ssh/sshd_config.d/, como um porta.conf com a linha Port 2222. Assim a sua mudança fica separada do arquivo padrão do sistema, e as atualizações do pacote ficam mais fáceis.

O que a troca não faz: ela não substitui a chave SSH nem uma senha forte, e sozinha não protege o servidor. Mantenha a chave SSH, a senha forte e as outras proteções do servidor.

Antes de começar

Quatro cuidados ajudam a não ficar trancado fora da VPS:

  • Mantenha uma sessão SSH aberta. Ela é a sua porta de volta se algo der errado. Não feche esse terminal até o fim do guia.
  • Tenha um segundo terminal à mão. É nele que você vai testar a conexão na porta nova.
  • Escolha uma porta livre. O exemplo usa a 2222. Antes de definir, rode sudo ss -tlnp e veja se a porta escolhida já aparece na lista de portas escutando.
  • Confira como você entra. Se o seu acesso é por chave e algo falhar na autenticação, o guia Permission denied publickey: como resolver no SSH ajuda a achar o motivo.

Neste guia, o firewall considerado é o ufw. Se você usa outro, o princípio é o mesmo: a porta nova precisa estar liberada antes de o servidor passar a atendê-la.

Passo a passo

Passo 1: liberar a porta nova no ufw

O manual do ufw usa o formato porta/protocolo nas regras. Libere a porta nova e confira a lista:

sudo ufw allow 2222/tcp

sudo ufw status

Faça isso antes de mexer no SSH. Se o servidor passar a escutar numa porta que o firewall bloqueia, a conexão não chega. Mantenha a regra da porta 22 por enquanto. Ela só sai no último passo.

O manual do ufw também avisa que ligar o ufw pode derrubar conexões existentes, como a do SSH. Por isso, se o seu ufw ainda está desligado, libere o SSH antes de ligá-lo, e não ligue o ufw durante esta troca sem necessidade.

Passo 2: escrever a nova porta num arquivo próprio

Crie o arquivo na pasta sshd_config.d:

sudo nano /etc/ssh/sshd_config.d/porta.conf

Escreva as duas linhas abaixo. A 22 fica só durante a transição:

Port 22

Port 2222

Salve e saia do nano com Ctrl+O, Enter e Ctrl+X.

Passo 3: testar a configuração

A documentação do Ubuntu manda conferir a configuração depois de mudar e antes de reiniciar. O comando abaixo, segundo o manual do sshd, só verifica se o arquivo de configuração é válido e se as chaves estão em ordem:

sudo sshd -t

Se aparecer erro, corrija o arquivo antes de seguir. Para ver a configuração que está valendo de fato, use sudo sshd -T | grep -i port.

Rode o sshd -t antes de aplicar a mudança e mantenha a sessão atual aberta. Rodar o teste antes de aplicar evita descobrir o erro só na conexão que você precisa para consertá-lo.

Passo 4: aplicar a mudança

Aqui o caminho depende de como o seu Ubuntu inicia o SSH.

No Ubuntu 24.04, o SSH usa ativação por socket: o sshd só sobe quando chega uma conexão, e quem escuta a porta é o ssh.socket do systemd. Nesse modo, a porta é lida do sshd_config por um gerador do systemd. O pacote do Ubuntu traz um comentário no sshd_config padrão explicando que, com a ativação por socket, a configuração do socket precisa ser gerada de novo depois de mudar Port, AddressFamily ou ListenAddress. Os comandos são estes:

sudo systemctl daemon-reload

sudo systemctl restart ssh.socket

Atenção: a página de OpenSSH da documentação do Ubuntu ainda cita sudo systemctl restart ssh.service para aplicar mudanças, sem falar do socket. No 24.04, siga os dois comandos acima.

Se a sua versão não usa o ssh.socket, como o Ubuntu 22.04, reinicie o servidor SSH depois de editar a configuração. O wiki do Debian traz este comando:

sudo service ssh restart

Mantenha a sessão antiga aberta mesmo assim, como reserva.

Passo 5: conferir se a porta está escutando

sudo ss -tlnp

Segundo o manual do ss, -t mostra conexões TCP, -l só as que estão escutando, -n números em vez de nomes e -p o programa. Procure as portas 22 e 2222 na lista.

Passo 6: testar numa segunda sessão

Abra um segundo terminal no seu computador, sem fechar o primeiro, e conecte na porta nova:

ssh -p 2222 usuario@203.0.113.10

O manual do ssh descreve o -p como a porta a conectar no servidor remoto. Se o login funcionar, a porta nova está liberada no firewall e atendida pelo servidor. Se não funcionar, a sessão antiga continua aberta para você corrigir.

Fechar a porta 22

Só faça este trecho depois de o teste do passo 6 funcionar. Volte ao arquivo e deixe apenas a porta nova:

sudo nano /etc/ssh/sshd_config.d/porta.conf

O conteúdo final fica assim:

Port 2222

Repita o teste da configuração e aplique de novo, com o caminho do passo 4 que vale para o seu Ubuntu:

sudo sshd -t

sudo systemctl daemon-reload

sudo systemctl restart ssh.socket

Na versão sem socket, troque as duas últimas linhas por sudo service ssh restart. Rode sudo ss -tlnp de novo e confirme que a 22 saiu da lista. Abra mais uma sessão com ssh -p 2222 para ter certeza de que o acesso segue funcionando. Só então remova a regra da porta 22 do firewall:

sudo ufw delete allow 22/tcp

sudo ufw status

O comando funciona se a regra foi criada nesse formato. Se o ufw status mostrar a regra da 22 com outro nome, apague a que ele mostra.

Conectar depois da mudança

Com a porta nova, o comando de conexão precisa dela:

ssh -p 2222 usuario@servidor.exemplo.com.br

Para não digitar o -p a cada vez, grave a porta no arquivo ~/.ssh/config, no seu computador. Segundo o manual do ssh_config, a opção Port define a porta a conectar no servidor remoto, e o padrão é 22:

Host minha-vps

HostName servidor.exemplo.com.br

User usuario

Port 2222

Depois, a conexão fica mais curta:

ssh minha-vps

Precisa de um servidor para os seus projetos? VPS a partir de R$ 17,00/mês no Plano Bronze; confira na loja o que cada plano inclui. Ver planos de VPS

Problemas comuns

  • Connection refused na porta nova: confira com sudo ss -tlnp se a 2222 aparece na lista. No Ubuntu 24.04, volte ao passo 4 e veja se rodou o daemon-reload e o restart do ssh.socket. O guia ERR_CONNECTION_REFUSED: o que é e como resolver trata do erro de conexão recusada visto no navegador, como referência do que o termo significa.
  • Conexão que não responde (timed out): veja se a regra 2222/tcp aparece no sudo ufw status. O guia ERR_CONNECTION_TIMED_OUT: o que é e como resolver trata do erro de tempo esgotado visto no navegador, como referência do que o termo significa.
  • Erro no sshd -t: leia a mensagem de erro e confira a linha que você escreveu no porta.conf.
  • A porta 22 continua respondendo: veja se existe outra linha Port em outro arquivo de sshd_config.d ou no arquivo principal. Como a diretiva aceita várias linhas, cada uma abre uma porta. Para ver o que está valendo, rode sudo sshd -T | grep -i port.
  • Perdi o acesso: se a sessão antiga ainda está aberta, use-a para desfazer a mudança no porta.conf e aplicar de novo. Sem nenhuma sessão aberta, será preciso outro caminho de acesso ao servidor, e por isso o guia pede para manter a sessão até o fim.

Checklist antes de fechar a porta 22

  • A regra 2222/tcp está no firewall.
  • O porta.conf tem as portas 22 e 2222 e o sshd -t não mostrou erro.
  • Rodei o daemon-reload e o restart do ssh.socket (ou o restart do serviço, na versão sem socket).
  • O ss -tlnp mostra a 2222 escutando.
  • Entrei com ssh -p 2222 numa segunda sessão e o login funcionou.
  • A sessão antiga continua aberta até o último teste.
  • Atualizei o ~/.ssh/config com a porta nova.

Quer manter o seu servidor em uma VPS própria? VPS a partir de R$ 17,00/mês no Plano Bronze; confira na loja o que cada plano inclui. Conhecer os planos

Perguntas frequentes

Qual é a porta padrão do SSH?

É a 22. Segundo o manual do sshd_config, a opção Port define a porta e o padrão é 22.

Mudar a porta do SSH deixa a VPS segura?

Não por si só. A mudança não substitui a chave SSH nem uma senha forte. Use como complemento das outras proteções do servidor.

Posso usar duas portas ao mesmo tempo?

Sim. A diretiva Port aceita várias linhas, e o servidor escuta em todas. Isso permite manter a 22 enquanto você confirma que a nova funciona.

Por que reiniciar o ssh não aplicou a porta no Ubuntu 24.04?

Porque nesse Ubuntu quem escuta a porta é o ssh.socket, e a configuração dele precisa ser gerada de novo com sudo systemctl daemon-reload e sudo systemctl restart ssh.socket.

Preciso mudar o firewall?

Sim, se houver firewall. Libere a porta nova antes de aplicar a mudança e remova a regra da 22 só depois de confirmar o acesso.

Esta resposta lhe foi útil?

Artigos Relacionados