Laboratorio de ciberresiliencia, acceso seguro y operacion monitorizada para entornos empresariales.
SentinelOps es un laboratorio academico/profesional desarrollado como Proyecto Intermodular de segundo curso del Grado Superior en Administracion de Sistemas Informaticos en Red (ASIR). El objetivo es demostrar, de forma segura y reproducible, como integrar publicacion de servicios, identidad, observabilidad, seguridad operativa y continuidad mediante copias de seguridad en un entorno empresarial simulado.
Este repositorio es una version publica saneada. No contiene credenciales reales, ficheros
.envreales, certificados privados, dumps, backups, snapshots Restic ni evidencias internas sin filtrar.
English version: README.en.md
En muchos entornos pequenos o de laboratorio los servicios crecen de forma aislada: accesos dispersos, poca visibilidad, copias sin validacion, configuraciones no documentadas y ausencia de trazabilidad operativa. SentinelOps propone una respuesta integrada para estudiar ese problema desde una perspectiva de administracion de sistemas, redes, seguridad y DevOps.
El proyecto no pretende vender una plataforma de produccion, sino documentar un MVP tecnico defendible: que se puede desplegar, observar, auditar y restaurar de forma controlada.
SentinelOps se organiza en capas funcionales:
| Capa | Proposito |
|---|---|
| Publicacion | Entrada HTTP/HTTPS mediante Traefik, FQDN internos y separacion de servicios. |
| Identidad | Authentik como portal de aplicaciones y base SSO para servicios compatibles. |
| Servicios corporativos | Nextcloud para colaboracion documental y GLPI para inventario/tickets. |
| Observabilidad | Prometheus, Grafana, Blackbox Exporter, cAdvisor y Node Exporter. |
| Seguridad operativa | Wazuh para visibilidad de agentes, eventos y control de integridad. |
| Continuidad | Backrest y Restic para jobs, snapshots y pruebas de restauracion no destructivas. |
| DMZ de laboratorio | Portal DMZ, SFTPGo y Mailpit como superficies controladas de demostracion. |
| Documentacion | Runbooks, decisiones tecnicas, evidencias publicas y defensa academica. |
La topologia logica completa esta disponible en docs/assets/diagrams/logical-topology.png.
| Tecnologia | Uso en SentinelOps |
|---|---|
| Docker Compose | Orquestacion modular de los stacks del laboratorio. |
| Traefik | Reverse proxy, publicacion interna y rutas por FQDN. |
| Authentik | Identidad, portal de aplicaciones y modelo de acceso. |
| Nextcloud | Colaboracion, documentacion y validacion de servicio corporativo. |
| GLPI | Gestion IT, inventario, tickets y contexto operacional. |
| Prometheus | Recoleccion de metricas y targets. |
| Grafana | Dashboards de disponibilidad, infraestructura y capacidad. |
| Wazuh | Seguridad operativa, agentes, alertas y threat hunting. |
| Backrest | Interfaz de gestion para Restic, repositorios y planes de copia. |
| Restic | Copias, snapshots, checks y restauraciones no destructivas. |
| Mailpit | Sandbox de correo para el laboratorio. |
| SFTPGo | Servicio de transferencia controlado en DMZ. |
| Blackbox Exporter | Validacion HTTP/endpoint desde Prometheus. |
| cAdvisor | Metricas de contenedores. |
| Node Exporter | Metricas de sistema. |
| Area | Estado |
|---|---|
| Portal SentinelOps y DMZ | Implementado y validado. |
| Publicacion Traefik/FQDN | Implementado y validado en laboratorio local. |
| Authentik | Implementado como portal de identidad y base de SSO. |
| Nextcloud | Implementado y validado con integracion documentada. |
| GLPI | Implementado; SSO completo queda como mejora futura. |
| Prometheus/Grafana | Implementado con targets y dashboard de infraestructura/capacidad. |
| Wazuh | Implementado para seguridad operativa y Threat Hunting del MVP. |
| Backrest/Restic | Implementado con repositorios, planes, snapshots, check y restauracion no destructiva. |
| Alta disponibilidad | Disenado/documentado como mejora futura. |
| Hardening de produccion | Fuera de alcance del MVP. |
SentinelOps centraliza la publicacion de servicios mediante Traefik y FQDN internos, evitando exponer aplicaciones de forma aislada y permitiendo una entrada mas ordenada al laboratorio.
La capa de identidad se apoya en Authentik para centralizar el acceso y proteger servicios del laboratorio. En el MVP, Nextcloud queda documentado como servicio integrado mediante OIDC, mientras que otros servicios mantienen mecanismos de acceso complementarios.
El laboratorio incluye servicios corporativos como Nextcloud y GLPI para representar colaboracion documental, gestion IT, soporte e inventario dentro de un entorno empresarial simulado.
| Nextcloud | GLPI |
|---|---|
![]() |
![]() |
La capa de observabilidad permite revisar disponibilidad, metricas de infraestructura, servicios criticos y paneles operativos. Prometheus recoge metricas y Grafana permite visualizarlas mediante dashboards.
SentinelOps incorpora Wazuh como capa de visibilidad defensiva dentro del laboratorio. La plataforma permite revisar agentes, eventos, alertas y senales relacionadas con autenticacion, actividad del sistema y monitorizacion de integridad, siempre dentro del alcance de un MVP academico.
Backrest y Restic representan la estrategia de copias de seguridad y restauracion del laboratorio. El objetivo es demostrar continuidad minima, repositorios organizados, snapshots y restauraciones controladas, sin presentar el MVP como alta disponibilidad empresarial.
automation/ Automatizacion auxiliar y validaciones
backups/ Runbooks, politicas y ejemplos Backrest/Restic
docs/es/ Documentacion publica en espanol
docs/en/ Public documentation in English
docs/assets/ Diagramas y capturas publicas saneadas
infra/ Notas de infraestructura y red
monitoring/ Prometheus, Grafana, Wazuh y alerting
security/ Identidad, acceso y Authentik
services/ Servicios corporativos, edge y portales
El despliegue requiere adaptar dominios, redes, variables y secretos al entorno local. Los ficheros incluidos son plantillas y ejemplos; los secretos reales deben generarse fuera de Git.
cp .env.example .env
cd services/edge
cp .env.example .env
docker compose up -dCada dominio funcional tiene su propio docker-compose.yml y .env.example. Antes de levantar un stack hay que revisar FQDN, redes Docker, certificados, puertos locales, volumenes y credenciales de laboratorio.
Documentacion recomendada:
La validacion del MVP se apoya en:
- comprobacion de contenedores con
docker ps; - pruebas HTTP/FQDN con
curl; - revision de targets de Prometheus;
- dashboards de Grafana;
- estado de agentes, eventos y Threat Hunting en Wazuh;
- snapshots,
restic checky restauracion no destructiva; - evidencias publicas seleccionadas y documentadas.
- No es una solucion de produccion.
- No implementa alta disponibilidad.
- No sustituye a un SOC completo.
- GLPI no queda integrado con SSO OIDC completo en el MVP.
- Las copias no cubren recuperacion bare-metal completa.
- Cada entorno necesita adaptacion de dominios, redes, TLS, secretos y politicas de backup.
- Integrar firewall/edge/VPN y politicas de red avanzadas.
- Ampliar SSO y control de acceso por grupos.
- Versionar dashboards y alertas con mayor profundidad.
- Reforzar hardening, TLS real y rotacion de secretos.
- Incorporar backups off-site y pruebas de restore en entorno clonado.
- Automatizar despliegue y validacion con pipelines seguros.
Desarrollado por Jesus David Manzanero Marti.
- GitHub: https://github.com/Jyzzu08
- Portfolio: https://www.jesusmanzanero.info/
- LinkedIn: https://www.linkedin.com/in/jes%C3%BAs-david-manzanero-marti-995010232
Proyecto Intermodular del Grado Superior en Administracion de Sistemas Informaticos en Red (ASIR). El repositorio se publica como evidencia tecnica y portfolio profesional, manteniendo separacion entre material publico, evidencias internas y datos sensibles del laboratorio.
No usar tal cual en produccion sin hardening, revision de secretos, TLS real, controles de red, monitorizacion adaptada y politica de backups propia. Cualquier credencial debe generarse localmente y permanecer fuera del repositorio.







