Como corrigir: conexão recusada pela porta 22 Debian / Ubuntu

How Fix Connection Refused Port 22 Debian Ubuntu



SSH fornece uma maneira segura de acessar e gerenciar servidores Linux. Às vezes, ao se conectar a servidores SSH, os usuários costumam encontrar um erro de conexão recusada na porta 22. Isso acontece por vários motivos, como o serviço SSH não estar em execução, a porta está bloqueada pelo firewall ou o servidor está usando uma porta diferente. Também pode ocorrer devido ao problema de conflito de IP. Neste artigo, discutiremos algumas das soluções que você deve tentar para corrigir o erro.

Observação: Os comandos discutidos aqui foram testados no Ubuntu 20.04 LTS. Os mesmos comandos também são válidos para o sistema Debian.







Corrigir erro de conexão recusada

Este é o erro de conexão recusada que você pode encontrar ao se conectar a um sistema remoto por SSH.





Siga as soluções abaixo passo a passo para resolver o erro de conexão recusada.





Certifique-se de que o OpenSSH esteja instalado

Um dos motivos pelos quais você pode receber um erro de Conexão recusada é porque o servidor OpenSSH não está instalado no servidor de destino.

Primeiro, você precisa ter certeza de que o servidor OpenSSH está instalado no sistema que você está tentando acessar via SSH. Para verificar se o OpenSSH está instalado ou não, emita o seguinte comando no Terminal do servidor de destino:



$sudolista de apt--instalado | pegadaservidor openssh

Este comando basicamente filtra o termo openssh-server da lista de pacotes instalados. Se você receber a seguinte saída semelhante, isso indica que o servidor OpenSSH está instalado. Por outro lado, se você não receber nenhuma saída, significa que o OpenSSH está ausente no servidor de destino.

Caso não esteja instalado no servidor de destino, você pode instalá-lo usando o seguinte comando como sudo:

$sudoaptoinstalarservidor openssh

Em seguida, digite a senha sudo e, quando for solicitada a confirmação, pressione ‘y’. Depois de instalado, confirme usando o mesmo comando

$sudolista de apt--instalado | pegadaservidor openssh

Verifique o serviço SSH

O serviço OpenSSH é executado em segundo plano e escuta as conexões de entrada. O serviço OpenSSH interrompido pode ser um dos motivos pelos quais você está recebendo um erro de conexão recusada.

Portanto, é necessário verificar se o serviço OpenSSH está rodando ou não utilizando o seguinte comando no Terminal:

$sudoserviçosshstatus

Se você vir a seguinte saída, significa que o serviço está ativo e em execução em segundo plano.

Por outro lado, se você receber inativo (morto), isso significa que o serviço não está funcionando . Você pode executar o serviço OpenSSH usando o seguinte comando como sudo no Terminal:

$sudoserviçosshcomeçar

Para reiniciar o serviço, use o seguinte comando:

$sudoserviçosshreiniciar

Verifique a porta de escuta do servidor SSH

Outro motivo para receber um erro de conexão recusada é porque você está tentando se conectar à porta errada. Por exemplo, se o servidor estiver configurado para escutar na porta 2244 e você estiver tentando se conectar à sua porta padrão 22, então, neste caso, você receberá um erro de conexão recusada.

Antes de tentar se conectar, você precisa verificar a porta de escuta do servidor SSH. Se for a porta padrão (22), você pode conectá-la usando o seguinte comando:

$ssh [nome do usuário]@[IP do servidor remoto ounome de anfitrião]

Se for alguma porta diferente da porta padrão, você precisará se conectar ao servidor SSH usando esta porta:

$ssh -p [número da porta] [nome do usuário]@[endereço de IP]

Para verificar em qual porta o servidor OpenSSH está escutando; use o seguinte comando no Terminal:

$sudo netstat -ltnp | pegadasshd

Você receberá uma saída semelhante a esta:

Na terceira coluna, você pode ver que a porta de escuta do servidor é 2244. Se for esse o caso, você precisará se conectar ao servidor SSH usando esta porta.

$ssh -p [2244] [nome do usuário]@[endereço de IP]

Permitir SSH no firewall

O firewall que bloqueia a porta SSH pode ser outro motivo importante para o erro de conexão recusada. Se um firewall estiver sendo executado no servidor SSH, você precisará permitir a porta SSH nele usando o seguinte comando. Substitua o porta pelo número da porta que o servidor SSH está escutando:

$sudoufw permitir porta/tcp

Por exemplo, se o servidor SSH estiver escutando a porta 2244, você pode permitir isso no firewall como:

$sudoufw permitir2244/tcp

Recarregue o firewall usando o seguinte comando:

$sudoufw recarregar

Para confirmar se as regras foram adicionadas, verifique o status do firewall usando o seguinte comando no Terminal:

$sudoufw status

A saída a seguir mostra que a porta 2244 é permitida no firewall.

Resolver conflito de endereço IP duplicado

O erro de conexão recusada também pode ocorrer devido a um conflito de endereço IP duplicado. Portanto, certifique-se de que o sistema não tenha um endereço IP duplicado.

Instale o utilitário arping em seu sistema usando o seguinte comando:

$sudoaptoinstalararquear

Em seguida, execute ping no endereço IP do servidor SSH.

$ping <endereço de IP>

Na saída, se você vir a resposta de mais de um endereço MAC, isso mostra que há um IP duplicado em execução no sistema. Nesse caso, altere o endereço IP do servidor SSH e tente se conectar novamente com o novo endereço IP.

Veja como corrigir o erro de conexão recusada pela porta 22 em sistemas Linux. Neste artigo, descrevemos algumas maneiras que certamente o ajudarão a resolver o erro de conexão recusada.