Cómo instalar ProFTPD en Ubuntu 20.04

los Fcon Ttransferencia PAGSrotocol (FTP) sigue siendo una tecnología ampliamente utilizada para mover archivos a través de una red informática. Es famoso por ser liviano, fácil de configurar y usar. FTP tiene una mala reputación como protocolo inseguro porque transmite contraseñas y datos en texto sin formato. Sin embargo, los servidores FTP modernos como ProFTPD admiten FTP sobre TLS, por lo que la conexión se cifra mediante TLS/SSL. En este tutorial, le mostraré cómo configurar ProFTPD para que la conexión se cifre mediante TLS.

ProFTPd es una aplicación de servidor FTP de código abierto que le permite configurar sus propios servidores FTP en máquinas Linux, más aún si son servidores dedicados o instancias en la nube. Vamos a instalar la última versión de ProFTPD en una máquina con Ubuntu 20.04 utilizando los repositorios de Focal Fossa, pero también debería funcionar bien en la mayoría de las distribuciones basadas en Debian. También configuramos TLS para asegurar las conexiones FTP.

requisitos previos

  • Una instancia de servidor nueva, con Ubuntu 20.04 (Focal Fossa) instalado.
  • Privilegios de sudo/root para instalar/configurar aplicaciones.

Actualizando tu sistema

Siempre es una buena idea actualizar su sistema antes de instalar cualquier paquete o software, especialmente cuando proviene de repositorios externos. Usaremos la utilidad “apt-get” para eso:

sudo apt-get update -y
sudo apt-get upgrade -y

Reinicie su servidor si hay actualizaciones del kernel para aplicar los cambios

sudo reboot now

Instalación del servidor ProFTPD

Ahora que su sistema está actualizado, podemos continuar con la instalación de ProFTPD.

De forma predeterminada, ProFTPD está disponible en los repositorios de Focal Fossa, que puede instalar con el siguiente comando:

sudo apt-get install proftpd -y

Una vez que se completa la instalación, puede iniciar el servicio proftpd y habilitarlo para que se inicie automáticamente en el momento del arranque.

sudo systemctl start proftpd
sudo systemctl enable proftpd

Ahora que el servicio se está ejecutando, podemos verificar su estado usando:

sudo systemctl status proftpd

El servicio ProFTPD se está ejecutando

Puede ver el activo (en ejecución) en verde para que sea seguro concluir que el demonio proftpd está funcionando como se esperaba.

Los archivos de configuración predeterminados de ProFTPD están disponibles en el directorio /etc/proftpd/proftpd.conf.

Puede ver el contenido del archivo de configuración ejecutando:

sudo nano /etc/proftpd/proftpd.conf

Archivo de configuración de ProFTPD

La configuración se divide en varias secciones de directivas. Echemos un vistazo a esas directivas.

La directiva DefaultRoot le dice al servidor FTP dónde servir los archivos de forma predeterminada. El valor de DefaultRoot puede ser una ruta absoluta o relativa. Cuando la directiva DefaultRoot se establece en ~ (el carácter de tilde), los usuarios estarán restringidos a sus directorios de inicio. Puede cambiar la ruta a otra carpeta para example:

DefaultRoot /home/Linux/Docs

Puede usar varias directivas para configurar cada usuario en un directorio específico. Para example:

DefaultRoot /home/linux A
DefaultRoot / B

Esas líneas indican que el usuario A iniciará sesión en el directorio /home/linux y el usuario B iniciará sesión en todo el sistema.

La directiva ServerName se utiliza para definir un nombre para el servidor FTP. Esta directiva se puede usar en registros y notificaciones, por lo que debe configurarla con un nombre descriptivo que sea significativo para usted.

ServerName "Vitux"

La directiva Port define el número de puerto en el que el servidor FTP escuchará las conexiones. El valor predeterminado de esta directiva es 21.

Creación de usuarios de ProFTPD

Por razones de seguridad, debe crear una cuenta de usuario ficticia, con permiso restringido, que solo tenga acceso a su directorio de inicio. Esta es una buena práctica a seguir cuando permite que los usuarios carguen o descarguen archivos en su servidor FTP.

