Despué de seguir la primera parte de la guía sobre como configurar un servidor VSFTPD sobre SSL tenemos un servidor configurado para que cualquier usuario del grupo ftp-user pueda subir archivos a su directorio home.

Sin embargo, todavía no hemos configurado nada para que esta conexión funcione sobre SSL. En esta segunda parte de la guía vamos a ver los pasos necesarios para que el servidor solo acepte conexiones que vayan sobre SSL.

Creamos un certificado

Lo primero que tenemos que hacer para que el servicio de FTP funcione sobre SSL es crear el certificado que usaremos. En esta guía vamos a crear un certificado que tenga validez de 365 días y de tipo autofirmado. Si quieres saber más sobre certificado, puedes visitar la página de la Wikipedia donde está muy bien explicado.

Para crear el certificado ejecutamos el siguiente comando:

[sudo openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem]

Después de este comando tendremos el nuevo certificado creado en /etc/ssl/private/vsftpd.pem.

Configurando VSFTPD para usar funcionar sobre SSL

Ya tenemos el certificado creado. Ahora lo que vamos a hacer es añadir a la configuración de VSFTPD las opciones necesarias para que las conexiones se hagan sobre SSL. Para ello tenemos que editar el archivo /etc/vsftpd.conf con nuestro editor favorito.

sudo vim /etc/vsftpd.conf

En el archivo tenemos que localizar la línea:

rsa_cert_file=/etc/ssl/private/vsftpd.pem

Esta línea no hay que modificarla, solo localizarla y añadir las siguientes líneas debajo de ella:

rsa_private_key_file=/etc/ssl/private/vsftpd.pem
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
require_ssl_reuse=NO
ssl_ciphers=HIGH

Guardamos el archivo y reiniciamos el servicio:

sudo /etc/init.d/vsftpd restart

¡Pues ya está! Ya tenemos nuestro servidor de FTP configurado.

¡Espero que te sea útil el post! No dudes en comentar si encuentras algún problema.

Un saludo,
Carlos