GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar ProFTPD con TLS en Ubuntu 18.04 LTS

ProFTPD es un servidor FTP gratuito, de código abierto y el más popular para sistemas operativos similares a Unix. ProFTPD le permite crear una conexión FTP entre su computadora local y el servidor remoto. Es un servidor FTP versátil que admite TLS (SSL) para conexiones seguras.

Características

  • Admite IPv4 e IPv6.
  • Admite .ftpaccess para asegurar por directorio.
  • Permítanos configurar varios servidores FTP virtuales y servicios FTP anónimos.
  • Proporcione soporte para contraseña oculta, utmp/wtmp, cifrado SSL/TLS y RADIUS.
  • Puede ejecutarse como servidor independiente o desde inetd/xinetd.

En este tutorial, aprenderemos cómo instalar ProFTPD y asegurarlo con TLS en el servidor Ubuntu 18.04

Requisitos

  • Un servidor con Ubuntu 18.04.
  • Se configura una dirección IP estática 192.168.0.101 en el servidor.
  • Se configura una contraseña raíz en su servidor.

Cómo empezar

Antes de comenzar, deberá actualizar su sistema con la última versión. Puede hacerlo ejecutando el siguiente comando:

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

Una vez que su servidor esté actualizado, reinícielo para aplicar los cambios.

Instalar ProFTPD

De forma predeterminada, ProFTPD está disponible en el repositorio predeterminado de Ubuntu 18.04. Puede instalarlo simplemente ejecutando el siguiente comando:

apt-get install proftpd -y

Después de instalar ProFTPD, inicie el servicio ProFTPD y habilítelo para que se inicie en el momento del arranque con el siguiente comando:

systemctl start proftpd
systemctl enable proftpd

Puede verificar el estado del servicio ProFTPD con el siguiente comando:

systemctl status proftpd

Debería ver el siguiente resultado:

? proftpd.service - LSB: Starts ProFTPD daemon
   Loaded: loaded (/etc/init.d/proftpd; generated)
   Active: active (running) since Sat 2019-05-25 09:18:19 UTC; 31s ago
     Docs: man:systemd-sysv-generator(8)
    Tasks: 1 (limit: 1114)
   CGroup: /system.slice/proftpd.service
           ??1927 proftpd: (accepting connections)

May 25 09:18:19 ubuntu1804 systemd[1]: Starting LSB: Starts ProFTPD daemon...
May 25 09:18:19 ubuntu1804 proftpd[1906]:  * Starting ftp server proftpd
May 25 09:18:19 ubuntu1804 proftpd[1906]:    ...done.
May 25 09:18:19 ubuntu1804 systemd[1]: Started LSB: Starts ProFTPD daemon.

Los archivos de configuración predeterminados de ProFTPD se encuentran en /etc/proftpd/proftpd.conf. Puedes verlo con el siguiente comando:

cat /etc/proftpd/proftpd.conf

Debería ver el siguiente resultado:

#
# /etc/proftpd/proftpd.conf -- This is a basic ProFTPD configuration file.
# To really apply changes, reload proftpd after modifications, if
# it runs in daemon mode. It is not required in inetd/xinetd mode.
# 

# Includes DSO modules

Include /etc/proftpd/modules.conf

# Set off to disable IPv6 support which is annoying on IPv4 only boxes.
UseIPv6                         on
# If set on you can experience a longer connection delay in many cases.
IdentLookups                    off

ServerName                      "Debian"
# Set to inetd only if you would run proftpd by inetd/xinetd.
# Read README.Debian for more information on proper configuration.
ServerType                              standalone
DeferWelcome                    off

MultilineRFC2228                on
DefaultServer                   on
ShowSymlinks                    on

TimeoutNoTransfer               600
TimeoutStalled                  600
TimeoutIdle                     1200

DisplayLogin                    welcome.msg
DisplayChdir                    .message true
ListOptions                     "-l"

DenyFilter                      \*.*/

# Use this to jail all users in their homes 
# DefaultRoot                   ~
# Port 21 is the standard FTP port.
Port                            21
MaxInstances                    30
# Set the user and group that the server normally runs at.
User                            proftpd
Group                           nogroup
# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
Umask                           022  022
# Normally, we want files to be overwriteable.
AllowOverwrite                  on
TransferLog /var/log/proftpd/xferlog
SystemLog   /var/log/proftpd/proftpd.log

Puede cambiar la configuración anterior según sus requisitos, como se muestra a continuación:

  • Nombre del servidor: Puede cambiarlo como su nombre de servidor predeterminado.
  • UsarIPV6: Puede deshabilitarlo cambiándolo a apagado.
  • Raíz predeterminada: Puede descomentar esta línea para restringir a los usuarios con sus carpetas de inicio.
  • Puerto: Puede definir su propio puerto cambiándolo.
  • Registro del sistema: La ubicación predeterminada del archivo de registro. Puede cambiarlo según sus requisitos.

Una vez que haya terminado, puede continuar con el siguiente paso.

