Instalar un servidor FTP simple en Ubuntu 18.04 Bionic Beaver con vsftpd es un proceso sencillo. En este artículo, cubriremos la instalación de los paquetes básicos requeridos, la configuración de un usuario, la configuración del cifrado y luego la prueba de la conexión.

Instalar vsftpd

  1. Ingrese el siguiente comando para instalar vsftpd
    sudo apt-get install vsftpd -y
  2. Inicie el servicio vsftpd y configúrelo para que se inicie en el arranque
    sudo systemctl start vsftpd
    sudo systemctl enable vsftpd

Configurar la estructura de directorios para FTP

  1. Crea un usuario
    sudo adduser testuser1
  2. Crea un directorio y establece la propiedad
    sudo mkdir /home/testuser1/ftp
    sudo chown nobody:nogroup /home/testuser1/ftp
    sudo chmod a-w /home/testuser1/ftp
  3. Cree un directorio para cargar archivos y otorgar propiedad al usuario de prueba
    sudo mkdir /home/testuser1/ftp/test
    sudo chown testuser1:testuser1 /home/testuser1/ftp/test

Configurar vsftpd

  1. Realice una copia de seguridad del archivo de configuración vsftpd original
    sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
  2. Abra y edite el archivo vsftpd.conf
    sudo nano /etc/vsftpd.conf
  3. Agregue lo siguiente al archivo
    listen=NO
    listen_ipv6=YES
    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    use_localtime=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    chroot_local_user=YES
    secure_chroot_dir=/var/run/vsftpd/empty
    pam_service_name=vsftpd
    pasv_enable=Yes
    pasv_min_port=10000
    pasv_max_port=11000
    user_sub_token=$USER
    local_root=/home/$USER/ftp
    userlist_enable=YES
    userlist_file=/etc/vsftpduserlist.conf
    userlist_deny=NO
  4. Guardar y cerrar el archivo de configuraciónvsftpd ofrece muchas opciones de configuración, por lo que es posible que deba realizar más ajustes según la configuración de su servidor local.
  5. Agregue el usuario testuser1 que creamos al archivo de lista de usuarios vsftpd
    sudo nano /etc/vsftpduserlist.conf
  6. Reinicie el servicio vsftpd para que estos cambios surtan efecto
    sudo systemctl restart vsftpd

Configurar la seguridad con SSL / TLS

  1. > Crea un certificado de seguridad
    sudo mkdir /etc/certs
    
    sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/certs/vsftpd.pem -out /etc/certs/vsftpd.pem
  2. Abra el archivo vsftpd.conf
    sudo nano /etc/vsftpd.conf
  3. Agregue las siguientes líneas al archivo
    rsa_cert_file=/etc/certs/vsftpd.pem
    rsa_private_key_file=/etc/certs/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
  4. Guarde el archivo y reinicie vsftpd
    sudo systemctl restart vsftpd

Para probar, configure su cliente FTP preferido para conectarse a su servidor y asegúrese de establecer la configuración de cifrado cuando inicie sesión.

Después de iniciar sesión, debería ver el contenido del servidor FTP.

Echa un vistazo a los 3 mejores servicios de alojamiento web