HACK A BOSS
FormaciónEvaluacionesPerfil
Volver
  • En directo

Linux Avanzado: Seguridad y Administración

8h de clase en directo·HACK A BOSS·Español

Skills que aprenderás

  • Linux

Convocatorias

Necesitas un plan activo

Para acceder a los cursos en directo necesitas un plan activo. Estamos trabajando para que los planes estén disponibles pronto — ¡mantente atento!

No hay convocatorias abiertas ahora mismo, pero no te pierdas la oportunidad: guarda este curso y te avisamos en cuanto se abra una convocatoria.

Descripción

Objetivos

Temario

Requisitos técnicos

Conocimientos previos

Detalles de la convocatoria

Recursos

No hay recursos disponibles todavía para esta convocatoria

Curso de nivel avanzado orientado a profesionales técnicos que administran servidores Linux con autonomía y necesitan llevar esa administración al nivel de producción seguro y profesional. El punto de partida es el dominio del scripting Bash, systemd, journalctl y la edición de configuración del sistema; el objetivo es operar servidores Linux en producción con criterio de seguridad y escalabilidad: aplicar hardening de SSH y firewall, diagnosticar problemas de rendimiento con herramientas estándar, gestionar almacenamiento con LVM, automatizar tareas de mantenimiento con cron y awk, realizar auditorías de seguridad del sistema, configurar y diagnosticar la red, y diseñar políticas de acceso granulares con sudo y gestión de logs con logrotate. Al finalizar, el participante será capaz de entregar y mantener un servidor Linux en estado seguro, monitorizable y autogestionado.

