El servidor FTP se bloquea al utilizar el comando "ls": "Considere utilizar PASV"

El servidor FTP se bloquea al utilizar el comando "ls": "Considere utilizar PASV"

Estoy intentando utilizar el comando "ls" en una sesión FTP anónima, pero cuando escribo el comando "ls" aparece:

Comando 200 PORT exitoso. Considere usar PASV.

Y se cuelga así (no vuelve al indicador de ftp).

Reinicié la sesión ftp y entré en modo pasivo (cita PASV), pero aparece otro problema: "No hay ruta al host"

Tienes alguna sugerencia ?

Respuesta1

quote PASV noingrese al modo pasivo de la manera que cree: "PASV" es un comando inmediato (que precede a todas y cada una de las transferencias) en lugar de un comando de cambio de modo permanente.

Más bien, elclienteSe le debe indicar que utilice PASV en lugar de PORT siempre que lsse solicite una transferencia de archivos.

Coninetutils-ftp, utilizar elpassivecomando, o ejecute el cliente como pftpo ftp --passive.

Respuesta2

Recuerdo haber visto este problema una vez cuando olvidé abrir el puerto 20 en el firewall. Si bien el puerto habitualmente asociado con FTP es el 21, los datos normalmente se envían a través del puerto 20.

Asegúrese de que tanto el 20 como el 21 estén abiertos tanto en el cliente como en el servidor, para que quien inicie la conexión en el puerto 20 pueda pasar.

Respuesta3

Tienes alguna sugerencia ?

Sí, deshazte del FTP.

Sé que probablemente esa no era la respuesta que querías escuchar, pero déjame explicarte por qué es realmente necesario, y entonces es posible que te sientas más inclinado a hacer esto. También te daré otra alternativa.

FTP se escribió cuando Internet se consideraba un proyecto experimental. Las principales universidades y grandes organizaciones tenían reglas de conducta, impuestas por instituciones respetadas, por lo que se confiaba en la gente de Internet (en realidad llamada ARPAnet en aquel entonces).

FTP fue diseñado para que el cliente use una conexión TCP para enviar una solicitud de un archivo. Luego, el servidor recibió la solicitud e inició una conexión TCP separada con el cliente.

Esto se rompió cuando los clientes comenzaron a usar firewalls para proteger sus cosas. Entonces los clientes FTP podían realizar conexiones salientes, pero las conexiones entrantes estaban bloqueadas.

Una forma de evitarlo era el modo pasivo: el cliente envía una solicitud utilizando el puerto TCP 21, luego el servidor dice que quiere otra conexión utilizando algún puerto TCP aleatorio (por ejemplo, 43728) y luego el cliente realiza una segunda conexión utilizando el TCP aleatorio especificado. puerto (por ejemplo, 43728).

Eso funcionó si el cliente tenía un firewall. Mucha gente empezó a aprender que el "modo pasivo" solucionaba los problemas de FTP. Sin embargo, lo que el "modo pasivo" realmente solucionó fue solo ese problema específico. Si el servidor tiene un firewall que sólo permite el tráfico entrante en números de puerto específicos, como el puerto 21 para FTP, entonces ni siquiera el "modo pasivo" soluciona todo lo que se necesita para funcionar.

En teoría, esto podría solucionarse si el firewall del servidor FTP admite un proxy FTP que monitorea el tráfico y abre otro puerto si es necesario. Mucha gente considera que esto es un poco difícil de configurar.

A medida que más organizaciones se preocupaban más por la seguridad y menos por el FTP, la gente comenzó a aprender que el FTP se estaba volviendo típicamente defectuoso (lo que significa que cada vez era más difícil utilizar servidores FTP desde más y más ubicaciones en las que la gente podría intentar usar un FTP). cliente en). Los problemas de FTP empezaron a generalizarse.

Durante un tiempo, la gente aprendió que el "modo pasivo" parecía ser una técnica mágica que solucionaba los problemas de FTP. (Muchas personas no entendían por qué FTP dejaba de funcionar. Simplemente se enteraron de que si FTP comenzaba a actuar de manera extraña, el "modo pasivo" parecía solucionar ese extraño problema que experimentaba FTP. Más tarde, creyeron que el "modo pasivo" era una "cura mágica". "todo" fue comúnmente reemplazado por una creencia diferente, que es que FTP simplemente ya no parece funcionar (ni tan bien como solía hacerlo). Incluso si muchas personas no entendían por qué FTP fallaba, lo que sí entendían es que la vida parecía funcionar con más éxito cuando probaron otra técnica, que consistía en empezar a utilizar otros protocolos. A medida que la carga HTTPS comenzó a volverse más popular, la gente dejó de usar FTP casi con tanta frecuencia.

Entonces, su mejor solución es simplemente deshacerse del antiguo protocolo FTP que no funciona con las medidas modernas de seguridad de Internet. FTP simplemente no fue diseñado para eso. NAT también se utiliza para ayudar a que varios dispositivos utilicen una dirección IP.

NAT a menudo se implementa mediante un firewall, aunque puede tener propósitos distintos a los de seguridad (como aumentar la cantidad de dispositivos compatibles). Cualquiera que sea el propósito del uso de NAT, el resultado final es que NAT básicamente interrumpe la conexión FTP por las mismas razones (no permite que la conexión llegue al dispositivo deseado). Por lo tanto, FTP tampoco fue diseñado para admitir NAT.

En el pasado, FTP era sólo un esfuerzo experimental para intentar que la transferencia de archivos funcionara. FTP logró su objetivo original. Entonces, a pesar de no funcionar bien con el diseño de Internet actual, FTP no fue realmente mal diseñado. Su diseño fue realmente un gran éxito en su momento. Simplemente fue diseñado para un estilo de Internet diferente al que utiliza las tecnologías comunes de hoy.

HTTP no tiene tantos problemas, ya que utiliza una conexión TCP en lugar de varias. Tampoco muchas alternativas seguras: HTTPS, SFTP, FTPS, SCP.

Prometí otra alternativa. Es: hacer que FTP funcione. Las estrategias incluyen: * Hacer que el firewall del lado del cliente ejecute un proxy FTP * Hacer que el firewall del servidor FTP ejecute un proxy FTP

El problema es que a menudo no se tiene control sobre un lado de la conexión. Por lo tanto, es posible que una de esas no sea una opción para usted.

Es posible que desee intentar eliminar el firewall por completo. Sin embargo, es probable que esto introduzca riesgos de seguridad que la mayoría de la gente considera que NO aportan ningún beneficio. En su lugar, simplemente descarte la idea de usar el antiguo protocolo FTP que no funciona tan bien con la Internet moderna y obtenga algún software moderno para usar transferencias de archivos a través de HTTPS o FTPS (o SCP). Por lo general, funcionará mejor con firewalls, funcionará mejor con NAT y le brindará los beneficios de la privacidad. (Realmente no querías difundir tu contraseña, sin cifrar, a través de Internet, ¿verdad?)

A menos que esté intentando capturar archivos públicos, en cuyo caso HTTPS o HTTP pueden ser la ruta más fácil.

información relacionada