Cargando



Cómo instalar y configurar VSFTPD Ubuntu 18

Tutorial para saber cómo instalar y configurar VSFTPD usando SSL/TLS en Ubuntu 18 paso por paso.


jul 31 2018 11:11
Profesional
Total de Apartados : 6
feb 08 2021 10:31

La conexión FTP (File Transfer Protocol) ha sido usada hace mucho tiempo para la transferencia de archivos entre equipos de forma segura (relativamente) y completa, pero para nadie es un secreto que estamos en un mundo en línea donde la seguridad cada día es un tema más delicado y que toda la información que viaja en la red esta vulnerable a ser atacada o afectada por algún tipo de amenaza. Esto es algo delicado ya que FTP es muchas veces inseguro porque transmite datos junto con credenciales de usuario sin ningún tipo de cifrado.

 

Si somos usuarios frecuentes de FTP; Solvetic trae una solución integral para añadir mejores niveles de seguridad en todo el proceso de transferencia de archivos usando este protocolo y es VSFTPD.

 

Qué es VSFTPD
La utilidad VSFTPD se ha desarrollado como un servidor FTP con licencia GPL para sistemas UNIX, incluyendo Linux donde se destaca su seguridad, rapidez y estabilidad.

 

Prestaciones y funcionalidades
Dentro de sus prestaciones y funcionalidades encontramos:
  • Permite realizar configuraciones de IP virtual
  • Podemos crear usuarios virtuales
  • Operación autónoma o inetd
  • Amplia configurabilidad por parte del usuario
  • Gestiona de forma centralizada el ancho de banda
  • Configuración de dirección IP por recurso o Per-source-IP
  • Establece límites por fuente de IP
  • Soporta IPv6
  • Soporte de encriptación a través de la integración SSL

 

Utilización VSFTPD
Actualmente VSFTPD es usado por muchos sitios de FTP donde se destacan:
  • ftp.redhat.com
  • ftp.suse.com
  • ftp.debian.org
  • ftp.freebsd.org
  • ftp.gnu.org
  • ftp.gnome.org
  • ftp.kde.org
  • ftp.kernel.org
  • rpmfind.net
  • ftp.linux.org.uk

 

VSFTPD emplea un diseño seguro para que todas las transmisiones siempre estén protegidas y así tengamos la seguridad de que no estarán expuestas a atacantes, para ello VSFTPD implementa y ejecuta:

  • Todo el análisis y la gestión en datos de red remotos que son considerados potencialmente maliciosos se llevan a cabo en un proceso que se ejecuta como un usuario sin privilegios y este proceso se ejecuta en una chroot (), con el fin de garantizar que solo se pueda acceder al área de archivos ftp.
  • Todas las operaciones con privilegios son controladas en un proceso primario privilegiado, el código para este proceso principal privilegiado es lo más pequeño posible por seguridad.
  • VSFTPD-2.0.0 introduce soporte para SSL/TLS usando OpenSSL, así, todo el análisis de protocolo se realiza en un chroot (), ejecutándose en un entorno no privilegiado de usuario, con ello, tanto el protocolo OpenSSL preautenticado como el posterior a la autenticación estarán seguros.

 

Ahora veremos como instalar VSFTPD en Ubuntu 18.

 

Tutorial completo sobre cómo instalar, configurar y acceder a Monitorix para monitorizar el sistema al detalle en UBuntu 18.04.

 


1. Cómo instalar VSFTPD en Ubuntu 18

 

Paso 1

Por defecto, VSFTPD está disponible en el repositorio de Ubuntu 18.04, de modo que para su instalación ejecutaremos lo siguiente:
sudo apt-get install vsftpd -y

 

Paso 2

Una vez que VSTFPD haya sido instalado, vamos a iniciar el servicio Vsftpd y habilitarlo en el arranque de Ubuntu 18:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd

 


2. Creación de la estructura de directorio de VSFTPD en Ubuntu 18

 

Paso 1

En primer lugar, vamos a crear el usuario para acceder a través de FTP, para ello ejecutamos lo siguiente:
sudo adduser vsftpd
Será necesario completar la información, si aplica, desplegada:

 

 

 

 

Paso 2

Ahora, vamos a crear el directorio ftp y establecer la propiedad con el siguiente comando:
sudo mkdir /home/vsftpd/ftp
sudo chown nobody:nogroup /home/vsftpd/ftp
sudo chmod a-w /home/vsftpd/ftp

 

Paso 3

El siguiente paso consiste en crear un directorio para cargar los archivos y se debe brindar propiedad al usuario de vsftp así:
sudo mkdir /home/vsftpd/ftp/test
sudo chown vsftpd:vsftpd /home/vsftpd/ftp/test

 


3. Cómo configurar VSFTPD en Ubuntu 18

 

Paso 1

Ahora, vamos a llevar a cabo algunas configuraciones para el servidor FTP, en primer lugar, crearemos una copia de seguridad del archivo de configuración original en caso de que algo salga mal y así contar con la integridad del archivo original, para ello ejecutamos lo siguiente:
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

 

Paso 2

Accederemos al archivo de configuración usando el editor deseado:
sudo nano /etc/vsftpd.conf
Este será el archivo de configuración:

 

 

 

 

Paso 3

Allí añadiremos las siguientes líneas al final de este 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/vsftpd.userlist
userlist_deny=NO

 

Paso 4

Guardamos los cambios usando la combinación de teclas Ctrl + O y salimos del editor usando Ctrl + X. Ahora, vamos a agregar el usuario de vsftp al archivo /etc/vsftpd.userlist para permitir el acceso FTP:
sudo nano /etc/vsftpd.userlist
Allí añadimos el usuario creado para FTP:

 

 

 

 

Paso 5

