Escritorio Ubuntu 11.04: no se puede conectar al servidor openssh desde el exterior


0

Yo uso Ubuntu 11.04 como SO de escritorio. Tengo el servidor openssh instalado y puedo conectarme desde la misma computadora. Quiero usarlo para crear una conexión desde otra computadora (en la misma red local) a esta. Por alguna razón no hay respuesta. Ufw está inactivo. Aquí funciona otra computadora con la misma configuración. La computadora tiene solo una NIC.

Máquina A (Ubuntu 11.04)

  • ip: 192.168.1.22
  • Servidor SSH instalado
  • estado de ufw: inactivo
  • sshd parece vincularse a todas las interfaces
  • ping de la máquina B a esta máquina funciona
  • Intenté ssh root @ localhost, solo para ver si eso funciona, que es el caso

Resultados de Netstat Máquina A

unix 2 [ ACC ] STREAM LISTENING 13480 2275/ssh-agent /tmp/ssh-BKiZJjfU2214/agent.2214
unix 2 [ ACC ] STREAM LISTENING 13651 2195/gnome-keyring- /tmp/keyring-VvDtwo/ssh

Resultados de registro

09/02/11 10:25:26 AM    ubuntu-a    kernel  [ 5564.741977] Inbound IN=eth0 OUT= MAC=xxxx SRC=192.168.1.44 DST=192.168.1.22 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=45506 DF PROTO=TCP SPT=49089 DPT=22 WINDOW=14600 RES=0x00 SYN URGP=0

Máquina B (Ubuntu 11.04)

  • ip: 192.168.1.33
  • servidor ssh instalado
  • intentó iniciar sesión desde la máquina A, que funciona
  • intentó iniciar sesión en la máquina A, lo que resulta en un tiempo de espera de conexión

¿Que me estoy perdiendo aqui?


De B, inténtalo ping 192.168.1.22. Si no recibe una respuesta, entonces SSH probablemente no sea el problema, probablemente sea algún otro problema de red.
Stacey Richards

Agregué algunas cosas más para probar en mi respuesta.
Stacey Richards

Respuestas:


0

Ejecuta esto:

netstat -lepn | grep ssh

En los resultados, verá si el sshd se une a todas las interfaces o a todas (0.0.0.0). Si solo se vincula a la interfaz local, cambie esta configuración en / etc / sshd_config:

ListenAddress ::
ListenAddress 0.0.0.0

Si no ve líneas como esta, su sshd no se está ejecutando:

tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      0          8627        674/sshd        
tcp6       0      0 :::22                   :::*                    LISTEN      0          8629        674/sshd        

Si este es el caso, puede intentar comenzarlo con:

start ssh

Resultados de Netstat: unix 2 [ ACC ] STREAM LISTENING 13480 2275/ssh-agent /tmp/ssh-BKiZJjfU2214/agent.2214 unix 2 [ ACC ] STREAM LISTENING 13651 2195/gnome-keyring- /tmp/keyring-VvDtwo/ssh
SPRBRN

No estoy seguro de lo que significan estos resultados.
SPRBRN

Edite su pregunta, esto es ilegible. Los sockets UNIX solo funcionan en la máquina local.
Turbo J

¡La pregunta está actualizada!
SPRBRN

Verifique las líneas de netstat que publiqué: no tiene ssgd ejecutándose. Es decir. El servidor ssh no está vinculado a ningún puerto TCP / IP.
Zds

1

Ciertamente, no se cree que pueda hacer una conexión SSH desde su propia PC y no desde una PC diferente en la misma red después de instalar openssh-server (suponiendo que no haya cambiado la configuración predeterminada y que no haya magia en la parada de la red la conexión de pasar).

Lo primero que haría es verificar que SSH esté escuchando en todos los adaptadores Ethernet (y no solo en el host local). Puede hacerlo con una netstatlista de números en lugar de nombres de servicio (-n) utilizando TCP (-t) que están escuchando (-l) y pasando los resultados a la grepbúsqueda de :22cuál es el puerto en el que SSH escucha de manera predeterminada:

netstat -ntl | grep :22

Deberías obtener el siguiente resultado:

tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN 

