Estoy buscando una manera de depurar/diagnosticar la LAN en mi trabajo, que consta de varias subredes.
Más específicamente, estoy tratando de encontrar algunas buenas herramientas (Windows/Linux) que puedan brindarme información sobre qué puertos están abiertos o a qué máquinas/redes se puede acceder desde una máquina determinada.
Actualmente he instalado un servidor FTP FileZilla en una máquina virtual con Windows 7 alojada en vSphere. He verificado que el servidor ftp se ejecuta como un servicio y está configurado con un solo usuario admin
que tiene una única carpeta compartida c:\test
. Pero cuando intento conectarme desde mi computadora portátil, el registro del servidor muestra:
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> PWD
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> 257 "/" is current directory.
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> TYPE I
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> 200 Type set to I
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> PASV
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> 227 Entering Passive Mode (172,22,80,8,192,35)
(000012)18-12-2013 15:46:28 - admin (172.22.74.144)> MLSD
(000012)18-12-2013 15:46:39 - admin (172.22.74.144)> 425 Can't open data connection.
(000012)18-12-2013 15:48:39 - admin (172.22.74.144)> 421 Connection timed out.
(000012)18-12-2013 15:48:39 - admin (172.22.74.144)> disconnected.
Intenté leer esta guía pero no veo lo que se necesita: https://wiki.filezilla-project.org/Network_Configuration
Y aquí dice:
https://forum.filezilla-project.org/viewtopic.php?f=6&t=24925
ese ftp usaba tcp, entonces ¿necesito reenviar algunos puertos?
En el servidor de Windows he intentado ejecutarnetstat -an
lo que da:
TCP [::]:21 [::]:0 LISTENING
TCP [::]:135 [::]:0 LISTENING
TCP [::]:445 [::]:0 LISTENING
TCP [::]:3389 [::]:0 LISTENING
TCP [::]:49152 [::]:0 LISTENING
TCP [::]:49153 [::]:0 LISTENING
TCP [::]:49154 [::]:0 LISTENING
TCP [::]:49155 [::]:0 LISTENING
TCP [::]:49157 [::]:0 LISTENING
TCP [::1]:14147 [::]:0 LISTENING
Pero no sé cómo interpretar el resultado anterior.
Parece que puedo hacer telnet a la máquina en el puerto 21 telnet my-windows-server 21
:
220-FileZilla Server version 0.9.41 beta
220-written by Tim Kosse ([email protected])
220 Please visit http://sourceforge.net/projects/filezilla/
¿Eso indica que el puerto está abierto?
En términos más generales, ¿cuáles son las primeras cosas que se deben comprobar/verificar al resolver un problema como este?
Respuesta1
¿Están filtradas sus subredes (ACL, firewall...)?
El above output
que está hablando le muestra los puertos de escucha y los de no escucha en su servidor en direcciones numéricas, con la interfaz que escuchan (y el protocolo TCP/UDP).
Para depurar esto, Telnet host port
un buen punto de partida es verificar si un puerto está escuchando y abierto a través de la red, pero solo funcionará contra un puerto TCP. En tu caso si, eso indica que el puerto 21 está abierto.
También puede usarlo nmap myserver
para obtener una lista de puertos abiertos para un host de destino determinado, también puede verificar los puertos UDP y se ejecuta tanto en sistemas operativos Windows como Linux.
Además, usaría un rastreador de red como tshark
o wireshark
en el lado del servidor para ver qué está sucediendo.
Tenga en cuenta que hay 2 modos FTP: Activo o Pasivo:
- Modo activoutiliza el puerto TCP/21 para controles y el puerto TCP/20 para datos (los puertos sonfijado).
- Modo pasivoutiliza el puerto TCP/21 para controles y cualquier puerto TCP entre 1024 y 65534 para datos. Estos puertos sondinámica.
En tu caso, creo que tu problema tiene que resolverlo. Con respecto a su registro de errores, parece que está en modo pasivo.
Probaría el modo Activo.