Laboratorio 10: Troubleshooting Integrado (Checklist + Evidencias)
Unidad: 12 - Diagnóstico y Troubleshooting
Duración Estimada: 120-180 minutos
Dificultad: Intermedio-Avanzado
Objetivos
- Aplicar un flujo reproducible de diagnostico
- Recolectar evidencia minima (contexto, logs, red, recursos)
- Resolver incidentes simulados sin cambios destructivos
Requisitos Previos
- VM Ubuntu Server LTS (22.04 o 24.04) con acceso SSH
- Usuario con permisos sudo
- Haber completado al menos: Lab 0, Lab 1, Lab 4 y uno de (Lab 7/8/9)
Escenario
Un usuario reporta: “La web no responde”.
Tu objetivo es producir un reporte de diagnostico y dejar el servicio operativo.
Checklist de Evidencias (obligatorio)
Evidencia 1: Contexto
BASH
- 1
- hostnamectl entrega contexto de host/OS.
- 2
- uptime entrega contexto de carga y uptime.
Evidencia 2: Red y puertos
BASH
- 1
- ip -br addr evidencia IP.
- 2
- ip route evidencia gateway.
- 3
- ss -lntp evidencia puertos TCP en escucha.
Evidencia 3: Estado de servicio web
Escoge 1 segun tu stack:
- Si usas Nginx:
BASH
- 1
- systemctl status muestra estado actual.
- 2
- journalctl -u entrega evidencia de logs.
- Si usas Apache:
BASH
- 1
- systemctl status muestra estado actual.
- 2
- tail error.log entrega evidencia de errores.
Evidencia 4: Recursos
BASH
- 1
- free -h evidencia memoria.
- 2
- df -h evidencia espacio.
Incidentes simulados (elige 2)
Incidente A: Puerto incorrecto
- Configura tu servicio para escuchar en un puerto distinto (ej: 8080) y prueba
curlen 80/443. - Documenta el error y la causa con
ss -lntp. - Corrige y valida.
Incidente B: Firewall bloqueando
- Agrega una regla UFW que bloquee el puerto del servicio.
- Evidencia con
ufw status. - Corrige y valida.
Incidente C: DNS / Host header
- Prueba el VirtualHost usando
curl -H 'Host: ...'. - Explica diferencia entre DNS y Host header.
- Valida el sitio correcto.
Entregables
- Checklist completo con outputs
- Para cada incidente elegido:
- Sintoma
- Evidencia
- Hipotesis
- Fix
- Validacion