La versión instalada de ProFTPD no viene con usuarios creados previamente ni opciones de configuración listas para usar. Tendremos que agregar un nuevo usuario para este propósito.

Vamos a crear un usuario FTP linuxways con la carpeta /home/linuxways como carpeta de inicio.

sudo useradd -m linuxways

Cree una nueva contraseña para el nuevo usuario.

sudo passwd linuxways

Ahora puedes probar la conexión FTP usando el usuario “linuxways”. Abra su cliente FTP preferido (FileZilla, CoreFTP o cualquier otro), complete los detalles como dirección IP, nombre de usuario, contraseña y puerto y haga clic en Conexión rápida.

Conectarse al servidor FTP

Como puede ver, ahora podemos acceder al FTP con el usuario recién creado. El servidor ProFTPd se está ejecutando y funciona como se esperaba.

En caso de que desee agregar más usuarios, simplemente créelos usando el comando useradd con su nombre de usuario deseado. También puede otorgar privilegios de raíz a un usuario de FTP si es necesario.

Configurar TLS para ProFTPD

Para asegurar la conexión FTP, puede usar TLS. En esta sección, configuraremos ProFTPD con un certificado TLS de Let’s Encrypt (un proveedor de SSL gratuito) y active el certificado recién creado dentro del archivo de configuración.

Primero, instale OpenSSL

sudo apt-get install openssl -y

Instalar OpenSSL

Ahora que tenemos OpenSSL instalado, generemos un certificado SSL.

sudo openssl req -x509 -newkey rsa:1024 -keyout /etc/ssl/private/proftpd.key -out /etc/ssl/certs/proftpd.crt -nodes -days 365

Echemos un vistazo rápido a lo que está sucediendo aquí. Estamos creando el directorio donde se crearán los certificados SSL (/etc/ssl), generando la solicitud de certificado y otorgándole una vigencia de un año (365 días). También estamos especificando el archivo de clave privada y el archivo de certificado. Tendrá que responder algunas preguntas sobre su organización como la siguiente. Solo escribe la respuesta y presiona Enter

Obtener certificado SSL

El comando anterior creará dos archivos: proftpd.key y proftpd.crt que necesitaremos para configurar ProFTPD.

Cambie el permiso de los archivos clave y a 600.

sudo chmod 600 /etc/ssl/private/proftpd.key
sudo chmod 600 /etc/ssl/certs/proftpd.crt

Ahora necesitamos editar el archivo de configuración principal, ubicado en /etc/proftpd/proftpd.conf, y agregar información sobre nuestros archivos de certificado recién creados.

sudo nano /etc/proftpd/proftpd.conf

Descomente la sección SSL y TLS eliminando el “#” al comienzo de la línea, para que pueda usar FTP sobre SSL.

Configurar TLS en ProFTPD

Guardar y close el archivo. Ahora configuremos el archivo tls.conf

sudo nano /etc/proftpd/tls.conf

Busque y elimine el comentario de las siguientes líneas eliminando el “#” al comienzo de cada línea.

Habilitar módulo TLS

archivo de certificado SSL

Opciones de TLS

Guardar y close el archivo. No olvide reiniciar el servicio.

sudo systemctl restart proftpd

Si desea verificar si todo funciona como se espera, use un cliente FTP y conéctese a su servidor con SSL habilitado. Debería recibir una advertencia TLS de su cliente FTP

Es común recibir advertencias TLS de clientes FTP. Después de permitir o OK la advertencia, se debe establecer la conexión SSL y puede continuar usando el cliente FTP como de costumbre.

Conclusión

En este tutorial, instalamos ProFTPD en nuestro servidor Ubuntu 20.04, creamos un usuario para la conexión FTP y probamos su funcionalidad. También hemos configurado TLS para proteger la conexión FTP de espionaje o manipulación de datos en tránsito. En caso de que necesite más información sobre las opciones de configuración de ProFTPD, asegúrese de consultar sus documentación oficial.

Cómo instalar ProFTPD en Ubuntu 20.04

Related Posts