FTP - 425 No se puede abrir la conexión de datos (el modo activo no funciona)

4

He investigado este tema a fondo en cuanto a qué es el modo activo y por qué golpeé al infame 425 Can't open data connection. error, pero después de toda la documentación, los tutoriales y los foros en Internet que no ofrecen ninguna solución, he decidido venir aquí por una última oportunidad.

Por diversos medios (explicados en la parte inferior), he podido conectarme a este servidor de forma remota, pero solo a través de conexiones pasivas. No puedo conectarme utilizando el modo Activo, que el cliente de FileZilla toma por defecto (en mi caso al menos).

El servidor ejecuta Windows 8 y FileZilla Server (parte del paquete XAMPP) y usa los puertos:

  • 21 para escuchar
  • 990 para FTP implícito sobre TLS
  • 14147 para la gestión remota
  • 6000-7000 para el modo pasivo

Estos puertos se abren tanto en el NAT del enrutador como en el Firewall de Windows.

Estas son las configuraciones para el servidor.
FileZilla Server Options

Y estas son las configuraciones para el cliente.
FileZilla Client Options
en el modo pasivo, se selecciona también el retorno al modo activo

Por razones obvias, las conexiones locales funcionan pero las conexiones remotas no.

Vale la pena mencionar - ftptest.net reporta la conexión como ÉXITO Sin embargo, descubrí que utiliza el modo PASV para conectarse al servidor. He puesto el registro de esta conexión exitosa sobre en pastebin para referencia. De nuevo, esto está usando FTP implícito sobre TLS. Las conexiones FTP estándar funcionan con este sitio web (y no a través de mis propios medios de conexión), pero las tengo deshabilitadas dentro del servidor y solo debo forzar las conexiones SSL / TLS.

SteppingHat
fuente
El modo PASV funciona mejor en entornos NAT. ¿Por qué muestra la configuración del modo pasivo para el servidor, pero la configuración del modo activo para el cliente?
Paul
@Paul Estaba intentando mostrar todas las configuraciones en realidad. Active tenía la mayoría de las cosas, así que hice una captura de pantalla, pero el modo pasivo solo tenía dos opciones, alternativa o uso de ip externa, así que dije que debajo. Por lo que yo sé, el servidor no tiene ninguna configuración activa (no que pueda encontrar inmediatamente al menos)
SteppingHat
Entonces ... ¿puedes usar el modo PASV? Si es así, me olvidaría de estar activos todos juntos, es mucho más difícil hacer que funcione.
Paul

Respuestas:

7

FTP tiene una conexión de control y una conexión de datos. La conexión de control se inicia desde el cliente al servidor y, por lo tanto, generalmente no causa problemas, pero las conexiones de datos son diferentes:

  • en modo activo el servidor intenta conectarse al cliente. Los ajustes de IP y puerto necesarios se envían dentro del PORT o EPRT comando dentro del canal de control. Si el cliente está detrás del modo activo, no funcionará, ya que el cliente utiliza una dirección IP a la que el servidor no puede acceder. Los problemas similares son si el cliente está detrás de un firewall, porque las conexiones desde el exterior simplemente serán bloqueadas. Solo los firewalls compatibles con FTP pueden emplear ayudantes especiales para administrar conexiones activas (y estas no funcionarán con FTPS).
  • en modo pasivo el cliente se conecta al servidor. La IP y el puerto necesarios se envían dentro de la respuesta a la PASV o EPSV comandos No hay problemas con NAT en el lado del cliente y, por lo general, tampoco hay problemas con los firewalls. Pero habrá problemas si el servidor está detrás del firewall o NAT.

En resumen: el modo pasivo funciona la mayor parte del tiempo, mientras que el modo activo solo funciona si el cliente tiene una dirección pública. Pero este no es el caso para los clientes detrás de un enrutador (en casa, punto de acceso público ...) y generalmente tampoco en redes móviles.

Steffen Ullrich
fuente
Lo creas o no que realmente me ayudó mucho! Pude apuntar con el dedo al enrutador e impedir que el modo activo funcione. Además, me di cuenta de que, por alguna razón, mi cliente estaba configurado en modo activo en lugar del modo pasivo recomendado. No pude entender por qué estaba activo contra pasivo, aunque sabía que era el método preferido, pero ahora ambos problemas están resueltos. El modo activo funciona y el cliente ahora vuelve a funcionar en modo pasivo. ¡Gracias por tu ayuda! :RE
SteppingHat
0

La ejecución de un cliente FTP en el dispositivo de red local tuvo problemas al usar la dirección IP externa, como: 92.646.178.168. El registro del servidor indicaría esta IP.

Al configurar el 'nombre de host o la dirección' del cliente, por lo que no es una dirección IP, use el nombre como "Creador". El enrutador envía correctamente los paquetes de datos al servidor FZ. Entonces, al probar la conexión, sugeriría este simple cambio. Luego use otro dispositivo en red en mi caso, un dispositivo inalámbrico solo para usar la IP externa aquí.

user594072
fuente