ProFTPD seguro con TLS

ProFTPD ya está instalado. Ahora, deberá configurar ProFTPD con TLS para conexiones FTP seguras.

Antes de comenzar, deberá instalar OpenSSL en su servidor. Puede instalarlo simplemente ejecutando el siguiente comando:

apt-get install openssl -y

Una vez completada la instalación, genere certificados SSL para ProFTPd con el siguiente comando:

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

Responda todas las preguntas como se muestra a continuación:

Generating a 1024 bit RSA private key
.++++++
.......................++++++
writing new private key to '/etc/ssl/private/proftpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:GUJ
Locality Name (eg, city) []:Junagadh
Organization Name (eg, company) [Internet Widgits Pty Ltd]:IT
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:HITESH
Email Address []:[email protected]

El comando anterior generará dos archivos /etc/ssl/private/proftpd.key y /etc/ssl/certs/proftpd.crt.

A continuación, proporcione los permisos adecuados a los archivos generados con el siguiente comando:

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

Una vez que haya terminado, puede continuar con el siguiente paso.

Configurar ProFTPD para usar SSL

A continuación, deberá configurar ProFTPD para usar certificados SSL. Puede hacerlo editando el archivo /etc/proftpd/proftpd.conf:

nano /etc/proftpd/proftpd.conf

Descomente la siguiente línea:

Include /etc/proftpd/tls.conf

Guarde y cierre el archivo cuando haya terminado. Luego, abra el archivo /etc/proftpd/tls.conf:

nano /etc/proftpd/tls.conf

Cambie las siguientes líneas:

TLSRSACertificateFile /etc/ssl/certs/proftpd.crt
TLSRSACertificateKeyFile /etc/ssl/private/proftpd.key
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol SSLv23
TLSRequired on
TLSOptions NoCertRequest EnableDiags NoSessionReuseRequired
TLSVerifyClient off

Guarde y cierre el archivo cuando haya terminado. Luego, reinicie el servicio ProFTPD con el siguiente comando:

systemctl restart proftpd

Una vez que haya terminado, puede continuar con el siguiente paso.

Crear usuario para ProFTPD

A continuación, deberá crear un usuario ProFTPD para acceder al servidor. Puedes hacerlo con el siguiente comando:

adduser ftp1

Responda todas las preguntas como se muestra a continuación:

Adding user `ftp1' ...
Adding new group `ftp1' (1006) ...
Adding new user `ftp1' (1002) with group `ftp1' ...
Creating home directory `/home/ftp1' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
Changing the user information for ftp1
Enter the new value, or press ENTER for the default
	Full Name []: 
	Room Number []: 
	Work Phone []: 
	Home Phone []: 
	Other []: 
Is the information correct? [Y/n] Y

Una vez que haya terminado, puede continuar con el siguiente paso.

Acceda al servidor ProFTPD usando FileZilla

ProFTPD ahora está instalado y configurado, es hora de acceder a ProFTPD a través de FileZilla desde el sistema del Cliente.

Primero, deberá instalar FileZilla en su sistema Cliente. Puede instalarlo simplemente ejecutando el siguiente comando:

apt-get install filezilla -y

Una vez que se haya completado la instalación, puede abrir FileZilla desde Unity dash como se muestra a continuación:

Ahora, haz clic en el Administrador del sitio en el panel lateral izquierdo y cree un nuevo sitio. Debería ver la siguiente página:

Ahora, proporcione la dirección IP de su servidor FTP, seleccione el protocolo, seleccione Cifrado, seleccione el tipo de inicio de sesión, proporcione el nombre de usuario y la contraseña. Luego, haga clic en Conectar botón. Debería ver la siguiente página:

Ahora, acepte el certificado, marque la casilla "Confiar siempre en el certificado en futuras sesiones" y haga clic en Aceptar. botón. Después de iniciar sesión correctamente, debería ver la siguiente página:

Ahora puede transferir archivos de forma segura a través de SSL/TLS.

¡Felicidades! Ha instalado y configurado correctamente el servidor ProFTPD y lo ha protegido con cifrado SSL/TLS. Ahora puede transferir su archivo desde su computadora local al servidor FTP fácilmente con cifrado seguro. Siéntase libre de preguntarme si tiene alguna pregunta.


Ubuntu
  1. Cómo instalar Docker en Ubuntu 22.04/20.04 LTS

  2. Cómo instalar PlayOnLinux en Ubuntu 20.04 LTS

  3. Cómo instalar MariaDB en Ubuntu 20.04 LTS

  4. Cómo instalar Ansible en Ubuntu 20.04 LTS / 21.04

  5. Cómo instalar ProFTPD en Ubuntu 20.04 LTS

Cómo instalar Ubuntu 20.04 LTS paso a paso con capturas de pantalla

Cómo instalar Go en Ubuntu 22.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 Go en Ubuntu 20.04 LTS

Cómo instalar phpMyAdmin con Nginx en Ubuntu 20.04 LTS