ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
SISTEMAS OPERATIVOS II
UNIVERSIDAD PRIVADA DE TACNA
FACULTAD DE INGENIERIA
Escuela Profesional de Ingeniería de Sistemas
INFORME DE LABORATORIO Nº 3.1
“FTP”
Curso: Sistemas Operativos 2
Docente: Ing. Alex Yanqui Constancio
Cuadros Napa, Raúl Marcelo (2017057851)
Tacna – Perú
2020
1
Ing. Alex Yanqui Constancio
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
SISTEMAS OPERATIVOS II
INDICE
I. INFORMACIÓN GENERAL.............................................................................................................4
- Objetivos...................................................................................................................................... 4
- Equipos, materiales, programas y recursos utilizados.................................................................4
II. MARCO TEORICO..........................................................................................................................4
III. PROCEDIMIENTO .........................................................................................................................5
IV. ANALISIS E INTERPRETACION DE RESULTADOS ....................................................................7
V. CUESTIONARIO ............................................................................................................................8
CONCLUSIONES....................................................................................................................................8
RECOMENDACIONES...........................................................................................................................8
BIBLIOGRAFIA.......................................................................................................................................8
WEBGRAFIA...........................................................................................................................................8
2
Ing. Alex Yanqui Constancio
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS
SISTEMAS OPERATIVOS II
I. INFORMACION GENERAL
FTP (en inglés File Transfer Protocol o Protocolo de Trasferencia de Archivos), es
el protocolo que permite el intercambio de archivos entre diferentes sistemas a
través de la red. Por tanto, un servidor FTP, es el encargado de permitir el
intercambio de datos entre cliente-servidor, además de permitir interactuar con los
ficheros ubicados en el servidor, pudiendo editarlos, eliminarlos y/o modificarlos
según las directivas establecidas en el servidor.
II. OBJETIVO
Instalación de un servidor FTP
Habilitación y funcionamiento del servidor FTP
III. MATERIALES
CPU
Soft Virtualizador
Iso centOS 8 (7)
3
Ing. Alex Yanqui Constancio
IV. FUNDAMENTO TEORICO
3.1 ¿Qué es FTP?
FTP (en inglés File Transfer Protocol o Protocolo de Trasferencia de Archivos), es el
protocolo que permite el intercambio de archivos entre diferentes sistemas a través de
la red. Por tanto, un servidor FTP, es el encargado de permitir el intercambio de datos
entre cliente-servidor, además de permitir interactuar con los ficheros ubicados en el
servidor, pudiendo editarlos, eliminarlos y/o modificarlos según las directivas
establecidas en el servidor.
Debemos saber que el protocolo FTP, es un protocolo TCP, que usa los puertos 20 y
21, y es ofrecido por la capa de aplicación (Modelo OSI). Además, FTP es un servicio
no seguro, aunque existen alternativas (explicadas en este post), para introducir
seguridad a nuestro servicio.
3.2 ¿Dónde usamos FTP?
Implementamos un servidor de FTP, en cualquier estructura de red en la que sea
necesario almacenar datos como, archivos, páginas web, … Y así poder disponer de
ellas en cualquier momento a través de la red, y que además otros usuarios pueden
tener acceso a ellas (si uno quiere, claro…).
3.3 ¿Y el FTP seguro?
Como he comentado anteriormente, FTP se trata de un protocolo no seguro, ya que,
esta optimizado para rendir a la máxima velocidad posible y, por tanto, las conexiones
realizadas al servidor se trasmiten sin cifrar. Es decir, toda la información (incluida
usuarios y contraseñas) enviada se encuentra en texto descifrado (texto plano) y esto
posibilita que un atacante pudiera capturar este tráfico y acceder al servidor y/o a la
información trasmitida.
3.4 ¿Y entonces, como aseguramos nuestro servidor?
Existen dos alternativas para cifrar nuestra conexión en FTP: SFTP y FTPS.
SFTP
La característica principal de este protocolo es que añade el mismo protocolo FTP
a SSH. SFTP utiliza las claves de SSH para cifrar y descifrar la autentificación y
opera bajo el puerto 22.
FTPS
Este, utiliza el puerto 21 y los certificados SSL para autentificar la conexión. Este
protocolo será el que utilizamos para cifrar la conexión.
3.5 Modos de Conexión a un Servidor FTP
El protocolo FTP tiene la habilidad de haber sido creado con varios modos de conexión:
pasivo y activo.
3.5.1 Modo pasivo
Utiliza la conexión enviando comandos de tipo PASV desde el cliente sobre el canal de
comunicación. Aquí es donde encontramos la respuesta del servidor FTP, el cual le
indica al cliente a través de qué puerto debe conectarse. El puerto debe ser mayor a
1024 y menor a 65535. Luego el cliente procede a establecer la conexión hacia el
puerto que se estableció antes por el servidor.
Una vez está establecida la conexión, el cliente tendrá que enviar nuevamente el
comando de control PASV (o PORT en el caso de FTP activo), que será recibido por el
servidor FTP remoto, el cual abrirá un nuevo puerto pasivo para recibir la información.
Este modo se recomienda cuando hay conexiones bloqueadas de FTP a nivel de
firewall o transferencias fallidas de archivos de forma intermitente.
3.5.2 Modo activo
En el otro lado tenemos el modo clásico de conectar de un cliente FTP, es decir, el
modo activo.
El FTP en modo activo usa el puerto 20 para abrir el canal de comunicación de datos a
nivel del servidor, y luego el cliente utiliza un puerto mayor a 1024 para establecer la
conexión. Esta comunicación se basa en un comando de control de tipo PORT, que
permite establecer la transferencia de información entre ambos hosts en el puerto
determinado antes.
Este modo de funcionar del FTP activo ha hecho que surgiera el FTP pasivo, en un
intento de solucionar bloqueos de firewall, como mencionamos antes.
V. DESARROLLO
4.1 Instalación del SERVIDOR FTP
Para el desarrollo configuraremos la red de la siguiente manera:
Servidor: 192.168.0.2/24
Cliente: WINDOWS
Primero instalamos el servicio FTP
dnf install vsftpd -y
Luego instalamos el cliente ftp
Configuramos nuestra red interna
Verificamos
Nos dirigimos a la carpeta de configuración
Cd /etc/vsftpd
nano vsftp.conf
Agregamos una línea al final
Iniciamos el servicio y detenemos el firewall
systemctl start vsftp
systemctl stop firewalld
También verificamos si el selinux se encuentra detenito
sestatus
nano /etc/selinux/config
Probamos nuestra conexión con el servidor ftp
ftp 192.168.0.2
Instalamos el servicio ftp en cliente linux
Luego ingresamos desde el cliente
Configuramos cliente con contraseña
Nos dirigimos a :
cd /etc/vsftpd
Modificamos el archivo de configuración
Reiniciamos el servicio:
systemctl restart vsftp
Iniciamos el cliente ftp
Nos pedirá login de usuario y contraseña
Creamos un usuario (nuevo) con grupo ftp en la carpeta /home/nuevo
Creamos su contraseña
Useradd -g ftp -d /home/nuevo nuevo
Luego creamos la carpeta1
Y luego reiniciamos el servicio otra vez
Ingresamos en el cliente con el usuario que hemos creado
Podemos probar la conexión desde el navegador
Para realizar una conexión desde el cliente de Windows instalamos un cliente FTP,
es recomendable el FILEZILLA
VI. Responder:
1. Configure un servidor FTP en una distribución con DEBIAN
Instalamos VSFTPD
Iniciamos la terminal del sistema operativo Debian yendo a la pestaña Actividades en la
esquina superior izquierda de su escritorio. Luego, en la barra de búsqueda, escribimos
terminal. Cuando aparezca el icono de Terminal, damos clic en él para iniciarlo.
Luego, en la Terminal, escribimos el siguiente comando para actualizar los repositorios.
sudo apt-get update
Cuando nos solicite la contraseña, escriba sudo contraseña.
Luego ejecutamos el siguiente comando en la Terminal para instalar el paquete VSFTPD:
sudo apt-get install vsftpd
Una vez que se completa la instalación, podemos verificar la versión del paquete VSFTPD
ejecutando el siguiente comando en la Terminal:
vsftpd –versions
Ahora la segunda parte habilitaremos e iniciaremos el servicio VSFTPD
El servicio VSFTPD no se inicia automáticamente tras la instalación. Para iniciar el servicio
VSFTPD, ejecutamos el siguiente comando en la Terminal:
systemctl start vsftpd
El sistema solicitará la autenticación del usuario. Ingresamos la contraseña y
INFORME DE LABORATORIO N° XX - XYZ
hacemos clic en Autenticar.
Para permitir que el servicio vsftpd se inicie siempre en el momento del arranque,
ejecutamos el siguiente comando en la Terminal.
systemctl enable vsftpd
El sistema solicitará varias veces la autenticación del usuario. Ingresamos la
contraseña y hacemos clic en Autenticar.
Configuración VSFTPD
Ahora realizaremos algunas configuraciones necesarias para configurar el servidor
FTP en nuestro SO Debian.
Permitir puertos en Firewall
Si estamos ejecutando un firewall, permitiremos los puertos 20 y 21 para FTP
mediante los siguientes comandos:
$ sudo ufw allow 20/tcp
$ sudo ufw allow 21/tcp
Una vez hecho esto, confirmaremos verificando el estado del firewall usando el
siguiente comando:
sudo ufw status
14
INFORME DE LABORATORIO N° XX - XYZ
configurar el acceso FTP
Antes de realizar cambios en el archivo de configuración VSFTPD, nos aseguramos
de realizar una copia de seguridad del archivo vsftpd.config original. Para eso,
podemos usar el siguiente comando.
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
Ahora ejecutamos el siguiente comando en Terminal para editar el archivo
vsftpd.config en nano editor. Podemos utilizar cualquier editor para este propósito.
sudo nano /etc/vsftpd.conf
Agregamos las siguientes líneas al final del archivo:
15
INFORME DE LABORATORIO N° XX - XYZ
Una vez hecho esto, presionamos Ctrl + O y Ctrl + X para guardar y salir del archivo.
16
INFORME DE LABORATORIO N° XX - XYZ
reiniciamos el servicio VSFTPD
Para aplicar los cambios de configuración realizados anteriormente, debemos
reiniciar el servicio vsftpd. Ejecutando el siguiente comando para hacerlo:
sudo systemctl restart vsftpd
creamos un usuario de FTP
Ahora necesitaremos crear un usuario ftp al que se le permitirá conectarse al servidor
ftp.
Ingrese el siguiente comando para crear un usuario:
sudo useradd -m <user_name>
Luego asignamos un al usuario creado anteriormente usando el siguiente comando:
sudo passwd <user_name>
ahora hemos creado un usuario con el nombre ftpuser y le hemos asignado una
contraseña.
Probamos la conexión FTP
Para probar la conexión FTP, debemos instalar el cliente FTP en el mismo sistema o
en un sistema separado desde el que deseamos acceder al servidor FTP. En nuestro
caso, utilizamos FileZilla como cliente FTP.
Ejecute el siguiente comando en la Terminal para instalar FileZilla.
sudo apt-get install filezilla
Una vez que completamos la instalación, abriremos FileZilla usando la Terminal o
desde el menú Dash. cuando se abra, ingresamos la información requerida como
nombre de host / dirección IP, nombre de usuario y contraseña y hacemos clic en el
botón Conexión rápida.
17
INFORME DE LABORATORIO N° XX - XYZ
Verificamos el certificado y hacemos clic en Aceptar para conectarse al servidor FTP.
18
INFORME DE LABORATORIO N° XX - XYZ
Iniciaremos sesión correctamente en el servidor FTP y podremos acceder a los
archivos y directorios disponibles del servidor remoto.
VII. OBSERVACIONES
Si la IP es la misma, tomaremos una advertencia que del certificado que no
corresponde al dominio con el que se relaciona, pero aceptaría la conexión de todas
maneras.
VIII. CONCLUSIONES
Podremos permitir solo acceso anónimo, solo acceso a usuarios, o acceso anónimo
y a usuarios.
IX. REFERENCIAS BIBLIOGRAFICAS
https://www.ionos.es/digitalguide/servidores/configuracion/servidor-ftp-en-
debian/
19