# 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.

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

---
Fonte: https://help.staycloud.com/artigos/ssh-da-connection-refused-ou-connection-timed-out-na-vps-o-que-fazer
