:::: MENU ::::

Configurar FTP pasivo en instancia EC2 micro (AWS)

5.00 avg. rating (83% score) - 1 vote

Tras la instalación de vsftpd en una instancia linux, el modo de conexión por defecto será FTP activo.

En una conexión FTP, la conexión de control siempre se realiza por el puerto 21 y en dirección cliente a servidor. La diferencia entre ambos modos, activo y pasivo, es básicamente el extremo que inicia la conexión de datos.

En el caso del FTP activo es el servidor quien inicia la conexión de datos y por lo tanto el cliente debe tener el puerto de datos abierto y a la escucha de conexiones. Esto puede ser un problema cuando estamos protegidos detrás de un firewall o cuando estamos en una red interna con NAT de direcciones.

Por el contrario, en modo pasivo es siempre el cliente quien inicia la conexión con el servidor, que previamente habrá asignado un puerto para dicha conexión de datos. Esto evita los problemas anteriores.

Como comentábamos, tras instalar vsftp, el modo de conexión por defecto es el modo activo, pero para activar el modo pasivo, podemos seguir unos sencillos pasos:

Apertura de puertos en Amazon EC2

En primer lugar tendremos que abrir un conjunto de puertos TCP. Nos sirve cualquier rango superior al puerto 1023, y serán los puertos disponibles para las conexiones de datos desde los clientes. Por ejemplo elegiremos los puertos del 1024 al 1048 y los abriremos en nuestro grupo de seguridad de Amazon EC2.

En segundo lugar necesitaremos configurar algunos parámetros en el archivo:

vim /etc/vsftpd/vsftpd.conf

Deberemos incluir o modificar las siguientes líneas:

anonymous_enable=NO
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
pasv_address=<IP de la instancia> 

Si queremos restringir el acceso de los usuarios a su carpeta home, podemos añadir además:

chroot_local_user=YES

Una vez realizadas las modificaciones del archivo, solo nos queda reiniciar el servidor FTP:

/etc/init.d/vsftpd restart

Para sobrevivir a un reboot del servidor y que nuestro FTP siga funcionando, además podemos configurar el inicio automático del servicio con la siguiente línea:

chkconfig --level 345 vsftpd on



Hey! Qué opinas sobre el artículo?