Qué puede causar el error de inicio de sesión SSH: ssh_exchange_identification: conexión cerrada por host remoto

3

Pensé que ssh_exchange_identification: Connection closed by remote hostes causado por /etc/hosts.allowy / o /etc/hosts.deny, pero la única entrada de permitir es ALL:ALLy negar está vacío.

En mi Google Cloud VM he agregado:

  1. ALL:ALLa \etc\hosts.allowy \etc\hosts.denyestá vacía

  2. Una configuración de regla de firewall para Google Cloud VM para permitir tcp: 2222

  3. GatewayPorts clientspecified a /etc/ssh/sshd_config

Desde el destino (la computadora a la que quiero acceder) a mi Google Cloud VM :

ssh -R 0.0.0.0:2222:localhost:22 -i google_compute_engine -o UserKnownHostsFile=/dev/null -o CheckHostIP=no -o StrictHostKeyChecking=no <username>@<google vm ip>

Después de eso Netstat -plant 2222produce:

tcp        0      0 0.0.0.0:2222            0.0.0.0:*               LISTEN      2700/0

Dentro de Google Cloud VM :

ssh -p 2222 -i google_compute_engine localhost -v

OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to localhost [127.0.0.1] port 2222.
debug1: Connection established.
debug1: identity file google_compute_engine type -1
debug1: identity file google_compute_engine-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.3
ssh_exchange_identification: Connection closed by remote host

Si elimino -p 2222, el sshcomando se conecta localmente.

shaun5
fuente
Tenga en cuenta que puede ver este comportamiento exacto en muchas circunstancias. Apagué sshd en la máquina de destino y aún recibí el mismo error. Verifique los registros de su firewall y verifique que la solicitud llegue a la máquina de destino.
JosephK