Guardamos los cambios usando las teclas Ctrl + O y salimos usando Ctrl + X. Reiniciamos el servicio de VSFTPD para aplicar los cambios:
sudo systemctl restart vsftpd

4. Cómo acceder a VSFTPD en Ubuntu 18

 

Paso 1

Para acceder a VSFTPD iremos a algún navegador y usaremos la siguiente sintaxis:
ftp://Direccion_IP
Al acceder al navegador ingresaremos el usuario y contraseña asignados:

 

 

 

instalar-y-configurar-VSFTPD-Ubuntu-18-10.png

 

Paso 2

Pulsamos en Aceptar y tendremos acceso a el servidor a través de FTP:

 

instalar-y-configurar-VSFTPD-Ubuntu-18-11.png

 

De este modo accedemos con los valores básicos de seguridad de FTP.

 


5. Cómo asegurar la conexión VSFTPD usando SSL/TLS


Para una mejor seguridad a la hora de transferir información, vamos a habilitar SSL / TLS con el fin de cifrar los datos transferidos a través de FTP.

 

Paso 1

Para eso, se debe crear un certificado usando OpenSSL con el siguiente comando:
sudo mkdir /etc/cert
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/cert/vsftpd.pem -out /etc/cert/vsftpd.pem

instalar-y-configurar-VSFTPD-Ubuntu-18-12.png

 

Paso 2

En este caso, cuando se crea el certificado se solicitan detalles como:
  • Nombre
  • Ciudad
  • Pais
  • Correo, etc.
Estos campos no son obligatorios de completar. Una vez realizado esto, vamos a realizar algunos cambios en el archivo vsftpd.conf usando el siguiente comando:
sudo nano /etc/vsftpd.conf

Allí agregaremos las siguientes líneas al final del archivo:

rsa_cert_file=/etc/cert/vsftpd.pem
rsa_private_key_file=/etc/cert/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

instalar-y-configurar-VSFTPD-Ubuntu-18-13.png

 

Guardamos los cambios usando las teclas Ctrl + O y salimos del editor usando las teclas Ctrl + X.

 


6. Cómo acceder a FTP usando SSL/TLS en Ubuntu 18

 

Paso 1

No será posible acceder al servidor FTP a través de SSL/TLS desde un navegador, para ello será necesario instalar el cliente FTP de FileZilla con el fin de acceder al servidor FTP ya que este admite FTP sobre SSL/TLS, para instalar este cliente vamos a ejecutar lo siguiente:
sudo apt-get install filezilla -y
Una vez instalado, en este caso vamos a acceder desde Ubuntu 18.04 Desktop, accedemos a la aplicación donde veremos lo siguiente:

 

 

 

 

Paso 2

Allí vamos al menú Archivo / Gestor de sitios y en la nueva ventana pulsamos en el botón Nuevo sitio y lo configuramos de la siguiente manera:
  • Asignamos un nombre al sitio FTP
  • En el campo Servidor ingresamos la IP del servidor a conectar
  • En el campo Protocolo seleccionamos FTP – Protocolo de Transferencia de Archivos
  • En la sección Cifrado definimos Requiere FTP explícito sobre TLS
  • En el campo Modo de acceso establecemos Preguntar la contraseña e ingresamos el nombre del usuario creado en VSFTPD

 

 

 

instalar-y-configurar-VSFTPD-Ubuntu-18-15.png

 

Paso 3

Pulsamos en el botón Conectar y se desplegará el siguiente mensaje. Allí definimos si deseamos guardar o no las contraseñas.

 

instalar-y-configurar-VSFTPD-Ubuntu-18-16.png

 

Paso 4

Pulsamos en Aceptar e ingresaremos la contraseña del usuario seleccionado:

 

instalar-y-configurar-VSFTPD-Ubuntu-18-17-a.png

 

Paso 5

Pulsamos en Aceptar y ahora veremos el certificado que se ha añadido con los detalles que hemos configurado:

 

instalar-y-configurar-VSFTPD-Ubuntu-18-17.png

 

Paso 6

Pulsamos en Aceptar y ahora se tendrá acceso al servidor FTP protegido con SSL/TLS:

 

 

Hemos visto como usar VSFTPD para crear conexiones seguras, completas y dinámicas en Linux.

 

Aquí tienes la forma de comprobar los puertos abiertos o cerrados con comandos en sistemas Linux (Ubuntu, Debian, Fedora y CentOS).


¿Te ayudó este Tutorial?


5 Comentarios


paul221296
mar 25 2019 01:22

hola, como hago para acceder a mi servidor ftp desde otra equipo, porque me funciona desde la pc donde lo instale, pero trate de acceder desde otra pc conectada a la misma red (ingresando en el navegador "ftp://mi-ip") y no pasa nada. Gracias


leyre_glez
feb 10 2020 11:14

En el punto 2, cuando dice:

 

sudo adduser vsftp

 

debería ser:

 

sudo adduser vsftpd

 

porque luego se ha hecho toda la instalación como si el usuario llevase una d al final.


leyre_glez
feb 10 2020 11:21

En el punto 5, paso 2, habéis puesto esto:

 

Allí agregaremos las siguientes líneas al final del archivo:

 

como si fuese un comando.


rauldavid45
jul 09 2020 21:31

Que tal, todo me salio bien, hasta instale el certificado ssl, solo que al querer subir filas, no me permite hacerlo con el error 553, hace falta alguna linea extra en .conf? o que puede ser

En el punto 5, paso 2, habéis puesto esto:

 

Allí agregaremos las siguientes líneas al final del archivo:

 

como si fuese un comando.

 

Gracias por la sugerencia! fueron editados esos detalles. Recordamos que puede editar por su cuenta el tutorial si le apatece y corregir alguna cosa para salir como co-autor del mismo! 

Saludos.

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X