FTP
Conexiones pasivas en ProFTPD
Las conexiones ftp pasivas son muy comunes cuando se establecen detrás de un proxy o muro cortafuegos. En una conexión ftp pasiva el cliente envía el comando PASV al servidor y es el servidor quien selecciona un puerto de forma aleatoria y se lo envía al cliente para establecer la comunicación cliente – servidor. En ProFTPD debemos configurar la directiva PassivePorts.
lftp, tener en cuenta ficheros/directorios ocultos
Algunos servidores ftp no muestran por defecto los ficheros / directorios ocultos y por tanto lftp no los tiene en cuenta en determinadas operaciones, por ejemplo al tratar de eliminar un directorio que contiene ficheros ocultos lftp emite el siguiente mensaje de error: Operación fallida: 550 no se puede eliminar el directorio: directorio no vacío (rm: Access failed: 550 Can’t remove directory: Directory not empty). Para cambiar este comportamiento.
Conexión ftp detrás de un proxy o muro cortafuegos (firewall)
p>Si está presentando problemas al conectarse a un sitio ftp debido a restricciones en el muro cortafuegos o proxy de su área de trabajo o proveedor de internet, entonces es recomendable usar un cliente ftp que implemente el protocolo hftp
lftp un sofisticado cliente ftp – explorando el sitio
lftp es un sofisticado cliente ftp que implementa las siguientes características:
- Maneja diferentes tipos de protocolos: ftp, ftps, http, hftp, sftp (los protocolos https y ftps estarán disponibles solo si lftp fue compilado con las librerías GNU TLS o OpenSSL)
- Cada operación es segura, por tanto cada error no fatal es ignorado y la operación es repetida, por ejemplo si una descarga es interrumpida esta se iniciará a partir de donde se quedó, aún si el servidor ftp no soporta el comando REST, lftp tratará de descargar el fichero desde el principio hasta que la descarga haya sido completada
- Permite ejecutar tareas en background (&)
- Permite agrupar comandos utilizando paréntesis y lanzarlos en background
- Con Ctrl-z y el comando wait (o fg alias de wait) se instruye a una tarea que se ejecute en background o foreground respectivamente