Si no obtiene ese resultado, ese es posiblemente su primer problema. sudo server ssh restartLo primero que probaría sería comprobar que el servidor SSH haya comenzado (reiniciar con ) (pero probablemente no sea el caso para usted, ya que puede conectarse desde localhost). La segunda cosa que miraría es que la configuración del servidor SSH está en orden.

Si ese es el resultado que obtuve, netstatentonces puedo suponer que el servidor SSH está escuchando en todos los adaptadores Ethernet, lo que significaría que las conexiones desde otra PC en la misma red deberían funcionar.

Lo siguiente que miraría es la dirección IP de la PC para asegurarme de que estoy especificando la dirección IP correcta de la PC desde la que intento conectarme. ifconfigdebería darme la información que necesito.

En mi PC, ifconfigme da:

eth0      Link encap:Ethernet  HWaddr 00:26:9e:e8:cf:31  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:42 Base address:0xc000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:4239 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4239 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1341552 (1.3 MB)  TX bytes:1341552 (1.3 MB)

wlan0     Link encap:Ethernet  HWaddr c4:17:fe:3c:aa:d7  
          inet addr:192.168.1.66  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::c617:feff:fe3c:aad7/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:54149 errors:0 dropped:0 overruns:0 frame:0
          TX packets:24983 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:29122251 (29.1 MB)  TX bytes:4707094 (4.7 MB)

Esto me muestra que mi eth0no tiene una dirección IP (porque no está conectada) y que mi adaptador inalámbrico wlan0tiene la dirección IP 192.168.1.66. Esta es la dirección IP que necesito usar para conectarme desde otra PC en la misma red.

En otra PC, suponiendo que haya iniciado sesión con el mismo nombre de usuario que tengo en la PC "problemática", me conectaría desde un terminal con:

ssh 192.168.1.66

¿Aún no funciona?

Lo siguiente que debe intentar es verificar si hay algún tipo de comunicación de red entre las PC. Intentando hacer ping a la PC "problemática" desde la otra. Si no puede obtener una respuesta de ping, entonces probablemente no sea un problema de SSH sino un problema de red.

Otra cosa que podría probar ... Hace unos meses, tuve un problema al intentar imprimir en mi impresora inalámbrica desde mi computadora portátil. Resultó ser el enrutador inalámbrico que causa el problema. Después de reiniciar el enrutador, la impresión estaba en funcionamiento nuevamente. ¿Has intentado reiniciar tu enrutador?

¿Aún no tienes suerte?

Bien, ahora intentaremos sudo tcpdumpen la máquina A. Queremos volcar todos los paquetes con la dirección IP de origen 192.168.1.33 (máquina B) que ingresa en el puerto 22 eth0(suponiendo que su adaptador de red sea eth0):

sudo tcpdump -i eth0 src host 192.168.1.33 and dst port 22

Ahora en la máquina B intente:

ssh 192.168.1.22

¿ tcpdumpProduce alguna salida?

También podríamos intentar telnetdesde la máquina B para intentar conectarnos al puerto 22 en la máquina A:

telnet 192.168.1.22 22

Esto debería producir algo como:

user@machineb:~$ telnet 192.168.1.22 22
Trying 192.168.1.22...
Connected to 192.168.1.22.
Escape character is '^]'.
SSH-2.0-OpenSSH_5.8p1 Debian-1ubuntu3

¿Se pueden conectar otras computadoras a la máquina A?

¿Puede la máquina B conectarse a otras computadoras?


Gracias por su respuesta. Conectarse desde localhost fue solo para probar si algo funciona. Netstat da los mismos resultados que los suyos. Verifiqué la dirección IP y utilicé la dirección correcta cuando intenté conectarme desde la otra computadora.
SPRBRN

0

Haga un tcpdump -nvvvli ethX port 22 or icmpen Ubuntu 11.04 (reemplace ethXcon el nombre de su dispositivo de red, por ejemplo eth0). Vea si la conexión en el puerto 22 (ssh) lo alcanza y si responde correctamente (no ICMP y TCP RST).


Me devuelve lo siguiente: tcpdump: ethX: No existe tal dispositivo (SIOCGIFHWADDR: No existe tal dispositivo)
SPRBRN

Con "ethX" se refería al nombre de su dispositivo de red, sea cual sea.
David Schwartz

¿Entonces no hay un dispositivo de red? Por favor explique esto un poco más.
SPRBRN
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.