O que significa se o SSH travar após o `Connection Established`?


5

Eu uso uma Google Cloud VM e, de vez em quando, volto ao meu terminal e vejo minha sessão ssh congelada. Quando tento reconectar

ssh -v  -i ~/.ssh/key  user@host.domain

Isso mostra o seguinte:

OpenSSH_7.4p1, LibreSSL 2.5.0
debug1: Reading configuration data /Users/UserName/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 53: Applying options for *
debug1: Connecting to host.domain [123.456.123.456] port 22.
debug1: Connection established.
debug1: identity file /Users/UserName/.ssh/ke> type 1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/UserName/.ssh/key-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.4

Parece que uma conexão foi estabelecida, mas nada mais acontece e preciso reiniciar a VM. O que isto significa?

Devo observar que posso pinghospedar sem problemas, por isso não está congelado nem nada.


Tente aumentar os níveis detalhados, ou seja, -vv ou até -vvv, talvez isso possa nos dar mais detalhes para ajudar.
hyph 9/11/18

Eu também usei vvv, mas não obtive mais saída. Deixei o servidor por algumas horas e agora posso me conectar novamente. Vou ver se posso obter mais informações na próxima vez que isso acontecer.
oarfish

Respostas:


5
debug1: Local version string SSH-2.0-OpenSSH_7.4

Quando um cliente se conecta a um servidor SSH, o servidor inicia o protocolo SSH enviando uma string de versão do servidor em texto sem formatação para o cliente. Com o sshutilitário OpenSSH , as linhas de depuração relevantes ficam assim:

debug1: Local version string SSH-2.0-OpenSSH_7.6
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.6

Após a linha "versão local", seu cliente está aguardando o servidor enviar sua sequência de versões para o cliente. Se a conexão travar aqui, é porque o cliente não recebeu a sequência de versões do servidor.

Em geral, existem várias coisas que podem causar isso:

  1. O cliente se conectou a algo que não é um servidor SSH. Por exemplo, um servidor HTTP não enviaria nada ao cliente, porque o protocolo HTTP espera que o cliente envie os primeiros dados.
  2. O servidor está com defeito. Por exemplo, o servidor pode estar sobrecarregado e o processo do servidor SSH não está tendo a chance de ser executado.
  3. O servidor está travado de alguma forma. Pode estar travado ao fazer uma consulta DNS no endereço IP do cliente, por exemplo.
  4. Alguns dispositivos de rede estão interferindo na conexão TCP.

No seu caso, você está se conectando à porta 22, portanto, é seguro assumir que você está se conectando a um processo do servidor SSH. Parece provável que você esteja sofrendo do # 2 (o servidor está com defeito), mas não é possível dizer exatamente o que está errado além disso. Você precisaria entrar no servidor e descobrir o que estava acontecendo no momento, o que impedia o processamento de conexões SSH.


1
Existem arquivos de log que eu deveria olhar quando obtiver acesso novamente?
oarfish
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.