Solución 1:
El problema suena como un error del lado del servidor. Cuando el cliente envía la lista de cifrados, el servidor openssh probablemente espera poder leer la lista en una sola llamada al sistema.
Si la lista de cifrados admitidos es más larga de lo que se puede transmitir en un paquete, es posible que el servidor obtenga menos bytes en la primera llamada de lo que esperaba. El comportamiento correcto en el servidor sería realizar otra llamada para obtener el resto de los bytes. Pero a partir de la descripción del problema que aparece, el servidor cierra la conexión cuando no obtuvo la lista completa de cifrados a la vez. Cuando llegue el siguiente paquete del cliente, el servidor enviará un restablecimiento de conexión al cliente.
Configurar el cliente para usar una lista más corta de cifrados solucionaría el error. El cliente de openssh buscará la lista de cifrados en los siguientes lugares:
- En la línea de comandos usando -c cipher_spec o -o Ciphers=cipher_spec
- En ~/.ssh/config especificando Ciphers cipher_spec en la sección de host relevante o antes del primer host.
- En /etc/ssh/ssh_config usando el mismo formato que ~/.ssh/config
- Una lista predeterminada integrada en el cliente en tiempo de compilación.
Los dos archivos de configuración son, respectivamente, configuraciones por usuario y para todo el sistema. Usando Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
como sugirió Eric debería funcionar bien.
Solución 2:
Puede especificar el cifrado en el archivo de configuración ssh (/etc/ssh/ssh_config o similar, depende de $PREFIX, etc.). Cualquier opción que pase al cliente ssh en la línea de comando se puede configurar en el archivo de configuración ssh (cliente).
Aquí está la línea relevante (simplemente elimine el comentario):
# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
Solución 3:
Mi forma de solucionarlo, espero que ayude a alguien:
# Recreate host keys
sudo rm /etc/ssh/ssh_host_*
sudo ssh-keygen -A
# Re-install SSh
sudo apt-get --reinstall install openssh-server openssh-client
Edite sshd_config agregando un valor
add : MaxAuthTries 3
Edite ssh_config descomentando un valor
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc