Ir para o conteúdo
Ajuda

SSH dá "Connection refused" ou "Connection timed out" na VPS: o que fazer

Connection timed out costuma ser a VPS desligada, o IP errado ou um firewall descartando a porta 22. Connection refused quer dizer que a VPS respondeu, mas nada atende na porta: serviço SSH parado, porta trocada ou bloqueio do fail2ban. Comece pelo painel e investigue pelo Console SSH.

Problema6 min de leitura

Quando o SSH não conecta, as causas mais comuns são, nesta ordem: a VPS está desligada ou reiniciando, o IP está errado, a porta 22 está fechada no firewall do painel ou no UFW, o serviço SSH parou, a porta do SSH foi trocada ou o fail2ban bloqueou o seu IP. A mensagem já dá uma pista: Connection timed out costuma ser VPS desligada, IP errado ou firewall descartando a conexão; Connection refused quer dizer que a VPS respondeu, mas nada atende naquela porta. Comece pelo painel e, para olhar por dentro, entre pelo Console SSH, que não depende da rede da VPS.

Atenção: segurança da sua VPS. Os comandos no SSH mexem direto no servidor e são executados por sua conta e risco. Confira cada comando antes de rodar e, se puder, crie um snapshot da VPS antes de começar.

Sintomas

  • O terminal mostra ssh: connect to host <IP_DA_VPS> port 22: Connection refused logo depois do comando.
  • O terminal fica parado e termina em ssh: connect to host <IP_DA_VPS> port 22: Connection timed out (no Mac, Operation timed out).
  • No PuTTY ou em outro programa, aparece Network error: Connection refused ou Network error: Connection timed out.
  • O acesso funcionava e parou depois de mexer no firewall, de reiniciar a VPS ou de mudar a configuração do SSH.

Os comandos de dentro da VPS deste artigo valem para o Ubuntu e o Debian, os sistemas das VPS da StayCloud, e supõem que você entrou como root pelo Console SSH do painel (veja "Como acessar sua VPS pelo Console SSH do painel").

Causa 1: a VPS está desligada ou reiniciando

Como confirmar: no painel, abra VPS › Minhas VPS, clique em Gerenciar na VPS e veja o selo no topo da página. Se ele não mostra Em execução, a VPS não responde ao SSH e o terminal dá Connection timed out.

Como resolver: se a VPS está reiniciando, espere cerca de 30 segundos e tente de novo. Se está desligada ou travada, use o quadro Controle de estado da mesma página. O passo a passo está em "Como reiniciar sua VPS pelo painel".

Causa 2: o IP está errado

Como confirmar: compare o IP que você usou no comando com o que aparece em Minhas VPS › sua VPS › Sistema › Acesso SSH. Erros comuns: usar o IP de uma VPS antiga ou conectar pelo domínio, que pode apontar para outro servidor.

Como resolver: copie o comando SSH pronto do quadro Acesso SSH e cole no terminal. Para ver todos os IPs da VPS, veja "Como ver os IPs e a rede da VPS pelo painel".

Causa 3: a porta 22 está fechada no firewall do painel ou no UFW

Como confirmar: teste a porta a partir do seu computador. No Linux e no Mac:

nc -vz <IP_DA_VPS> 22

No Windows, no PowerShell:

Test-NetConnection <IP_DA_VPS> -Port 22

Se o teste falha (Connection refused, timed out ou TcpTestSucceeded : False) com a VPS Em execução, confira as duas camadas de firewall:

  • No painel, na aba Firewall da VPS (Minhas VPS › Gerenciar › Firewall), procure uma regra Drop ou Reject na porta 22 que pegue o seu IP. Drop costuma dar Connection timed out; Reject, Connection refused.
  • Dentro da VPS, pelo Console SSH, veja as regras do UFW (Uncomplicated Firewall):
ufw status verbose

Se o UFW está active e a porta 22 não aparece com ALLOW IN, ele está bloqueando.

Como resolver: no painel, apague ou corrija a regra que bloqueia a porta 22, como em "Como criar uma regra de firewall na sua VPS pelo painel". No UFW, libere a porta pelo Console SSH:

ufw allow 22/tcp

O passo a passo do UFW está em "Como liberar portas com o firewall UFW na VPS via SSH".

Causa 4: o serviço SSH parou

Como confirmar: pelo Console SSH, veja o estado do serviço (no Ubuntu e no Debian ele se chama ssh):

systemctl status ssh

A linha Active: mostra inactive (dead) ou failed quando o serviço está parado. No Ubuntu 24.04, o SSH pode ser ligado sob demanda pelo ssh.socket: se o ssh aparece inativo com TriggeredBy: ssh.socket, confira também systemctl status ssh.socket.

Como resolver: teste a configuração e reinicie o serviço:

sshd -t
systemctl restart ssh
systemctl enable ssh

O sshd -t não mostra nada quando a configuração está certa. Se ele apontar um erro, corrija a linha indicada em /etc/ssh/sshd_config antes de reiniciar. Os logs do serviço saem com journalctl -u ssh -n 50. Veja mais em "Como ver e gerenciar serviços na VPS via SSH".

Causa 5: a porta do SSH foi trocada

Como confirmar: pelo Console SSH, veja em que porta o SSH está ouvindo:

ss -tlnp | grep ssh

O resultado mostra o endereço e a porta, como 0.0.0.0:2222. Se a porta não é 22, o comando sem -p dá Connection refused.

Como resolver: conecte informando a porta e confira se ela está liberada no firewall do painel e no UFW:

ssh -p <PORTA> root@<IP_DA_VPS>

Causa 6: o fail2ban bloqueou o seu IP

O fail2ban é um programa que bloqueia por um tempo o IP que erra a senha várias vezes. Essa causa só vale se você instalou o fail2ban na VPS.

Como confirmar: o SSH funciona de outra rede (por exemplo, o 4G do celular), mas não da sua. Pelo Console SSH, veja a lista de IPs bloqueados:

fail2ban-client status sshd

Se o seu IP aparece em Banned IP list, é o bloqueio. Para saber o seu IP, pesquise "qual é o meu IP" no navegador do seu computador.

Como resolver: desbloqueie o seu IP e, antes de tentar de novo, confira a senha ou a chave, para não ser bloqueado outra vez:

fail2ban-client set sshd unbanip <SEU_IP>

Quando chamar o Suporte

Na VPS, você tem acesso root e cuida do que instala; o suporte da StayCloud cuida da infraestrutura: a VPS ligada, a rede e o painel. Veja "Perguntas frequentes sobre o que o suporte da StayCloud faz". Abra um chamado se a VPS não volta para Em execução, se o Console SSH do painel também não abre, ou se, com a porta 22 liberada nas duas camadas e o serviço SSH rodando, a conexão continua falhando de qualquer rede.

No chamado, informe o IP da VPS ou o nome dela no painel, o horário do problema, a mensagem de erro literal, o resultado do nc ou do Test-NetConnection e o que você já tentou. O passo a passo está em "Como abrir um chamado no Suporte".

Relacionados

  • Como acessar sua VPS por SSH pelo terminal (Linux, Windows e Mac)
  • Como acessar sua VPS pelo Console SSH do painel
  • Como reiniciar sua VPS pelo painel
  • Como ver os IPs e a rede da VPS pelo painel
  • Como criar uma regra de firewall na sua VPS pelo painel
  • Como liberar portas com o firewall UFW na VPS via SSH
  • Como ver e gerenciar serviços na VPS via SSH
  • Perguntas frequentes sobre o que o suporte da StayCloud faz
  • Como abrir um chamado no Suporte
Este artigo ajudou?

Viu algo errado ou desatualizado?