Instalando y Configurando VSFTP

¿Qué es VSFTP?

La traducción de las siglas son Very Secure File Transfer Protocol Deamon (VSFTP) y es uno de los servicios de FTP seguros mas usados hoy en día. En algunas de las distribuciones como Ubuntu, CentOS, Fedora, etc suele venir instalado por defecto.

Aparte de una instalación correcta nos centraremos también en ciertos aspectos de seguridad que nos ayudaran a tener el entorno FTP controlado.

VSFTP, Puntos a tratar

  • Instalación
  • Configuración
  • Configurando TLS/SSL/FTPS

Instalación

Lo que haremos es la instalación desde los paquetes oficiales de nuestra distribución, por lo tanto instalaremos la versión paquetizada para nuestro sistema.

apt-get install vsftpd

Configuración

Toda las configuraciones del VSFTP se realizaran a través del fichero «/etc/vsftpd.conf».

Deshabilitando el acceso anónimo: Esto hará que nadie se pueda conectar de forma anónima en nuestro FTP.

anonymous_enable=NO

Estas dos opciones siguientes permitirán que los usuarios locales del sistema puedan acceder por ftp y además puedan escribir en los directorios.

local_enable=YES
write_enable=YES

Enjaulado de usuarios: Existen varias maneras para poder enjaular a los usuarios dentro de su espacio FTP. Nosotros hemos elegido «El usuario que entra no puede volver atrás de su directorio HOME». Por lo tanto solo podrá navegar desde su directorio HOME en adelante.

Puede que suene evidente esto, pero por defecto puedes navegar por todo el servidor. Por lo tanto es una buena medida de seguridad.

Para ello necesitamos poner estas directivas:

chroot_local_user=YES
chroot_list_enable=NO

Permitiendo o Denegando Acceso FTP a usuarios: Esta es una parte opcional ya que es para hacer aún más restrictivo el acceso por FTP a ciertos usuarios. Con la configuración anterior cualquier usuario que tenga una shell válida (excepto root) puede acceder a su directorio HOME por FTP.

  • Denegar el acceso a ciertos usuarios FTP
userlist_deny=YES
userlist_file=/etc/vsftpd.denied_users

Es evidente que tenemos que crear el fichero que le estamos pasando con un usuario por cada línea.

  • Permitir el acceso sólo a ciertos usuarios FTP
userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/vsftpd.allowed_users

Como en el punto anterior, tenemos que crear el fichero que le estamos pasando y solo tendrá acceso por FTP aquellos usuarios que especifiquemos.

Configurando TLS/SSL/FTPS

Si algo que hacemos hincapié es el tema de seguridad este es el punto donde nos podemos lucir con creces.

Las contraseñas cuando no tenemos este método activado viajan en texto plano, por lo tanto cualquier persona que haga sus labores para obtener la clave lo tiene más fácil. Ahora bien nosotros lo pondremos un poco más difícil cifrando dicha comunicación.

ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
# Filezilla uses port 21 if you don't set any port
# in Servertype "FTPES - FTP over explicit TLS/SSL"
# Port 990 is the default used for FTPS protocol.
# Uncomment it if you want/have to use port 990.
# listen_port=990

Conclusión

Gracias a esta guía tendremos un cliente FTP seguro que nos permitirá transferir nuestros ficheros cifrados al igual que nuestras contraseñas. Aparte de ello hemos configurado internamente el servidor para que cada usuario quede enjaulado en su directorio HOME.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *