SSH não conecta - A operação expirou

3

Desde hoje de manhã recebo a seguinte mensagem de erro ao tentar conectar-me à minha máquina remota Ubuntu 14.04 LTS via ssh de um MacBook Air Yosemite 10.10.1 .

ssh_exchange_identification: read: Operation timed out

Ao usar o sinal -vvv , a seguinte mensagem detalhada aparece

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 102: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to XXX.XXX.XXX.XXX [XXX.XXX.XXX.XXX] port 22.
debug1: Connection established.
debug1: identity file /Users/felix/.ssh/id_rsa type -1
debug1: identity file /Users/felix/.ssh/id_rsa-cert type -1
debug1: identity file /Users/felix/.ssh/id_dsa type -1
debug1: identity file /Users/felix/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
ssh_exchange_identification: read: Operation timed out

Por muitos meses esta conexão funcionou perfeitamente bem. Eu nunca experimentei nenhum problema. Outras soluções, como encontradas aqui e here não ajudou.

Alguma sugestão sobre como corrigir esse problema?

    
por fsimkovic 22.01.2015 / 13:45

1 resposta

2
debug1: Local version string SSH-2.0-OpenSSH_6.2
ssh_exchange_identification: read: Operation timed out

De acordo com o seu rastreio de depuração, você está conseguindo se conectar ao servidor SSH remoto e o servidor não está perdendo a conexão, mas o servidor não está enviando sua cadeia de identificação de software. Esta é a primeira coisa feita pelo cliente e servidor, e é feita em texto claro.

Acho que o problema vai se resumir a uma de três coisas:

  1. Alguns dispositivos de rede entre você e o servidor estão interferindo na conexão. Por exemplo, se o host remoto estiver atrás de um roteador NAT, o encaminhamento de porta para a porta 22 pode ser configurado incorretamente e você está se conectando ao serviço errado.

  2. O programa do servidor SSH no host remoto pode estar interrompido ou com mau funcionamento. Eu vi esse tipo de coisa acontecer por exemplo quando o host está sobrecarregado ou com pouca memória virtual. Ou o servidor pode estar usando algo como TCP wrappers , e ele está fazendo uma consulta DNS no IP do cliente que está demorando tempo para resolver.

  3. O host remoto é configurado de maneira incomum e o serviço executado na porta 22 não é um servidor SSH.

Se você conseguir acessar o servidor, concentre sua solução de problemas nele. Encontre os logs para o servidor ssh - eles devem estar em /var/log e ver se ele registrou alguma coisa sobre essas tentativas de conexão com falha. Tente executar ssh para localhost do servidor e ver se isso funciona corretamente.

Se você tiver acesso raiz ao servidor, poderá tentar iniciar uma instância de depuração de sshd para ver o que ele registra quando seu cliente se conecta. Pare o servidor sshd normal e, em uma janela do terminal raiz, execute /path/to/sshd -d . Isso executará uma cópia do sshd que aceitará uma conexão e imprimirá informações de depuração na janela do terminal. Veja se você consegue reproduzir o problema e, em seguida, examine o que o servidor registrou.

Se você não puder colocar o servidor ssh normal off-line, será possível executar o sshd em outra porta: /path/to/sshd -p 42 -d executará uma cópia do sshd na porta 42. Especifique o mesmo número de porta ao executar o cliente ssh: ssh -p 42 user@host . Se seus problemas forem causados por um dispositivo de rede interferente, isso pode se comportar de maneira diferente das conexões com a porta 22.

    
por 24.01.2015 / 16:38