Cómo instalar ProFTPD con TLS en Ubuntu 16.04 LTS

La transferencia de archivos a través de FTP (Protocolo de transferencia de archivos) es probablemente la forma más popular de cargar archivos a un servidor.Proftpdes un servidor FTP popular y versátil que está disponible como software OpenSource y admite TLS (SSL) para conexiones seguras.

De forma predeterminada, FTP es un protocolo inseguro porque las contraseñas y los datos se transmiten en texto claro. Al utilizar TLS, todas las comunicaciones se pueden cifrar, lo que hace que FTP sea más seguro.

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

Fondo

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

¿Qué haremos en esta lección?

  1. Instale ProFTPD y TLS.
  2. Configurar ProFTPD.
  3. Agregar usuario FTP.
  4. Configure 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 usando el comando apt:

sudo apt-get install -y proftpd openssl

Cuando comience la instalación, se le pedirá que ejecute ProFTPD como inetd o como servidor independiente. Seleccione la opción sin conexión aquí y haga clic en Aceptar.

Configurar ProFTPD

Después de instalar ProFTPD, tendrás que cambiar la configuración para que sea un servidor seguro y completamente funcional. El archivo de configuración de ProFTPD se encuentra en el directorio / etc / proftpd / – edite el archivo proftpd.conf.

cd / etc / proftpd / vim 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 usando el comando systemctl de la siguiente manera.

systemctl reiniciar proftpd

Agregar usuario FTP

Hay dos tipos de usuarios FTP disponibles: usuario FTP anónimo y usuario FTP "normal". Usuario FTP:

1. FTP anónimo: Un servidor FTP proporciona acceso a cualquier persona sin necesidad de tener una cuenta de usuario y contraseña. Esto no debe usarse en un servidor público, pero puede ser una opción para un servidor doméstico o una LAN de empresa. 2. Usuario FTP: Sólo aquellos con una cuenta y contraseña pueden acceder al servidor FTP.

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

echo “/ bin / false” >> / etc / shells

Ahora cree un usuario con un directorio de inicio específico, desactive el acceso al shell y luego proporciónelo al servidor FTP.

usuarioadd -m -s /bin/false zenko contraseña zenko

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

Add FTP User and Set Password

Ahora configure ProFTPD para permitir el acceso de los usuarios de zenko al servidor FTP.

cd /etc/proftpd/conf.d/ vim zenko.conf

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

           
            
            
            
            
            
            
            
            
Umask 022 022
AllowOverwrite off
     
            
            
            
            
            
            
            
            
             
             
             
             
             
             
             
             
        AllowUser zenko
        DenyALL
     
            
            
            
            
            
            
            
            
     
            
            
            
            
            
            
            
            
             
             
             
             
             
             
             
             
        Order Allow,Deny
        AllowUser zenko
        Deny ALL
    
            
            
            
            
            
            
            
            
    
            
            
            
            
            
            
            
            
             
             
             
             
             
             
             
             
    AllowUser zenko
    Deny ALL
    
            
            
            
            
            
            
            
            

           
           
           
           
           
           
           
           

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

systemctl reiniciar proftpd

Ya puedes usar FTP en este punto, pero lo haremos más seguro usando TLS en el siguiente paso.

Configurar TLS con proftpd

Para utilizar TLS, debe crear un certificado SSL. Genere un certificado SSL usando el comando openssl:

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

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

Create SSL Certificate with OpenSSL

Luego cambie la resolución del archivo del certificado a 600:

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

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

cd / etc / proftpd / vim proftpd.conf

Descomentar la línea TLS:

Include /etc/proftpd/tls.conf

Guarde el archivo tls.conf y salga.

Luego edite el archivo de configuración TLS para habilitar la autenticación segura:

vim tls.conf

Descomentar 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

TLSVerifyClient                         off

TLSRequired                             on

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

systemctl reiniciar proftpd

Probando ProFTPD

Para verificar la configuración, intente conectarse a su servidor FTP usando un software como FileZilla (yo usofilezillaaquí) y complete la dirección IP del servidor, nombre de usuario, contraseña y puerto:

Server IP : 192.168.1.246
username : zenko
Password ******
Port : 21

Y luego haga clic en Conexión rápida. Se le pedirá que confirme el certificado SSL; simplemente haga clic en Aceptar.

Connect to an FTP server using FileZilla

Verás que has iniciado sesión en un servidor FTP con un certificado TLS/SSL.

FTP connection to the server was successful

comunicación

  • Proyecto de software ProFTPD.Enlace

Cómo instalar ProFTPD con TLS en Ubuntu 16.04 LTS

Artículos Relacionados