GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar ProFTPD con TLS en Ubuntu 20.04 LTS

La transferencia de archivos a través de FTP (Protocolo de transferencia de archivos) sigue siendo probablemente una de las formas más populares de cargar archivos en un servidor. ProFTPD es un servidor FTP popular y versátil que está disponible como software de código abierto y admite TLS (SSL) para conexiones seguras.

De forma predeterminada, FTP es un protocolo inseguro ya que las contraseñas y los datos se transfieren en texto no cifrado. Al usar TLS, como lo hacemos en esta guía, todas las comunicaciones se pueden cifrar, lo que hace que el FTP sea más seguro.

Este artículo describe cómo configurar proftpd con TLS en el servidor Ubuntu 20.04 LTS .

Requisitos

  1. Servidor Ubuntu 20.04 de 64 bits
  2. privilegios sudo/root

Qué haremos en este tutorial

  1. Instala ProFTPD y TLS.
  2. Configura ProFTPD.
  3. Añadir un usuario de FTP.
  4. Configurar TLS en ProFTPD.
  5. Pruebas.

Instalar Proftpd y OpenSSL

Proftpd y OpenSSL están disponibles en el repositorio de Ubuntu, por lo que podemos instalarlos con el comando apt:

sudo apt-get install -y proftpd openssl

ProFTPD se instala como se muestra a continuación. El proceso de instalación no solicitará ninguna entrada.

Ahora verificaremos que proFTPD ha sido instalado e iniciado. Ejecute este comando:

sudo proftpd --version

para comprobar la versión ProFTPD instalada. A continuación, comprobaremos el estado del servicio, consultamos con el comando systemctl:

sudo systemctl status proftpd

Configurar ProFTPD

Una vez que ProFTPD esté instalado, deberá ajustar la configuración para que sea un servidor completamente funcional y seguro. El archivo de configuración de ProFTPD se encuentra en el directorio /etc/proftpd/; edite el archivo proftpd.conf.

sudo nano /etc/proftpd/proftpd.conf

En la línea Nombre del servidor, reemplace el valor con su nombre de host o dominio:

ServerName                      "My FTP-Server"

Descomente la línea DefaultRoot para habilitar la cárcel para todos los usuarios:

DefaultRoot   		~

y reinicie ProFTPD a través del comando systemctl de la siguiente manera.

sudo systemctl restart proftpd

Añadir un Usuario FTP

Hay dos tipos de usuarios de FTP disponibles, el usuario de FTP anónimo y los usuarios de FTP "normales":

  1. FTP anónimo :  El servidor FTP brinda acceso a cualquier persona sin tener que tener una cuenta de usuario y contraseña. Esto no debe usarse en un servidor disponible públicamente, pero podría ser una opción para un servidor doméstico o una LAN de empresa.
  2. Usuario FTP :Solo aquellos que tienen una cuenta de usuario y contraseña pueden acceder al servidor FTP.

Antes de crear un usuario para el servidor FTP, agregue /bin/false a su archivo /etc/shells.

sudo echo "/bin/false" >> /etc/shells

Y ahora, cree un usuario con un directorio de inicio específico, deshabilite el acceso de shell y luego concédalo al servidor FTP.

sudo useradd -m -s /bin/false tom
sudo passwd tom

El comando anterior creará un nuevo usuario llamado tom con el directorio de inicio /home/tom/ y sin acceso de shell /bin/false.

Ahora, configure ProFTPD para permitir el acceso del usuario tom al servidor FTP.

sudo nano /etc/proftpd/conf.d/tom.conf

Agregue este archivo de configuración para permitir que el usuario tom inicie sesión y cargue/descargue archivos al/desde el servidor:

<Directory /home/tom>
  Umask 022 022
  AllowOverwrite off
  <Limit LOGIN>
    AllowUser tom
    DenyALL
  </Limit>
  <Limit ALL>
    Order Allow,Deny
    AllowUser tom
    Deny ALL
  </Limit>
  <Limit MKD STOR DELE XMKD RNRF RNTO RMD XRMD>
    AllowUser tom
    Deny ALL
  </Limit>
</Directory>

El archivo se verá así:

Guarde el archivo y salga de nano. Luego reinicie ProFTPD.

sudo systemctl restart proftpd

Ya puede usar FTP en esta etapa, pero lo haremos más seguro usando TLS en el siguiente paso.

Configurar TLS con proftpd

Para usar TLS, debe crear un certificado SSL. Genere un certificado SSL con el comando OpenSSL:

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

El comando anterior generará un archivo de certificado proftpd.crt en el directorio /etc/ssl/certs/ y un archivo de clave de certificado proftpd.key en el directorio /etc/ssl/private/.

A continuación, cambie el permiso del archivo de certificado a 600:

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

Ahora, regrese al directorio /etc/proftpd y configure ProFTPD para usar el certificado SSL que generó.

nano /etc/proftpd/proftpd.conf

Descomente la línea TLS:

Include /etc/proftpd/tls.conf

Guarde el archivo tls.conf y salga.

A continuación, edite el archivo de configuración de TLS para habilitar la autenticación segura:

nano /etc/proftpd/tls.conf

Descomente todas estas líneas:

TLSEngine                               on
TLSLog                                  /var/log/proftpd/tls.log
TLSProtocol                             SSLv23

TLSRSACertificateFile                   /etc/ssl/certs/proftpd.crt
TLSRSACertificateKeyFile                /etc/ssl/private/proftpd.key

TLSOptions                      NoCertRequest EnableDiags NoSessionReuseRequired

TLSVerifyClient                         off

TLSRequired                             on

Guardar y Salir. El último paso es reiniciar el servidor ProFTPD:

sudo systemctl restart proftpd

Probando ProFTPD

Para probar la configuración, intente conectarse a su servidor FTP con un software como FileZilla (estoy usando FileZilla aquí) y complete la IP del servidor, el nombre de usuario, la contraseña y el puerto:

Server IP : 192.168.0.100
username : tom
Password ******
Port : 21

Y luego haga clic en Conexión rápida.

Haga clic en 'Aceptar' para confirmar nuestro certificado SSL autofirmado.

Verá que ha iniciado sesión en el servidor FTP con certificado TLS/SSL.

Enlaces

  • El proyecto de software ProFTPD. Enlace

Ubuntu
  1. Cómo instalar Proftpd con TLS en Ubuntu 15.04

  2. Cómo instalar ProFTPd con soporte TLS en Ubuntu 15.10

  3. Cómo instalar ProFTPD con TLS en Ubuntu 18.04 LTS

  4. Cómo instalar ProFTPD en Ubuntu 15.04

  5. Cómo instalar ProFTPD en Ubuntu 20.04 LTS

Cómo instalar WordPress con Docker en Ubuntu 16.04 LTS

Cómo instalar Go en Ubuntu 18.04 LTS

Cómo instalar Vsftpd en Ubuntu 18.04 LTS

Cómo instalar Go en Ubuntu 20.04 LTS

Cómo instalar un servidor FTP en Ubuntu 20.04 LTS

Cómo instalar phpMyAdmin con Nginx en Ubuntu 20.04 LTS