Al finalizar el curso, el participante será capaz de:

  • Aplicar un procedimiento de hardening de SSH y firewall en un servidor Linux, deshabilitando el login de root, configurando autenticación por clave y definiendo reglas de firewall con ufw verificables sin perder el acceso al servidor
  • Diagnosticar un problema de rendimiento del sistema identificando el cuello de botella —CPU, memoria, I/O de disco— con herramientas estándar (top, vmstat, iostat) y proponiendo la acción correctiva justificada con métricas
  • Gestionar almacenamiento con LVM creando un Logical Volume, formateando con ext4 o xfs y montando de forma persistente en /etc/fstab con la opción nofail
  • Automatizar tareas de mantenimiento programando trabajos con cron, integrando procesamiento de texto con awk para filtrar y transformar ficheros de log, y verificando la ejecución con un log propio del script
  • Realizar una auditoría básica de seguridad identificando ficheros con bits SUID/SGID no esperados, usuarios con UID 0 no autorizados y puertos abiertos no documentados, y configurar fail2ban con jail SSH activa
  • Configurar una interfaz de red de forma persistente con netplan, añadir una ruta estática y diagnosticar problemas de conectividad y DNS con ip, ss, dig y tcpdump
  • Diseñar una política de acceso con sudo granular para grupos específicos con comandos concretos, y configurar la rotación de logs con logrotate con compresión y retención definidas
  1. Hardening de SSH y firewall con ufw Directivas críticas de sshd_config: PermitRootLogin no, PasswordAuthentication no, AllowUsers, Port; procedimiento seguro de hardening: verificar acceso por clave antes de deshabilitar contraseña, validar con sshd -t, reiniciar con systemctl; ufw: políticas por defecto (default deny incoming, default allow outgoing), reglas por puerto y por IP de origen; ufw enable y verificación del estado; plan de recuperación si se pierde el acceso SSH

  2. Diagnóstico de rendimiento del sistema Interpretación de top: campos %us, %sy, %wa, %id y load average; diferencia entre carga de CPU y carga de I/O; vmstat 1: campos si, so (swap), bi, bo (I/O de bloque); iostat -x 1: %util, await y r/s, w/s por dispositivo; free -h: total, used, buff/cache, available; árbol de decisión para diagnóstico: load alto + wa alto → I/O; load alto + us alto → CPU; swap activo continuo → memoria insuficiente; identificar el proceso responsable con ps aux --sort=-%cpu o --sort=-%mem

  3. Gestión de almacenamiento con LVM Jerarquía LVM: Physical Volume (PV), Volume Group (VG), Logical Volume (LV); comandos de creación: pvcreate, vgcreate, lvcreate -l 100%VG; mkfs.ext4 y mkfs.xfs sobre un LV; montaje temporal con mount; obtener UUID con blkid; entrada en /etc/fstab con UUID y opción nofail; verificar montaje persistente con mount -a; ampliar un LV en caliente con lvextend -r y xfs_growfs

  4. Automatización con cron y awk Sintaxis de crontab: los 5 campos de tiempo y expresiones frecuentes; entorno de ejecución de cron: PATH mínimo y necesidad de rutas absolutas; crontab -e y crontab -l; awk para procesamiento de logs: campos posicionales, patrones de expresión regular (/ERROR/), acumuladores en bloques de reglas y bloque END para totales; find -mtime para ficheros por antigüedad; log de ejecución del script con echo "$(date): resultado" >> /var/log/maint.log; verificar ejecución sin esperar al tiempo programado

  5. Auditoría básica de seguridad Buscar ficheros SUID con find / -perm -4000 -type f 2>/dev/null; verificar usuarios con UID 0: awk -F: '$3 == 0' /etc/passwd; listar puertos en escucha con ss -tulnp; revisar intentos fallidos SSH en journalctl -u sshd; fail2ban: instalación, configuración de jail.local con [sshd], maxretry, bantime, findtime; verificar jail activa con fail2ban-client status sshd; diferencia entre auditoría (detectar) y mitigación (corregir)

  6. Configuración y diagnóstico de red Ficheros de configuración de red en Ubuntu 22.04: /etc/netplan/*.yaml; sintaxis netplan para IP estática, DNS y rutas; netplan try vs. netplan apply y el rollback automático de netplan try; rutas estáticas en netplan con routes:; ip route show para verificar la tabla de rutas; ss -tulnp para puertos en escucha; dig @8.8.8.8 para aislar problemas de DNS; tcpdump -i <if> host <ip> and port <port> para capturar tráfico

  7. Política sudo y rotación de logs Sintaxis de sudoers: usuario/grupo, host, usuario de ejecución, comando con argumentos exactos; NOPASSWD: para comandos específicos; ficheros en /etc/sudoers.d/ — no editar /etc/sudoers directamente; validación con visudo -c -f y verificación con sudo -l -U <usuario>; logrotate: directivas daily, weekly, rotate N, compress, delaycompress (necesario cuando el proceso mantiene el fichero abierto); postrotate para notificar al proceso que rota el log; logrotate -d para simulación y logrotate --force para prueba

  • Acceso a un entorno Linux con privilegios sudo y capacidad de añadir discos virtuales: VirtualBox con Ubuntu 22.04 LTS recomendado (WSL2 no soporta LVM ni ufw completo)
  • Vagrant (opcional) para provisionar entornos reproducibles de práctica
  • bash 5.x, ufw, lvm2, fail2ban, awk, tcpdump, netplan — todos disponibles en Ubuntu 22.04 con apt install
  • Acceso a internet desde la VM para instalar paquetes durante las prácticas
  • Editor de código (VS Code con extensión Remote SSH recomendado para las prácticas en VM)

→ LNX03 — Linux Intermedio: Arranque, Systemd y Verificación del Sistema (Intermedio, 8h)

  • Aplicar búsqueda y reemplazo en vim y con sed -i sobre ficheros de configuración
  • Gestionar el ciclo de vida de servicios con systemctl distinguiendo el estado actual del comportamiento en arranques futuros
  • Analizar logs del sistema con journalctl aplicando filtros por servicio, arranque y prioridad
  • Aplicar un procedimiento de verificación post-boot con un script Bash integrado