O problema parece um bug do lado do servidor. Quando o cliente envia a lista de cifras, o servidor openssh provavelmente espera poder ler a lista em uma única chamada do sistema.
Se a lista de cifras suportadas for maior do que a transmitida em um pacote, o servidor poderá receber menos bytes na primeira chamada do que o esperado. O comportamento correto no servidor seria executar outra chamada para obter o restante dos bytes. Porém, a partir da descrição do problema, o servidor fecha a conexão quando não obtém a lista completa de cifras de uma só vez. Quando o próximo pacote do cliente chegar, o servidor enviará uma redefinição de conexão ao cliente.
Configurar o cliente para usar uma lista mais curta de cifras funcionaria para solucionar o problema. O cliente openssh procurará a lista de cifras nos seguintes locais:
- Na linha de comandos, usando -c cipher_spec ou -o Ciphers = cipher_spec
- Em ~ / .ssh / config, especificando Ciphers cipher_spec na seção do host relevante ou antes do primeiro host.
- Em / etc / ssh / ssh_config usando o mesmo formato que ~ / .ssh / config
- Uma lista padrão incorporada ao cliente no momento da compilação.
Os dois arquivos de configuração são respectivamente configurações por usuário e em todo o sistema. Usar Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
como Eric sugeriu deve funcionar bem.
telnet ip.or.name.of.offending.server 22
?