1-12-2023 Servicio FTP
Linux, FTP VSFTPD
Enrique Díaz Valenzuela
2 ASIR
Enrique Díaz Valenzuela
ÍNDICE
Contenido
ÍNDICE .............................................................................. 1
Boletín Linux, FTP VSFTPD ................................................... 2
1.- DATOS GENERALES DE LA PRÁCTICA ............................... 2
1.1.- Descripción general ................................................. 2
1.2.- Duración aproximada............................................... 3
1.3.- MATERIAL UTILIZADO .............................................. 3
2.- DESARROLLO DE LA PRÁCTICA ....................................... 4
3.- PROBLEMAS ENCONTRADOS Y SOLUCIONES APLICADAS ... 15
4.- CHULETA ................................................................. 16
5.- Conclusiones PERSONALES / GRUPALES ......................... 16
6.- BIBLIOGRAFÍA / WEBGRAFÍA........................................ 16
P á g i n a 1 | 16
Enrique Díaz Valenzuela
Boletín Linux, FTP VSFTPD
1.- DATOS GENERALES DE LA PRÁCTICA
1.1.- Descripción general
1.- ENUNCIADO DE LA PRÁCTICA
Sobre el servidor GNU/Linux de tu laboratorio implementa un servidor FTP con VSFTP
que de servicio a la siguiente infraestructura:
• Usuarios del sistema:
Todos los usuarios estarán enjaulados en su propio directorio teniendo permiso de escritura en
sus carpetas, excepto el usuario coordinador que puede recorrer toda la estructura, pudiendo
listar y leer la información del resto de usuarios descritos anteriormente.
• Habrá también un usuario anónimo que accederá al usuario /srv/ftp en modo sólo
lectura.
PROCEDIMIENTO
1.1.- INSTALACIÓN DEL SERVICIO
1.2.- CREACIÓN DE USUARIOS → sudo useradd -d /home/dir_usuario -m -s /bin/false
usuario
1.3.- CONFIGURACIÓN
1.4.- COMPROBACIONES DESDE CLIENTE
A) TERMINAL:
o Conéctate al servidor FTP, como usuario mostrador1.
o Crea los directorios “resumen” y “movimientos” en su cuenta.
o Renombra el directorio “resumen” como “devoluciones”.
o Sube un fichero de texto al directorio movimientos.
o Sube un fichero PDF al directorio devoluciones.
o Renombra el fichero PDF subido como “[Link]”
o Borra el directorio “movimientos”
o Muestra un listado con el contenido del directorio.
o Abandona la conexión
P á g i n a 2 | 16
Enrique Díaz Valenzuela
B) MODO GRÁFICO:
Desde un cliente FTP:
o Configura dos conexiones, una para el usuario mostrador1 y otra para el usuario
coordinador de manera que haya dos pestañas de conexión.
o Compara que el usuario coordinador puede moverse por la estructura de
directorios y el mostrador1 no.
o Guarda ambas conexiones para utilizarlas posteriormente.
o Accede ahora como usuario anónimo y comprueba que puedes descargar un
archivo de texto que hayas dejado previamente.
1.5.- OTRA CONFIGURACIÓN BÁSICA
Instala en el servidor el módulo de vsftpd de webmin. Desde webmin realiza las
siguientes configuraciones:
o Activa el LOG del servicio vsftpd para que se guarde en un fichero “[Link]”.
o Cambia el mensaje de bienvenida a: “Bienvenido/a Digital Ocean ftp de
Tu_nombre_y_apellidos”.
o Establece unos límites de transferencia de 4000KB/s para todos los usuarios
o Establece como máximo 10 conexiones simultáneas.
o DEMUESTRA el funcionamiento del mensaje de bienvenida y la existencia y
contenido del archivo [Link]. Realiza alguna interpretación del archivo .log.
1.6.- UN POCO MÁS…
o Comprueba que el servidor está escuchando en su correspondiente puerto de
control. (netstat -lno |grep 21)
o Impide/desactiva el modo activo por seguridad. Activa el modo pasivo, indica el
rango de puertos pasivos 50000 a 50100. (pasv_enable, pasv_max_port,
pasv_min_port, port_enable)
o Añade un intérprete no válido (/bin/false o /usr/sbin/nologin) a las shells del
sistema (/etc/shells). Añade un nuevo usuario llamado “limitado” con dicha shell
de manera que no pueda iniciar sesión mediante SSH/telnet pero si acceder a
FTP.
o Comenta en el archivo [Link] las directivas que has utilizado y exporta dicho
archivo para su entrega en esta práctica.
o Configura el servicio FTP implementándolo sobre un canal seguro TLS/SSL. La
seguridad de cifrado debe ser alta y sólo permitirse TLS (no SSLv2 ni v3).
AYUDA: How To Set Up vsftpd for a User's Directory on Ubuntu 20.04 |
DigitalOcean
1.2.- Duración aproximada
− X horas.
1.3.- MATERIAL UTILIZADO
− CT ubuntu 22 en Proxmox
P á g i n a 3 | 16
Enrique Díaz Valenzuela
2.- DESARROLLO DE LA PRÁCTICA
1.- ENUNCIADO DE LA PRÁCTICA
Sobre el servidor GNU/Linux de tu laboratorio implementa un servidor FTP con VSFTP
que de servicio a la siguiente infraestructura:
• Usuarios del sistema:
Todos los usuarios estarán enjaulados en su propio directorio teniendo permiso de escritura en
sus carpetas, excepto el usuario coordinador que puede recorrer toda la estructura, pudiendo
listar y leer la información del resto de usuarios descritos anteriormente.
• Habrá también un usuario anónimo que accederá al usuario /srv/ftp en modo sólo
lectura.
PROCEDIMIENTO
1.1.- INSTALACIÓN DEL SERVICIO
Comienzo por actualizar mi contenedor usando Update y Upgrade. Posteriormente
descargaremos nuestro servidor FTP, hay varios, pero en esta práctica usaremos
VSFTPD:
Posteriormente, lo habilitaremos para que se active cada vez que iniciamos la máquina:
P á g i n a 4 | 16
Enrique Díaz Valenzuela
1.2.- CREACIÓN DE USUARIOS → sudo useradd -d /home/dir_usuario -m -s /bin/false
usuario
Para que funcione, debemos añadir el shell en nuestro archivo de shells:
¿Por qué /bin/false? En este ecosistema o shell, solo permitimos que se pueda usar ftp,
subir y descargar archivos, pero lo loguarse en el sistema.
Para ver si el usuario se creó correctamente, usaré un CMD de otra máquina para ver
si me deja acceder con el usuario y la contraseña que acabo de crear.
Creo de la misma manera el resto de usuarios:
P á g i n a 5 | 16
Enrique Díaz Valenzuela
1.3.- CONFIGURACIÓN
Enjaulo a los todos los usuarios salvo el coordinador, que puede recorrer la estructura.
Antes de hacer las comprobaciones, reiniciamos el servicio.
P á g i n a 6 | 16
Enrique Díaz Valenzuela
1.4.- COMPROBACIONES DESDE CLIENTE
A) TERMINAL:
o Conéctate al servidor FTP, como usuario mostrador1.
o Crea los directorios “resumen” y “movimientos” en su cuenta.
o Renombra el directorio “resumen” como “devoluciones”.
o Sube un fichero de texto al directorio movimientos.
Primero, creo el fichero de texto en mi escritorio de mi máquina local (Windows):
P á g i n a 7 | 16
Enrique Díaz Valenzuela
Ahora desde el terminal, accedo al directorio “movimientos”
Utilizo el comando put para subir el fichero de antes (importante poner bien la ruta):
C:\Users\diazv\Escritorio\[Link]
P á g i n a 8 | 16
Enrique Díaz Valenzuela
o Sube un fichero PDF al directorio devoluciones.
Ignorar el fichero .txt que aparece en el ls, lo copie aquí por error mientras
experimentaba.
o Renombra el fichero PDF subido como “[Link]”
P á g i n a 9 | 16
Enrique Díaz Valenzuela
o Borra el directorio “movimientos”
La forma que he encontrado
o Muestra un listado con el contenido del directorio.
o Abandona la conexión
P á g i n a 10 | 16
Enrique Díaz Valenzuela
B) MODO GRÁFICO:
Desde un cliente FTP:
o Configura dos conexiones, una para el usuario mostrador1 y otra para el usuario
coordinador de manera que haya dos pestañas de conexión.
o Compara que el usuario coordinador puede moverse por la estructura de
directorios y el mostrador1 no.
P á g i n a 11 | 16
Enrique Díaz Valenzuela
o Guarda ambas conexiones para utilizarlas posteriormente.
o Accede ahora como usuario anónimo y comprueba que puedes descargar un
archivo de texto que hayas dejado previamente.
P á g i n a 12 | 16
Enrique Díaz Valenzuela
A destacar: los usuarios anónimos solo verán los archivos creados en este directorio:
1.5.- OTRA CONFIGURACIÓN BÁSICA
Instala en el servidor el módulo de vsftpd de webmin. Desde webmin realiza las
siguientes configuraciones:
Descargar Webmin:
Descargamos el paquete gnupg antes de instalar webmin:
Ejecutamos los siguientes comandos para poder ejecutar el comando de descarga de
webmin:
P á g i n a 13 | 16
Enrique Díaz Valenzuela
Y por fin, podremos descargar webmin:
Accedo desde el navegador usando la ip de mi contenedor y el puerto 10000.
Usuario → root
Contraseña → la contraseña de mi contenedor
NO FUNCIONA
o Activa el LOG del servicio vsftpd para que se guarde en un fichero “[Link]”.
o Cambia el mensaje de bienvenida a: “Bienvenido/a web min ftp de
Tu_nombre_y_apellidos”.
o Establece unos límites de transferencia de 4000KB/s para todos los usuarios
o Establece como máximo 10 conexiones simultáneas.
P á g i n a 14 | 16
Enrique Díaz Valenzuela
o DEMUESTRA el funcionamiento del mensaje de bienvenida y la existencia y
contenido del archivo [Link]. Realiza alguna interpretación del archivo .log.
1.6.- UN POCO MÁS…
o Comprueba que el servidor está escuchando en su correspondiente puerto de
control. (netstat -lno |grep 21)
o Impide/desactiva el modo activo por seguridad. Activa el modo pasivo, indica el
rango de puertos pasivos 50000 a 50100. (pasv_enable, pasv_max_port,
pasv_min_port, port_enable)
o Añade un intérprete no válido (/bin/false o /usr/sbin/nologin) a las shells del
sistema (/etc/shells). Añade un nuevo usuario llamado “limitado” con dicha shell
de manera que no pueda iniciar sesión mediante SSH/telnet pero si acceder a
FTP.
o Comenta en el archivo [Link] las directivas que has utilizado y exporta dicho
archivo para su entrega en esta práctica.
o Configura el servicio FTP implementándolo sobre un canal seguro TLS/SSL. La
seguridad de cifrado debe ser alta y sólo permitirse TLS (no SSLv2 ni v3).
AYUDA: How To Set Up vsftpd for a User's Directory on Ubuntu 20.04 |
DigitalOcean
3.- PROBLEMAS ENCONTRADOS Y SOLUCIONES APLICADAS
P á g i n a 15 | 16
Enrique Díaz Valenzuela
4.- CHULETA
5.- CONCLUSIONES PERSONALES / GRUPALES
6.- BIBLIOGRAFÍA / WEBGRAFÍA
Documentación de la Moodle
P á g i n a 16 | 16