En los servidores FTP existen dos modos para la transferencia de datos, el activo y el pasivo. En el modo activo el encargado de iniciar la transferencia de datos es el propio servidor, en cambio en el modo pasivo es el cliente quien solicita un puerto abierto en el servidor para establecer e iniciar la transferencia de datos. Conectar a un FTP en modo pasivo puede resolver problemas de conexión si hay un Firewall en el lado cliente, ya que al establecerse la conexión desde el cliente no debería haber problemas en el filtrado o bloqueo de conexiones entrantes.
HestiaCP por defecto ya viene configurado para soportar FTP Pasivo, por lo que deberemos de conectarnos de la siguiente forma que explicamos.
Agregar reglas en el Firewall de Clouding
Para que nuestro servidor acepte el tráfico por los puertos pasivos del FTP de HestiaCP tenemos que abrir los puertos 12000 a 12100 en el Firewall del panel de cliente.
Para ello accedemos al Panel de cliente y en el apartado Red de nuestro servidor editamos el firewall que tengamos vinculado.
Hacemos clic en el icono de "+" para añadir una nueva regla.
Volvemos a hacer clic en el icono "+" para añadir una norma personalizada.
Configuramos la nueva regla con el protocolo "TCP" desde el puerto 12000 al puerto 12100 y con IP de origen 0.0.0.0/0 para permitir las conexiones desde cualquier dirección IP.
Con estos pasos en el panel de cliente nuestro servidor ya podrá aceptar las conexiones para el FTP pasivo configurado anteriormente en HestiaCP.
Conectar al FTP en modo pasivo con Filezilla
Abrimos el cliente FTP Filezilla y abrimos el "Gestor de sitios".
Hacemos clic en "Nuevo sitio".
A la izquierda establecemos el nombre identificativo para la conexión. En el formulario de la derecha tenemos que indicar la dirección IP o el dominio que tengamos configurado en HestiaCP. Si no hemos configurado un certificado SSL para permitir conexiones seguras tendremos que indicar "Usar sólo FTP plano(inseguro) en el método de cifrado.
Por último, nos desplazamos a la pestaña "Opciones de Transferencia" e indicamos el modo "Pasivo" y hacemos clic en "Conectar". Nos pedirá el usuario y contraseña de nuestra cuenta de FTP y ya estaremos conectados para realizar transferencias en modo pasivo.
Conectar al FTP en modo pasivo desde Ubuntu Server
Para conectarnos por FTP en modo pasivo desde la línea de comandos de un Ubuntu Server ejecutaremos el siguiente comando:
ftp -d localhost
Connected to localhost.localdomain.
220 ProFTPD Server (ProFTPD) [::1]
ftp: setsockopt: Bad file descriptor
Name (localhost:root): ftpadmin
---> USER ftpadmin
331 Password required for ftpadmin
Password:
---> PASS XXXX
230 User ftpadmin logged in
---> SYST
215 UNIX Type: L8
Remote system type is UNIX.
Using binary mode to transfer files.
Ahora tenemos que indicar que queremos usar el modo pasivo:
ftp> passive
Passive mode on.
Realizamos un listado de los recursos del directorio raíz de nuestra conexión FTP:
ftp> ls
---> EPSV 2
229 Entering Extended Passive Mode (|||50042|)
---> LIST
150 Opening BINARY mode data connection for file list
drwxr-xr-x 2 ftpadmin psacln 4096 Jun 30 14:32 error_docs
drwxr-x--- 2 ftpadmin psaserv 4096 Jun 30 14:32 httpdocs
drwx------ 2 ftpadmin root 4096 Jul 1 06:26 logs
226 Transfer complete
Recuerda, si tienes consultas sobre esta u otra cuestión relacionada con tus servidores en Clouding, no dudes en escribir a soporte@clouding.io ¡Estamos a tu lado para lo que necesites, consúltanos!