[ubuntu-ar] [OT] Problemas con acceso ssh a travéz de Internet

Marcelo Fernandez marcelo.fidel.fernandez at gmail.com
Tue Apr 20 14:12:59 BST 2010


El día 20 de abril de 2010 06:47, Daniel Garnero
<eldanigarnero en gmail.com> escribió:
> Buenas, Lista!

Hola Daniel!

> En otro post consulté respecto de armar una VPN; bien, en virtud de las
> indicaciones recibidas me puse a trabajar, y encontré un nuevo
> problema...
>
> Tengo problemas para acceder al server desde Internet, usando ssh.
> Me explico: el server al que quiero acceder por VPN está en una LAN
> (tiene una IP privada, de la forma 192.168.x.x) y esta LAN sale a
> Internet con un router doméstico, el cual tiene una IP pública, fija.
> Bien, en el firewall del server he abierto sólo 3 puertos hacia
> Internet: 80, 53 y otro personal, para acceso ssh (llamémoslo 2345).
> Bien, en el router forwardeo esos 3 puertos desde la IP pública hacia la
> IP privada (fija) del server.
>
> Con este escenario, desde mi casa (otra LAN, conectada a Internet)
> intento acceder al server y escanear los puertos. Cuando corro nmap,
> obtengo este reporte:
>
> daniel en ubuntu:~$ nmap -PN IP_publica
>
> Not shown: 1919 filtered ports
> PORT   STATE SERVICE
> 53/tcp open  domain
> 80/tcp open  http
>
> Nmap done: 1 IP address (1 host up) scanned in 23.461 seconds
>
> ¿Y el otro puerto? Entonces fuerzo un escaneo sobre él:

Si no le especificás un rango/conjunto de puertos NMap escanea por
defecto sólo un subconjunto de los 65536 posibles (los 1000 más
frecuentes [1]). Muy probablemente el puerto 2345 no esté en los que
se escanea por defecto. El listado de puertos y su frecuencia están en
/usr/share/nmap/nmap-services.

> daniel en ubuntu:~$ nmap -PN -p2345 IP_publica
>
> PORT     STATE    SERVICE
> 2345/tcp filtered unknown
>
> Nmap done: 1 IP address (1 host up) scanned in 2.053 seconds
>
> Parece que responde al escaneo, pero nmap lo reporta "filtrado"; sin
> embargo, está tan "filtrado" como los otros 2, que los reporta
> "abiertos"...

Ok, que nmap reporte un puerto filtrado quiere decir que no recibió
respuesta del otro lado (si lo hiciste con esos parámetros intenta
hacer un SYN/SYN+ACK/ACK estándar). Dado que el puerto en cuestión lo
estás forwardeando hacia tu server, el problema podría estar en
paquetes perdidos, el router que no forwardea bien (funciona mal), el
server que no está escuchando (el puerto no está abierto), algún
firewall en el server o alguna política en el router (forwardea los
puertos que conoce menos el 2345)...

>
> Más datos. Tema puerto 80: apunto Firefox a la IP pública (aún no
> terminé el asunto de los DNS...) y puedo cargar correctamente la webpage
> que Apache está sirviendo en el puerto 80 del servidor, lo cual me
> confirma que el portforward en el router funciona y que el firewall del
> server efectivamente "deja pasar" las conexiones al puerto 80.
> Aclaremos: tanto en el firewall como en el router, el tratamiento que
> les dí a los 3 puertos es el mismo.
>
> Bien, con este éxito parcial, probé ssh desde esta PC, así:
>
> daniel en ubuntu:~$ ssh -p 2345 user en IP_publica
>
> y obtengo 3 tipos de resultados:
>
> * Nunca aparece el promp, pidiendo la clave de user en el server;
> cancelo el comando con Ctrl + C
>
> * El server me pide la clave, la coloco (de manera correcta!) y me
> responde:
> Connection closed by IP_publica
>
> * Me pide la clave, la coloco, me loggeo correctamente al server,
> comienzo a hacer algunas tareas sin problemas hasta que, en un tiempo
> corto (nunca mayor a 2 minutos) se pierde la conexión. Sigo viendo el
> promp de user en el server, pero ya no responden los comandos, así que,
> desde otra consola, debo matar el proceso ssh para salir de ahí
>
> ¿Cuál es el problema? O, mejor dicho: ¿dónde radica el problema con el
> servicio ssh?

Es raro. Puede haber múltiples explicaciones distintas. IMHO, podés
estar teniendo algún problema de pérdida de paquetes... pero esto es
más raro aún. Por otro lado, fijate de tener la última versión del
firmware del router. Si podés, probá poniendo el server directamente
en internet a ver qué pasa. Probá haciendo varios pings a la IP
pública, ¿llegan todos? Por último, y sólo por si tenés problemas de
DNS en el lado del servidor, agregate la línea "UseDNS No" en el
/etc/ssh/sshd_config [2]

>
[...]
>
>
> Ah! Ya me olvidaba. El servicio de Internet que tengo contratado para mi
> server también es "humilde menos", con la salvedad que allí tengo una IP
> pública fija. He hecho varios test de ancho de banda (en esa LAN) y los
> reportes coinciden altamente:
>
>        Unos 220 Kbps de bajada
>        Unos 110 Kbps de subida
>
> ¿Es posible que el mal desempeño de ssh se deba a este paupérrimo ancho
> de banda de subida?
>

Decididamente no. SSH puede trabajar con anchos de banda muy bajos,
pero no con 3 paquetes perdidos de 5. Otra cosa que lo afecta es el el
retardo, pero en este caso no parece haber problemas de ese tipo.

> En fin, esta es mi situación. Sin ssh no tengo otra opción que ir hasta
> el local en el que tengo el server y trabajar por ssh desde dentro de la
> LAN, lo cual funciona sin problemas. Pero mi idea es acceder "desde
> afuera", por eso quiero entrar por ssh y por eso quiero montar una
> VPN...
>
>
> Saludos y gracias por los aportes que puedan venir ;)
>

Vamos a ver qué pasa, es raro lo que contás...

[1] http://nmap.org/book/man-port-specification.html
[2] http://www.openssh.org/faq.html#3.3

Saludos
-- 
Marcelo F. Fernández
Buenos Aires, Argentina
Licenciado en Sistemas - CCNA

E-Mail: marcelo.fidel.fernandez en gmail.com
Blog: http://blog.marcelofernandez.info
Twitter: http://twitter.com/fidelfernandez



More information about the Ubuntu-ar mailing list