Con Ubuntu 12.04, configuré el servidor OpenSSH. Puedo conectarme desde LAN, pero no desde afuera. Estoy usando el mismo sshd_config
archivo que en mis otras máquinas Ubuntu 12.04 (que se encuentran en una LAN diferente).
$ ssh 192.168.0.2
funciona bien, pero
$ ssh 65.76.97.222
(dirección IP compuesta) no funciona. No pasa nada. No hay ningún mensaje de error ni nada. El aviso simplemente se queda allí.
Gracias a los comentarios a continuación, he logrado verificar a través de los sitios web canyouseeme.org y ShieldsUP que el puerto 22 está abierto.
Usando la opción -vvv
, obtengo lo siguiente:
$ ssh -vvv 65.76.97.222
OpenSSH_5.9p1 Debian-5ubuntu1.4, OpenSSL 1.0.1 14 Mar 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 65.76.97.222 [65.76.97.222] port 22.
debug1: Connection established.
debug1: identity file /home/myname/.ssh/id_rsa type -1
debug1: identity file /home/myname/.ssh/id_rsa-cert type -1
debug1: identity file /home/myname/.ssh/id_dsa type -1
debug1: identity file /home/myname/.ssh/id_dsa-cert type -1
debug1: identity file /home/myname/.ssh/id_ecdsa type -1
debug1: identity file /home/myname/.ssh/id_ecdsa-cert type -1
Y luego el aviso simplemente se queda allí.
Más información de depuración de var/log/auth.log
:
$ grep sshd /var/log/auth.log
[cutting old lines...]
Jul 6 10:23:05 mymachine sshd[7871]: Did not receive identification string from 65.76.97.222
Estoy permitiendo que cualquier usuario se conecte, en particular mi propio nombre de usuario. Lo que me confunde es que no he tenido este problema en ninguna otra máquina, aunque están en un LAN diferente. Este lan tiene solo una computadora conectada. ¿Alguna idea de cómo proceder desde aquí?
-v
,-vv
, a-vvv
) para obtener información adicional con referencia a: la conexión. por ejemplo,ssh -vvv -p 51555 65.76.97.222
.Respuestas:
Un par de cosas para que revises.
Comprueba
/etc/ssh/sshd_config
y asegúrate de no tenerAllowUsers
entradas divertidas .Especifique el usuario al que desea conectarse como:
Verifique su firewall (
iptables
):fuente
Verifique que su puerta de enlace en el servidor SSH esté configurada para el enrutador que realiza el reenvío de puertos.
route -n
La ruta predeterminada debe apuntar a ese enrutador, de lo contrario, podrá iniciar conexiones a través de él, ¡pero los ACK no irán a ninguna parte!
fuente
Necesito verificar que el reenvío de puertos funciona correctamente, generalmente lo hago yendo a https://www.grc.com/shieldsup > Continuar> ponga su número de puerto en el cuadro y haga clic en la sonda de puerto personalizada especificada por el usuario. Eso debería decirle si ese puerto TCP de hecho está abierto al público
fuente
grep sshd /var/log/auth.log
auth.log
:Jul 6 10:23:05 mymachine sshd[7871]: Did not receive identification string from 65.76.97.222
¿Estás declarando un usuario?
ssh [email protected] -p51555
Si le dio al código la forma en que lo está utilizando, creo que será el nombre de usuario actual predeterminado.
Además, debe tener un usuario en el sistema TARGET con permiso. en el ejemplo anterior "Jimmy"
fuente
sshd_config
conecto con el mismo usuario todo el tiempo y, además, permite que cualquier usuario se conecte.