FTP significa protocolo de transferencia de archivos (file transfer protocol en inglés) y es un estándar para transferir datos a través del protocolo TCP/IP. Para utilizar el servicio FTP en un servidor necesitaremos un programa instalado en el mismo, que en este caso será el servidor VSFTPD.
Éste programa, al igual que cualquier otro servidor de FTP utilizará dos puertos TCP abiertos, el 20 y el 21.
VSFTP viene en los repositorios de CentOS / RHEL así que bastará correr yum para instalarlo:
yum install -y vsftpd
* Deberemos abrir los puertos 20 y 21 sobre TCP en nuestro firewall.
El archivo principal de configuración es /etc/vsftpd/vsftpd.conf
Vamos a editarlo para dejarlo preparado para funcionar adecuadamente.
anonymous_enable=NO
Esta opción permite ingresar sin necesidad de tener un usuario configurado, nuestra recomendación es dejarla en NO si no queremos que esto suceda.
write_enable=YES
Permite escribir en los directorios y archivos sobre los que tengamos acceso.
anon_upload_enable=NO
Esta opción permite que los usuarios anóminos (recordemos la opción anonymous_enable) escriban en los directorios y archivos. Podemos dejarla tal cual está, en NO, nuestra recomendación.
anon_mkdir_write_enable=NO
Dicha variable permite que los usuarios anónimos puedan crear directorios nuevos en el servidor, viene en NO por defecto.
ftpd_banner=Bienvenido al servidor FTP de TUSITIO.COM
Esta opción permite poner un mensaje de bienvenida para que cuando iniciamos sesión en el cliente de FTP se muestre el Slogan o Nombre de nuestro sitio o empresa.
Deberemos crear el archivo /etc/vsftpd/chroot_list en el cual indicaremos línea a línea los usuarios FTP que vayamos a utilizar. Y descomentar la línea correspondiente en el archivo de configuración que hemos estado editando. Con esto enjaulamos a los usuarios FTP para que solo accedan a su directorio home y no puedan operar libremente por todo el servidor.
chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list
Una vez que terminamos de editar el archivo de configfuración lo guardamos e iniciamos el servicio con:
service vsftpd start
Otros comandos útiles:
service vsftpd restart service vsftpd stop
Para que vsftpd se inice junto con el sistema ejecutamos:
chkconfig vsftpd on
Esperamos que les haya sido útil a la hora de montar un servidor FTP en CentOS.