Está en la página 1de 10

Servicios de Red

LABORATORIO N° 03
Servicio FTP en Linux

CÓDIGO DEL CURSO: II4030

Alumno(s) Nota

REDES Y COMUNICACIONES DE DATOS


PROGRAMA DE FORMACIÓN REGULAR
Nro. DD-106
Servicio FTP en Linux Página 2/10

I. OBJETIVOS

● Implementar el servicio FTP en una red con equipos Linux.


● Configurar y administrar el servidor vsftpd (Very Secure FTP Daemon).

II. SEGURIDAD

Advertencia:

En este laboratorio está prohibida la manipulación del hardware,


conexiones eléctricas o de red; así como la ingestión de alimentos o
bebidas.

III. FUNDAMENTO TEÓRICO

El laboratorio está detallado paso a paso. Es importante que revise su texto para poder responder
algunas de las preguntas planteadas.

IV. NORMAS EMPLEADAS

No aplica

V. RECURSOS

● En este laboratorio cada alumno trabajará con un equipo con Windows 8.1 o posterior.
● Este equipo debe tener instalado el programa VMware Workstation o VirtualBox para la
definición y administración de los equipos virtuales.
● Cada equipo debe contar con una plantilla de Ubuntu Server 20.04.

VI. METODOLOGÍA PARA EL DESARROLLO DE LA TAREA

● El desarrollo del laboratorio es individual.


Nro. DD-106
Servicio FTP en Linux Página 3/10

VII. PROCEDIMIENTO

A. CREACIÓN DE LOS EQUIPOS VIRTUALES

1. Clonar la máquina virtual brindada por el docente (en canvas).


2. Esta solicitará un usuario y password, utilice las siguientes credenciales:

Usuario: tecsupadm
Password: ARCTecsup2

3. El hostname del sistema operativo deberá contar con la siguiente estructura: primera letra de
su primer nombre, seguido de su apellido paterno y de la palabra mail. Un nombre válido sería
jdiazmail para alguien que se llame Juan Diaz.
4. Anote a continuación el nombre que llevará su sistema operativo:
Nombre:

5. Para cambiar el nombre del sistema operativo ejecute los siguientes comandos:

NOTA
Reemplazar la parte en rojo por sus datos.

$ sudo hostnamectl set-hostname "su_nombre_de_equipo"

6. Edite el archivo /etc/hosts con el editor de texto de su preferencia y actualice la siguiente línea:
127.0.1.1 su_nombre_de_equipo

7. Cierre sesión y vuelva a ingresar con el usuario tecsupadm.


8. El prompt de la consola deberá mostrar su nuevo nombre de equipo. Si desea puede requerir
más información del sistema ejecutando el comando hostnamectl sin ninguna opción.

B. INSTALACIÓN DEL SERVICIO FTP

Configuración estática de red

1. Haciendo uso de los comandos de verificación de red complete la siguiente tabla


Dirección IP ???.???.???.???

Prefijo ??

Puerta de enlace ???.???.???.???

2. A continuación se configurará la interfaz ethernet mediante su archivo de configuración. Se


hará uso del editor de texto nano para establecer el valor correcto a las opciones mostradas

NOTA
El nombre del archivo puede cambiar.
Las líneas dentro del archivo que empiecen con # son comentarios y se pueden obviar.
La dirección IPv4 del servidor debe terminar en .12

/etc/netplan/00-installer-config.yaml

network:
Nro. DD-106
Servicio FTP en Linux Página 4/10

ethernets:
ens33:
dhcp4: false
addresses: [???.???.???.12/XX] # Dirección IPv4/Prefijo
gateway4: ???.???.???.??? # Puerta de enlace
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
version: 2

● Para que los cambios entren en vigencia se tiene que reiniciar el servicio de red
$ sudo netplan apply

NOTA
No olvide siempre probar la conectividad a internet y la resolución de nombres de dominio al
establecer la nueva configuración estática de red.

Instalación del servicio vsftpd (Very Secure FTP Daemon) a través de APT

1. Verifique que apt tenga en su lista de paquetes disponibles los requeridos para el servicio ftp:
$ apt show vsftpd
$ apt show ftp

2. Para proceder con la instalación ejecute el siguiente comando:


$ sudo apt install -y vsftpd

3. Espere a que termine la instalación y muestre ningún error


4. Verifique que el servicio web ya esté habilitado y funcionando, caso contrario utilice systemctl
para arrancarlo y habilitarlo:
$ systemctl status vsftpd

