Files
dtic-DIIAA/docs/proy/P2606_WebServer-NGINX/P2606_WebServer-NGINX.md
T
Ricardo Monla 160da47f96 [P2606] WebServer NGINX: plan actualizado, ficha nodo, HTTPS operativo
- P2606: Plan v1.1 EN EJECUCIÓN. Fases 1-3 completadas.
- Ficha nodo srvv-nginx-rm.md. P2606 en adn/07_proyectos.md.
- Incluye cambios acumulados de sesiones anteriores.
2026-03-28 12:18:42 -03:00

5.1 KiB

P2606 - Servidor Web NGINX con IP Pública

Estado: En Ejecución Fecha Inicio: 2026-03-28 Fecha Fin Estimada: Por definir

Objetivo

Desplegar un nuevo servidor web basado en NGINX en un contenedor LXC dentro de la infraestructura Proxmox de la facultad, con asignación de IP pública para exposición directa de servicios web.

Motivación

  • Necesidad de un servidor web dedicado con IP pública propia.
  • Los servidores web actuales (srvv-sitio con IP 190.114.205.20, srvv-sitio2 LXC) están en uso.
  • LXC ofrece menor overhead que VMs completas, ideal para un servidor web.

Stakeholders

Rol Nombre Contacto
Responsable DTIC Ricardo Monla rmonla

🌐 Topología y Contexto de Red

Internet
   │
Firewall/Router UTN
   │
   ├── srv-pmox3 (10.0.10.203) ── Bridge vmbr0 ── Red interna 10.0.10.x
   │      │
   │      └── srvv-web (LXC) ── IP Pública: (a asignar)
   │                              IP Privada: 10.0.10.xx
   │
   ├── srvv-sitio (190.114.205.20) ── Web existente (referencia)
   └── srvv-sitio2 (10.0.10.19) ── Web secundario LXC

Nodos Involucrados

Nodos Exclusivos (Core)

  • srvv-web — Contenedor LXC con NGINX (a crear)

Nodos de Soporte/Infraestructura

  • srv-pmox3 (10.0.10.203) — Host Proxmox (64GB RAM, ~20GB libres)
  • srvv-sitio — Referencia de configuración con IP pública

Herramientas

  • Proxmox VE — Creación y gestión del LXC
  • NGINX — Servidor web / reverse proxy
  • Certbot — Certificados HTTPS (Let's Encrypt)
  • Tailscale — Acceso remoto de gestión
  • ADN Toolkit — Gestión de nodos, bitácora, candados

Recursos Estimados (LXC)

Recurso Valor
CPU 2 cores (compartido)
RAM 2 GB
Disco 20 GB
Red vmbr0 (bridge), IP pública + IP privada
Template debian-12-standard

Hitos Clave

ID Hito Estado Fecha
1 IP pública asignada 2026-03-28
2 LXC creado y configurado 2026-03-28
3 NGINX operativo con HTTPS 2026-03-28
4 Seguridad y monitoreo 📍 Pendiente
5 Validación y entrega En progreso

📊 Progreso

Fase 1:  ██████████ 100%  Preparación e investigación
Fase 2:  █████████░  90%  Creación del contenedor LXC (Tailscale pendiente)
Fase 3:  ████████░░  80%  Instalación y configuración NGINX (hardening pendiente)
Fase 4:  ░░░░░░░░░░   0%  Seguridad y monitoreo
Fase 5:  █████░░░░░  50%  Validación y documentación

Prerequisitos

  • Confirmar IP pública disponible: 190.114.205.17 asignada.
  • Verificar bridge en srv-pmox3: vmbr0 capa 2 compartida.
  • Confirmar reglas de firewall: puertos 80/443 abiertos (verificado HTTP/HTTPS público).
  • Definir nombre del nodo: srvv-nginx-rm.

Plan de Ejecución

FASE 1: Preparación e investigación

  • 1.1: Solicitar/confirmar IP pública disponible al área de redes UTN.
  • 1.2: Verificar configuración de red en srv-pmox3 — bridges, VLAN, routing para IP pública.
  • 1.3: Verificar template LXC Debian 12 disponible en srv-pmox3.
  • 1.4: Definir hostname definitivo y esquema de red.

FASE 2: Creación del contenedor LXC

  • 2.1: Crear LXC en srv-pmox3 (2 cores, 2 GB RAM, 20 GB disco, bridge con IP pública).
  • 2.2: Configurar red: IP pública estática + gateway, IP privada 10.0.10.xx.
  • 2.3: Configurar hostname, DNS, timezone (America/Argentina/La_Rioja).
  • 2.4: Actualizar sistema base (apt update && apt upgrade).
  • 2.5: Instalar y configurar OpenSSH (puerto personalizado, acceso por clave).
  • 2.6: Configurar Tailscale VPN (acceso remoto de gestión).

FASE 3: Instalación y configuración NGINX

  • 3.1: Instalar NGINX.
  • 3.2: Configurar sitio por defecto (página de prueba).
  • 3.3: Configurar HTTPS con Let's Encrypt (certbot + NGINX plugin).
  • 3.4: Hardening: headers de seguridad, server tokens, rate limiting.
  • 3.5: Configurar logs (access.log, error.log con rotación).

FASE 4: Seguridad y monitoreo

  • 4.1: Configurar firewall local (ufw/nftables): solo puertos 80, 443, SSH.
  • 4.2: Instalar fail2ban.
  • 4.3: Configurar backup automático (vzdump en Proxmox).
  • 4.4: Agregar al sistema de monitoreo existente.

FASE 5: Validación y documentación

  • 5.1: Test de acceso web desde internet (HTTP y HTTPS).
  • 5.2: Test de rendimiento básico.
  • 5.3: Crear ficha de nodo en nodos/ (vía generar nodo).
  • 5.4: Documentar en bitácora y marcar proyecto como operativo.

Referencias

  • srvv-sitio — Modelo de servidor web con IP pública (190.114.205.20)
  • srvv-sitio2 — Referencia de LXC web existente

Manifiesto generado automáticamente el 2026-03-28 — completado con datos del proyecto