Act6. MilJimenez - CarlosAlberto
Act6. MilJimenez - CarlosAlberto
Act6. MilJimenez - CarlosAlberto
“
”
REPORTE DE
PRÁCTICA
integrantes:
• Mil Jiménez Carlos Alberto
• Ovando Arcos Angie Michelle
• Rodríguez Campos Rodrigo Irán
• Mosqueda Gómez Jesús Alexander
• Sánchez Córdova Yaditzy Arisbeth
Profesor:
Villanueva Guzmán Jorge Cein
Carrera:
Ing. En Sistemas Computacionales
Fecha de entrega:
15 de octubre del 2024
2
INDICE
INTRODUCCIÓN ................................................................................................................................ 3
Marco Teórico..................................................................................................................................... 4
CONCEPTOS MÁS IMPORTANTES: ....................................................................................... 6
INSTALAR Y CONFIGURAR UN SERVIDOR FTP. ................................................................. 7
CREACION DE UN USUARIO PARA FTP. ................................................................................ 9
CONFIGURACIÓN DE VSFTPD................................................................................................... 12
CONFIGURACIÓN DE SSL/TLS EN VSFTPD ......................................................................... 14
DESCARGA E INSTALACIÓN DEL FILEZILLA EN LA MAQUINA FÍSICA DE UNA
COMPUTADORA EXTERNA ........................................................................................................ 16
EJECUCIÓN DEL SERVIDOR EN FILEZILLA ........................................................................... 19
CONFIGURACIÓN DE RUTA FTP AL DIRECTORIO DE NUESTRO PROYECTO ..... 21
Computadoras usadas: ................................................................................................................. 28
CONCLUSIÓN .................................................................................................................................... 29
BIBLIOGRAFÍA .................................................................................................................................. 30
3
INTRODUCCIÓN
En la era digital actual, la transferencia segura y eficiente de archivos se estaba
convirtiendo en una necesidad crítica para muchas organizaciones y desarrolladores.
Para abordar este desafío, uno de los métodos más comunes que se utilizaba para
gestionar la transferencia de archivos entre sistemas era el uso de servidores FTP
(File Transfer Protocol).
Nuestro equipo de trabajo había explorado de manera exhaustiva una serie de pasos
claros que incluían la creación de usuarios, la configuración de permisos adecuados,
la implementación de medidas de seguridad y el establecimiento de conexiones
seguras mediante SFTP (Secure File Transfer Protocol).
El objetivo de esta práctica era proporcionar una guía práctica que permitiera a los
administradores de sistemas implementar un servidor FTP seguro y funcional,
optimizando así el acceso y la gestión de archivos en entornos colaborativos.
4
El SFTP es una extensión del protocolo SSH (Secure Shell) que proporciona una
transferencia de archivos más segura en comparación con el FTP estándar. Utiliza el
cifrado de SSH para proteger la comunicación.
A diferencia del FTP, el SFTP cifra tanto los comandos como los datos, lo que lo
convierte en una opción preferida para conexiones seguras en la transferencia de
archivos.
SSH es un protocolo que permite a los usuarios conectarse a una máquina de manera
segura para realizar operaciones como administración remota y transferencia de
archivos. SSH también puede ser utilizado para tunelización segura y ejecución de
comandos remotos.
En el caso de un servidor SFTP, es común usar chroot para restringir a los usuarios
solo a sus propios directorios, garantizando que no puedan ver ni manipular otros
archivos en el servidor.
Los permisos de archivos en Linux son gestionados a través del comando chmod,
que define qué tipo de acceso tienen el propietario, el grupo y otros usuarios a un
archivo o directorio.
El modo 755 significa que el propietario tiene permisos completos (lectura, escritura
y ejecución), mientras que el grupo y los demás solo tienen permisos de lectura y
ejecución. Esto es esencial en servidores FTP y SFTP para proteger la integridad de
los archivos mientras se asegura el acceso adecuado.
Comandos como useradd y chown son utilizados para crear usuarios y asignarles
permisos específicos sobre directorios y archivos. En un entorno FTP o SFTP, es
importante crear usuarios con permisos limitados para evitar posibles brechas de
seguridad.
Este comando inicia el servicio vsftpd (Very Secure FTP Daemon) en el sistema. No
hace que el servicio se inicie automáticamente en futuros reinicios, solo lo activa en
el momento.
Este comando maneja el enable lo que significa que cada vez que enciendas tu
maquina el servicio vsftpd se inicializada solo
-m: Esta opción crea un directorio home para el nuevo usuario. En este caso, se va a
crear el directorio /home/admin si aún no existe.
mkdir -p /home/admin/ftp
-p: Esta opción asegura que, si los directorios padres no existen, se creen
automáticamente. En este caso, si la ruta /home/admin no existe, se creará también.
le asignamos permisos:
-R: Esta opción es recursiva, lo que significa que aplicará los permisos no solo al
directorio especificado, sino también a todos los archivos y subdirectorios dentro de
él (si los hubiera).
admin:: Indica que el usuario admin será el nuevo propietario del directorio. El
carácter: después de admin sugiere que también puedes cambiar el grupo al que
pertenece el directorio, pero en este caso se omite el grupo, por lo que mantiene el
grupo anterior o lo asigna al grupo por defecto del usuario admin.
>>: Es un operador de redirección. En este caso, >> se utiliza para agregar (append)
el texto al final del archivo sin sobrescribir su contenido actual. Si usáramos solo un
>, se sobrescribiría todo el contenido del archivo, pero con >>, se conserva el
contenido existente y se añade el nuevo texto al final.
Si userlist_deny=YES (el valor por defecto), los usuarios en user_list serán bloqueados
del acceso FTP.
12
Agregamos la línea:
13
Usando
14
/
Por último, vamos a generar un archivo de certificado SSL y luego configurarlo en el
servidor.
Reiniciamos el servicio:
Y recargamos:
firewall-cmd –reload
Una vez que ya hicmos todas las configuraciones pertinentes podemos verificar el
servidor en nuesto caso usaremos FileZilla.
16
Lo primero que se tiene que hacer en FileZilla una vez ya instalada es poner la ip que
has configurado hasta el momento en tu máquina virtual y de igual forma poner el
usuario y contraseña que se crearon mientras tanto en el puerto pondremos el 21 ya
que es este el que configuramos previamente, le damos a ‘Conexión rápida’ y nos
debería de lanzar la carpeta que creamos previamente
Si por alguna razón no les muestra ninguna carpeta es probable que al estar usando
SElinux pueda estar bloqueando el acceso, puedes verificarlo en tu maquina virtual
en donde tienes el servidor con sestatus
Con setenforce 0
Con esto podemos ver que todas nuestras configuraciones son exitosas, pero todavía
no hemos acabado ya que lo que queremos es que entre a nuestra carpeta donde
tenemos nuestro proyecto.
Se creo la carpeta ftp para ver el buen funcionamiento de nuestro servidor, ahora
procedemos a configurarlo de forma que nos apunte a nuestra carpeta en donde
tenemos nuestro proyecto
21
Una vez que ya tenemos todas las configuraciones anteriores, a la vez que
verificamos en el filezilla que responde bien al puerto 21, hora procedemos a
configurar nuestra ruta para que apunte a nuestro proyectó web, donde haremos lo
siguiente:
Una vez entremos aquí pondremos la ruta en donde se encuentra nuestro proyecto
web:
Local_root=/srv/www/dominio/public_html/
Guardamos los cambios (recuerda que para guardar cualquier archivo que hayas
modificado se usa w + q + ! + enter)
Reiniciamos el vsftpd
755: Son los permisos que se están asignando al directorio. El número 755 se
descompone en:
5 (r-x): Los usuarios que pertenecen al grupo tienen permisos de lectura y ejecución,
pero no de escritura.
5 (r-x): Todos los demás usuarios (otros) también tienen permisos de lectura y
ejecución, pero no de escritura.
Para después dar paso a ver nuestra carpeta del proyecto con el puerto 21
23
Como se puede observar nos apunta únicamente a nuestro proyecto lo que significa
que los pasos anteriores fueron un éxito.
Pero ahora que pasa si en vez de querer entrar a nuestro puerto 21 quiero entrar a
mi puerto 22 con sshd, lo mas seguro es que si me va a dejar entrar pero me mostrara
todas las carpetas
Lo primero que hay que hacer entrar al archivo de sshd, con la siguiente línea de
código:
24
vi /etc/ssh/sshd_config
lo que nos abrirá todo el archivo sshd en donde introduciremos las siguientes líneas
de código
ChrootDirectory /srv/www/dominio/public_html
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
Esta directiva indica que las reglas especificadas debajo de ella se aplicarán solo al
usuario admin cuando intente conectarse mediante SSH o SFTP.
2. ChrootDirectory /srv/www/dominio/public_html
3. ForceCommand internal-sftp
Esta directiva fuerza al usuario admin a usar el comando internal-sftp, que es una
implementación integrada de SFTP dentro del servidor SSH.
Al usar internal-sftp, se asegura que el usuario solo pueda utilizar SFTP para transferir
archivos y no tenga acceso a una shell interactiva del sistema (es decir, no podrá
ejecutar comandos como en un acceso SSH normal).
Esto es importante para limitar las capacidades del usuario admin solo a la
transferencia de archivos sin acceso a otras funcionalidades del servidor.
4. AllowTcpForwarding no
5. X11Forwarding no
Ahora podemos entrar a nuestro filezilla y verificar si podemos entrar con nuestro
usuario al puesto 22 y que solo nos aparezca nuestra carpeta donde tenemos nuestro
proyecto web como en el 21.
Como podemos observar de igual manera podemos entrar con el puerto 22 y solo
nos aparecerá nuestro proyecto. Dando por fin a nuestro reporte
Como dato a considerar también podemos entrar a nuestro usuario root en donde
aquí si nos mostraran todas nuestras carpetas
27
28
Computadoras usadas:
29
CONCLUSIÓN
La correcta instalación y configuración de un servidor FTP utilizando vsftpd era
esencial para garantizar un entorno seguro y eficiente para la transferencia de
archivos.
BIBLIOGRAFÍA
https://docs.rockylinux.org/guides/file_sharing/secure_ftp_server_vsftpd/
Un servidor FTP seguro con vsftpd en Rocky Linux 8. (2022, May 23).
ochobitshacenunbyte.
https://www.ochobitshacenunbyte.com/2022/05/23/un-servidor-ftp-
seguro-con-vsftpd-en-rocky-linux-8/