5. ¿Qué puertos emplea el servicio ftp en modo pasivo para su funcionamiento?

6. Deberá permitir el tráfico de dichos puertos a través del cortafuegos. Puede emplear los
siguientes comandos como referencia para crear las reglas en el cortafuegos.
$ sudo ufw allow port_number/protocol
$ sudo ufw allow from any to any proto protocol port min_port:max_port

NOTA
Puede reemplazar protocol por tcp o udp.

7. Valide que el estado del cortafuegos coincida con los servicios publicados:
$ sudo ufw status verbose
Nro. DD-106
Servicio FTP en Linux Página 5/10

Prueba básica del servicio

1. Para acceder al servicio mediante la siguiente dirección ftp.hostname.com, vamos a crear una
entrada en el archivo hosts.
2. Con el editor de textos de su preferencia edite el siguiente archivo:
/etc/hosts

3. Añadimos la línea al final del archivo.


127.0.0.1 ftp.hostname.xyz

NOTA
La configuración del servicio vsftpd se realiza en el archivo /etc/vsftpd.conf

4. Busque la directiva allow_anonymous en el archivo /etc/vsftpd.conf y cambie su valor por


YES. La línea debería quedar exactamente como se muestra a continuación:
allow_anonymous=YES

5. Reinicie el servicio vsftpd con systemctl.


6. Pruebe el servicio FTP instalado:
○ Se crearán los siguientes archivos de texto para publicarlos por medio de ftp.
○ Ejecute lo siguiente:
$ cd /srv/ftp
$ echo "nombre y apellido" | sudo tee nombresXX.txt
$ echo "TECSUP" | sudo tee tecsupXX.txt
$ echo "Servicios de red" | sudo tee cursoXX.txt
$ sudo chown :ftp *

○ Para acceder al servicio desde el mismo sistema operativo ejecutamos el siguiente


comando:
$ ftp ftp.hostname.xyz

○ En name ingrese anonymous y en password dejar vacío (presionar enter). Debe ingresar a
su servidor FTP.
○ Con el comando help, puede ver la lista de comandos disponibles en este entorno. Use el
comando ls para comprobar los archivos disponibles en el directorio.

○ Cierre la sesión FTP con el comando quit.

C. MODIFICACIÓN DE PROPIEDADES DEL SERVICIO FTP

1. Habilite los logs y defina los puertos por los que el servidor atenderá en modo pasivo, para ello
realice los siguientes cambios en el archivo /etc/vsftpd.conf:

○ Edite el archivo /etc/vsftpd.conf con el editor de texto de su preferencia y agregue las


siguientes líneas al final del mismo:
log_ftp_protocol=YES
vsftpd_log_file=/var/log/vsftpd.log
pasv_enable=Yes
pasv_min_port=10090
pasv_max_port=10100

○ Reinicie el servicio vsftpd, indique el comando para realizar ello:


Nro. DD-106
Servicio FTP en Linux Página 6/10

NOTA
Debido a que generalmente el cliente se encuentra detrás de un cortafuegos, lo cual le impide
aceptar conexiones TCP entrantes, se emplea el modo pasivo del servicio FTP.

2. Cree una cuenta de usuario para Juan Pérez (jperezXX con contraseña Virtual1234), utilice los
siguientes comandos:
$ sudo useradd -s /bin/bash -m jperezXX
$ sudo passwd jperezXX

3. Ejecute lo siguiente y tome una captura de la salida:


$ getent passwd jperezXX

D. PRUEBAS DESDE UN CLIENTE FTP EN WINDOWS

1. Acceda a su servidor FTP con la nueva cuenta de usuario, realice los siguientes pasos:
○ Descargue el cliente FTP Filezilla del siguiente enlace:
https://filezilla-project.org/download.php?type=client
○ Instale el programa por defecto.
○ Cuando abra FileZilla habilite los registros detallados para obtener más información cuando
iniciemos sesión en el servidor FTP.

○ Inicie sesión en el servidor FTP desde el equipo anfitrión (Windows) usando dicho programa.

○ El nombre del usuario será jperezXX, para la contraseña se debe usar la que se definió al
crear a dicho usuario.

○ Cierre la sesión FTP ( ).


○ En su servidor FTP modifique el mensaje que identifica al servidor editando el archivo
/etc/vsftpd.conf con vi en una terminal donde se encuentre el usuario root autenticado y
agregue la siguiente línea:
ftpd_banner=Bienvenido al servidor FTP de <nombre y apellido>

