🛡️ Practica de Evaluación

📋 Pautas Generales

  • El proyecto consiste en crear y configurar una máquina virtual siguiendo reglas estrictas.
  • Durante la defensa, la persona evaluada debe asistirte para verificar cada punto.
  • Verifica que el archivo signature.txt esté en la raíz del repositorio clonado.
  • Compara la firma de signature.txt con la del archivo .vdi de la máquina virtual usando el comando diff.
  • Haz una copia de la máquina virtual original como precaución.
  • Inicia la máquina virtual a evaluar.
  • Si algo no funciona o las firmas difieren, la evaluación termina aquí.

🛠️ Pruebas Preliminares

  • Verifica que:
    • 🧑‍🎓 La(s) persona(s) evaluada(s) está(n) presente(s).
    • 📂 La entrega no está vacía y pertenece a la(s) persona(s) evaluada(s).
  • Clona el repositorio Git en la computadora de la persona evaluada.

🔒 Parte Obligatoria

🌐 Explicación Virtualización

  • Virtualización: Representación o imitación de un sistema físico creada por software.
  • Hypervisor: Capa de software que permite a un servidor físico desplegar varias máquinas virtuales compartiendo recursos como RAM, disco duro, y CPU.
  • Beneficios de la Virtualización:
    1. 📊 Eficiencia y aprovechamiento de recursos.
    2. 🔄 Cambio rápido de recursos.
    3. 🌐 Redundancia y continuidad del servicio.
    4. ⚡ Ahorro energético.
    5. 🔄 Creación y recuperación rápida de sistemas.
    6. 🧪 Creación de entornos de prueba temporales.
    7. 🌍 Despliegue de servicios en cualquier lugar.
    8. 💻 Creación de escritorios virtuales remotos.
    9. 📚 Aprendizaje.

🔥 UFW / Firewall

  • Verifica que UFW (o Firewalld en Rocky) esté instalado y funcionando: sudo ufw status.
  • La persona evaluada debe:
    • Explicar qué es UFW y su importancia.
    • Enumerar las reglas activas en UFW. Debe haber una regla para el puerto 4242.
    • Añadir una regla para abrir el puerto 8080 y verificarlo.
    • Eliminar la regla creada. Si algo falla, la evaluación termina aquí.

💻 Hostname y Particiones

  • Verifica que el nombre del host esté formateado como login42 (login de la persona evaluada):
    hostname
    cat /etc/hostname
    
  • Cambia el nombre del host al tuyo y reinicia la máquina. Si no se actualiza, la evaluación termina aquí.
  • Restaura el nombre de host original.
  • Pregunta a la persona evaluada cómo mostrar las particiones de la máquina:
    lsblk
    sudo fdisk -l
    
  • Discute sobre particiones y pide una explicación sobre LVM y sus beneficios.

⚙️ SUDO

  • Verifica que sudo esté instalado:
    sudo --version
    dpkg -s sudo
    which sudo
    
  • La persona evaluada debe:
    • Explicar el propósito y funcionamiento de sudo.
    • Mostrar cómo asignar a un nuevo usuario al grupo sudo.
    • Verificar que el directorio /var/log/sudo/ exista y contenga al menos un archivo.
    • Revisar el contenido de los archivos en /var/log/sudo/.
    • Ejecutar un comando con sudo y verificar si se actualizan los archivos de log. Si algo falla, la evaluación termina aquí.

👤 Usuario

  • Verifica que un usuario con el nombre de login de la persona evaluada esté presente y pertenezca a los grupos sudo y user42.
  • Crea un nuevo usuario y asígnale una contraseña respetando las reglas del tema.
  • La persona evaluada debe:
    • Explicar cómo implementó las reglas de la política de contraseñas.
    • Crear un grupo llamado evaluating y asignarlo al nuevo usuario.
    • Explicar el propósito de la política de contraseñas y sus ventajas y desventajas. Si algo falla, la evaluación termina aquí.

🖥️ Visión General del Proyecto

  • La persona evaluada debe explicar:
    • 🔍 El funcionamiento básico de su máquina virtual.
    • 🖥️ Su elección de sistema operativo.
    • ⚙️ Las diferencias básicas entre Rocky y Debian.
    • 🔄 Los beneficios de las máquinas virtuales.
    • Si eligió Rocky, explicar SELinux y DNF.
    • Si eligió Debian, explicar la diferencia entre aptitude y apt, y qué es APPArmor.
    • Verificar un script que muestre información cada 10 minutos. Si no es claro, la evaluación termina aquí.

⚙️ Configuración Simple

  • Verifica que la máquina no tenga un entorno gráfico al iniciar:
    ls /usr/bin/*session
    
    systemctl get-default
    
  • Inicia sesión con un usuario que no sea root y verifica:
    • El sistema operativo:
      cat /etc/os-release
      
    • UFW esté iniciado:
      sudo ufw status
      
    • SSH esté iniciado:
      systemctl status ssh
      

🔑 SSH

  • Verifica que el servicio SSH esté instalado y funcionando:
    dpkg -l | grep ssh
    sudo systemctl status ssh
    
  • La persona evaluada debe:
    • Explicar qué es SSH y su importancia.
    • Verificar que SSH use solo el puerto 4242:
      cat /etc/ssh/sshd_config | grep Port
      
    • Conectarse usando SSH con el nuevo usuario creado.
    • Verificar que el usuario root no pueda usar SSH:
      cat /etc/ssh/sshd_config | grep PermitRootLogin
      

      Si algo falla, la evaluación termina aquí.


⏲️ Monitoreo del Script

  • La persona evaluada debe:
    • Explicar el funcionamiento de su script.
    • Explicar qué es cron y crontab.
    • Configurar el script para que se ejecute cada 10 minutos desde el inicio del servidor.
    • Verificar el funcionamiento del script y luego configurarlo para que se ejecute cada minuto.
    • Deshabilitar la ejecución del script al iniciar el servidor sin modificar el script.
    • Reiniciar el servidor para verificar que el script no se ejecute al inicio. Si algo falla, la evaluación termina aquí.

🏅 Parte Bonus

  • Las bonificaciones solo se examinan si la parte obligatoria es excelente.
  • Verifica y prueba los servicios adicionales:
    • Particiones valen 2 puntos.
    • Configuración de WordPress vale 2 puntos.
    • Servicio de libre elección vale 1 punto (NGINX y Apache2 están prohibidos).
  • La persona evaluada debe explicar cada servicio adicional y justificar su elección.

📈 Calificación Final

  • Califica de 0 (fallido) a 5 (excelente) según la gestión y ejecución de cada parte.

results matching ""

    No results matching ""