SergioPinilla04 / TFG_ASIR2024

Programación empleada en mi TFG de ASIR

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Programación empleada en mi TFG de ASIR: "Sistema de Almacenamiento en una Nube Privada con Enfoque en Seguridad y Respaldo Incremental Automatizado".

Este proyecto se trata de una aplicación web desarrollada con Django para gestionar usuarios FTP. La aplicación permite registrar nuevos usuarios, autenticar su acceso y subir archivos a sus directorios personales en un servidor FTP. La gestión del servidor FTP se realiza mediante comandos SSH.

Contenidos

  1. Funcionalidades
  2. Tecnologías Utilizadas
  3. Estructura del Proyecto
  4. Capturas
  5. Licencia

Funcionalidades

  • Registro de Usuarios: Los usuarios pueden registrarse proporcionando su información personal. Al registrarse, se crean automáticamente sus directorios personales en el servidor FTP con los permisos adecuados.
  • Autenticación: Los usuarios pueden iniciar sesión con sus credenciales para acceder a sus directorios FTP.
  • Subida de Archivos: Los usuarios pueden subir archivos a sus directorios personales en el servidor FTP. Los archivos subidos son propiedad del usuario y del grupo ftpusers.
  • Gestión de Permisos: La aplicación asegura que los directorios y archivos en el servidor FTP tengan los permisos correctos.

Tecnologías Utilizadas

  • Django: Framework web utilizado para el desarrollo de la aplicación.
  • Paramiko: Biblioteca Python para realizar conexiones SSH.
  • pysftp: Biblioteca Python para gestionar las transferencias de archivos SFTP.

Estructura del Proyecto

1. Formulario de Registro

  • Formulario de Usuario (UserForm): Permite a los usuarios ingresar su información personal para registrarse.
  • Formulario de Perfil de Usuario (UserProfileForm): Permite a los usuarios ingresar información adicional para su perfil.

2. Vistas

  • Registro (register): Procesa el registro de nuevos usuarios, crea sus directorios en el servidor FTP y configura los permisos adecuados.
  • Inicio de Sesión (login): Permite a los usuarios iniciar sesión.
  • Página Principal (home): Página de inicio después de iniciar sesión.
  • Cierre de Sesión (logout): Permite a los usuarios cerrar sesión.
  • Subida de Archivos (upload_file): Permite a los usuarios subir archivos a sus directorios FTP.

3. Utilidades

  • Comandos SSH (execute_ssh_commands): Ejecuta comandos en el servidor FTP para gestionar usuarios y permisos.
  • Subida de Archivos SFTP (sftp_upload_file): Gestiona la subida de archivos al servidor FTP usando SFTP.

Capturas

register login upload

Licencia

Sistema de Almacenamiento en una Nube Privada con Enfoque en Seguridad y Respaldo Incremental Automatizado by Sergio Pinilla is licensed under CC BY-NC-SA 4.0

About

Programación empleada en mi TFG de ASIR


Languages

Language:Python 89.7%Language:HTML 10.3%