NOTA
Nro. DD-106
Servicio FTP en Linux Página 7/10

En la directiva anterior recuerde no dejar espacio en blanco entre “ftpd_banner” y el símbolo


“=”, ya que dará error al momento de reiniciar el servicio.

○ Reinicie el servicio vsftpd.


○ Inicie sesión nuevamente en el servidor FTP desde el programa cliente (FileZilla) con el
usuario jperezXX y compruebe que el mensaje de bienvenida ha sido modificado.

NOTA
Antes de volver a conectarse puede borrar los mensajes anteriores para evitar confusión,
dicha opción se encuentra en el mismo lugar que la opción para mostrar el registro
detallado.

○ Tome una captura de los registros mostrados con el mensaje de bienvenida modificado.

2. Establezca, como mensaje de bienvenida, el contenido de un archivo:


○ Cree el archivo de texto /etc/ftp.msg como administrador y escriba el siguiente contenido:
Servidor FTP de <nombre y apellido>
Administración de Redes y Comunicaciones
TECSUP <año actual>-<mes>

○ Edite el archivo /etc/vsftpd/vsftpd.conf, comente la directiva ftpd_banner y agregue la


siguiente línea:
banner_file=/etc/ftp.msg

○ Reinicie el servicio vsftpd.


○ Inicie sesión nuevamente, con FileZilla, en el servidor FTP y compruebe que el mensaje de
bienvenida ha sido modificado. Tome una captura de ello:

E. RESTRICCIÓN DE ACCESO A LOS USUARIOS

1. En una terminal nueva (Alt + F<N>) inicie sesión temporal con el usuario jperezXX y ejecute
los siguientes comandos
$ cp /etc/passwd ~/usersXX.txt

2. Desde FileZilla, establezca una conexión FTP con el usuario anonymous y luego con el
usuario jperezXX y complete la siguiente tabla:

NOTA
Para ingresar con el usuario anonymous en FileZilla sólo es necesario escribir el host y dar clic
en Quickconnect

Tarea anonymous jperezXX


¿Cuál es el directorio al que
accede en el servidor FTP?
¿Puede descargar archivos del
servidor? (retr)
¿Puede subir archivos al servidor?
(stor)
Nro. DD-106
Servicio FTP en Linux Página 8/10

3. Al ingresar con el usuario jperezXX notará que puede navegar entre las carpetas del sistema
operativo lo cual no es deseable. Realice el cambio necesario en el archivo de configuración
del servicio para evitar ello y corrobore con FileZilla:

4. Cierre la sesión temporal jperezXX y retorne a la sesión donde ingresó con tecsupadm.

5. Se quitará el permiso al usuario jperezXX para que no pueda acceder al servidor FTP:
○ Agregue al final del archivo de texto /etc/ftpusers el nombre de la cuenta de Juan Pérez
(jperezXX).
○ Reinicie el servicio vsftpd.
○ Intente acceder al servidor FTP con la cuenta jperezXX y verifique el cambio. Tome una
captura de los mensajes que obtiene.

NOTA
Debido a que las contraseñas ingresadas en el cliente FTP no están cifradas, pueden ser
capturadas con un sniffer. Lo recomendable es habilitar el cifrado de la comunicación
haciendo uso de llaves asimétricas.

6. Bloquee las cuentas de usuarios excepto la anonymous:


○ Abra el archivo /etc/vsftpd.conf y actualice el valor de la directiva local_enable como se
muestra a continuación:
local_enable=NO

○ Reinicie el servicio vsftpd.


○ Cree el usuario jdoeXX y asígnele una contraseña.
○ Desde FileZilla, intente acceder al servidor FTP con cualquiera de los usuarios creados
mientras no sea la de anonymous. ¿Cuál es el resultado de la modificación en la
configuración?

F. REGISTRO DE ACCESO AL SERVIDOR FTP (LOG)

NOTA
Todos las descargas y cargas de archivos son registrados y guardados en un archivo para su
posterior análisis.

1. Vea el contenido del registro de acceso a su servidor FTP abriendo el archivo /var/log/vsftpd.log.
2. De acuerdo a lo realizado en laboratorio, explique en qué situación se generan los siguientes logs:

○ 530 Permission denied

○ 530 This FTP server is anonymous only


Nro. DD-106
Servicio FTP en Linux Página 9/10
Nro. DD-106
Servicio FTP en Linux Página 10/10

VIII. OBSERVACIONES

IX. CONCLUSIONES

También podría gustarte