From 62047f660fb750aefdb4102f52794c55c9c906de Mon Sep 17 00:00:00 2001 From: Orquestrador CAS Date: Tue, 9 Jun 2026 07:53:16 +0000 Subject: [PATCH] docs: documentacion extensiva de infraestructura CAS - Junio 2026 - README principal actualizado con indice completo - Documentacion detallada de 4 servidores fisicos - Topologia de red completa con diagramas ASCII - Asignacion de IPs y conflictos identificados - Documentacion DNS para 3 dominios - Servicios: Caddy, Jellyfin Stack, Multimedia - Proyectos: Afterlife, Nexus, Horux - Seguridad: politica y riesgos identificados - Automatizacion: n8n workflows y scripts - Scripts utilitarios: backup, update-dns, check-ip - Roadmap 2026 Q2-Q4 - Documentacion Hermes AI server (actualizada) --- README.md | 860 +++++++++++++++++------------ automatizacion/README.md | 33 ++ dns/README.md | 124 +++++ planificacion/roadmap-2026.md | 50 ++ proyectos/afterlife/README.md | 38 ++ proyectos/horux/README.md | 45 ++ proyectos/nexus/README.md | 34 ++ red/README.md | 146 +++++ scripts/backup-vms.sh | 26 + scripts/check-ip.sh | 17 + scripts/update-dns.sh | 26 + seguridad/README.md | 53 ++ servicios/caddy/README.md | 63 +++ servicios/jellyfin-stack/README.md | 37 ++ servidores/ai-server/README.md | 237 ++++++++ servidores/cisco1/README.md | 176 ++++++ servidores/dellt430-2/README.md | 217 ++++++++ servidores/tyan/README.md | 348 ++++++++++++ 18 files changed, 2190 insertions(+), 340 deletions(-) create mode 100644 automatizacion/README.md create mode 100644 dns/README.md create mode 100644 planificacion/roadmap-2026.md create mode 100644 proyectos/afterlife/README.md create mode 100644 proyectos/horux/README.md create mode 100644 proyectos/nexus/README.md create mode 100644 red/README.md create mode 100755 scripts/backup-vms.sh create mode 100755 scripts/check-ip.sh create mode 100755 scripts/update-dns.sh create mode 100644 seguridad/README.md create mode 100644 servicios/caddy/README.md create mode 100644 servicios/jellyfin-stack/README.md create mode 100644 servidores/ai-server/README.md create mode 100644 servidores/cisco1/README.md create mode 100644 servidores/dellt430-2/README.md create mode 100644 servidores/tyan/README.md diff --git a/README.md b/README.md index 1a8d7b0..c17c397 100644 --- a/README.md +++ b/README.md @@ -1,367 +1,547 @@ -# Red y Homelab - Consultoria-AS +# Red y Homelab - Consultoria Alcaraz Salazar (CAS) -## Resumen de Infraestructura +> **Orquestrador**: Sistema de gestión de infraestructura, máquinas virtuales, subdominios y documentación de red. +> +> *Última actualización: 9 de Junio de 2026* -- **IP Publica**: 187.250.132.40 (dinamica) -- **ISP**: Infinitum (Telmex) -- **Modem/Gateway**: 192.168.10.254 -- **Red principal**: 192.168.10.0/24 -- **Reverse Proxy**: Caddy (en container Dockge, 192.168.10.74) -- **DNS**: Cloudflare (consultoria-as.com) + AWS Route 53 (horuxfin.com) + Hostinger (nexusautoparts.com.mx) -- **Monitoreo**: UptimeKuma (https://status.consultoria-as.com) +--- -## Servidores Fisicos +## Índice -### Servidor 1: TYAN (192.168.10.3) -| Caracteristica | Valor | +1. [Resumen Ejecutivo](#resumen-ejecutivo) +2. [Infraestructura Física](#infraestructura-física) +3. [Topología de Red](#topología-de-red) +4. [Servidores Proxmox](#servidores-proxmox) +5. [Máquinas Virtuales y Contenedores](#máquinas-virtuales-y-contenedores) +6. [Servicios Web](#servicios-web) +7. [DNS y Dominios](#dns-y-dominios) +8. [Reverse Proxy](#reverse-proxy) +9. [Stack de Inteligencia Artificial](#stack-de-inteligencia-artificial) +10. [Monitoreo](#monitoreo) +11. [Seguridad](#seguridad) +12. [Proyectos Activos](#proyectos-activos) +13. [Pendientes y Roadmap](#pendientes-y-roadmap) +14. [Contacto y Acceso](#contacto-y-acceso) + +--- + +## Resumen Ejecutivo + +Consultoria Alcaraz Salazar opera una infraestructura híbrida on-premise compuesta por 3 servidores Proxmox, 1 servidor de IA bare metal, y múltiples servicios contenedorizados. La infraestructura soporta operaciones internas, proyectos de clientes, y plataformas SaaS. + +| Parámetro | Valor | |---|---| +| **IP Pública** | 187.250.132.40 (dinámica) | +| **ISP** | Infinitum (Telmex) | +| **Gateway Principal** | 192.168.10.254 | +| **Rango de Red** | 192.168.10.0/24 | +| **Servidores Físicos** | 4 (3 Proxmox + 1 Ubuntu bare metal) | +| **VMs/Containers Activos** | 30+ | +| **Servicios Web Públicos** | 20+ | +| **Dominios Gestionados** | 3 (consultoria-as.com, horuxfin.com, nexusautoparts.com.mx) | + +--- + +## Infraestructura Física + +### Servidor 1: TYAN (Nodo Principal) + +| Característica | Valor | +|---|---| +| **Hostname** | tyan | | **Nodo Proxmox** | Consultoria-AS | +| **IP de Administración** | 192.168.10.3 | | **PVE Version** | 8.4.14 | | **CPU** | Intel Xeon Gold 5120 @ 2.20GHz (14c/28t) | | **RAM** | 755 GB | -| **Disco root** | 64 GB | -| **Acceso** | https://192.168.10.3:8006 | +| **Disco Root** | 64 GB | +| **Storage Principal** | ZFS (pool Multimedia) | +| **Acceso** | [https://192.168.10.3:8006](https://192.168.10.3:8006) | +| **Rol** | Nodo principal. NAS, multimedia, automatización, git, monitoring | -### Servidor 2: Dell T430 #1 Cisco1 (192.168.10.185) -| Caracteristica | Valor | +### Servidor 2: Dell T430 #1 — Cisco1 + +| Característica | Valor | |---|---| +| **Hostname** | cisco1 | | **Nodo Proxmox** | Cisco1 | +| **IP de Administración** | 192.168.10.185 | | **PVE Version** | 8.4.14 | | **CPU** | Intel Xeon E5-2609 v4 @ 1.70GHz (16c/16t, 2 sockets) | | **RAM** | 755 GB | -| **Disco root** | 94 GB | -| **Acceso** | https://192.168.10.185:8006 | +| **Disco Root** | 94 GB | +| **Acceso** | [https://192.168.10.185:8006](https://192.168.10.185:8006) | +| **Rol** | Desarrollo, gaming servers, AI interface | -### Servidor 3: Dell T430 #2 DellT430-2 (192.168.10.187) -| Caracteristica | Valor | +### Servidor 3: Dell T430 #2 — DellT430-2 + +| Característica | Valor | |---|---| +| **Hostname** | dellt430-2 | | **Nodo Proxmox** | DellT430-2 | +| **IP de Administración** | 192.168.10.187 | | **PVE Version** | 9.1.2 | | **CPU** | Intel Xeon E5-2620 v4 @ 2.10GHz (8c/16t) | | **RAM** | 126 GB | -| **Disco root** | 94 GB | -| **Acceso** | https://192.168.10.187:8006 | +| **Disco Root** | 94 GB | +| **Acceso** | [https://192.168.10.187:8006](https://192.168.10.187:8006) | +| **Rol** | Producción: ERP, e-commerce, foros, MSP | -### Servidor 4: Ryzen PC - AI Server (192.168.10.144) -| Caracteristica | Valor | +### Servidor 4: Ryzen PC — AI Server + +| Característica | Valor | |---|---| -| **OS** | Ubuntu 24.04 (bare metal) | +| **Hostname** | ai-server | +| **IP** | 192.168.10.144 | +| **OS** | Ubuntu 24.04 LTS (bare metal) | | **CPU** | AMD Ryzen 7 7700X | | **RAM** | 32 GB | -| **GPU** | NVIDIA RTX 3060 | -| **Servicio** | Ollama (LLM inference) | -| **Acceso SSH** | ssh consultoria-as@192.168.10.144 | - -## VMs y Containers - -### Servidor TYAN (192.168.10.3) - -| VMID | Nombre | Tipo | IP Estatica | RAM | Funcion | URL Externa | Estado | -|---|---|---|---|---|---|---|---| -| 100 | OMV | VM | 192.168.10.75 | 8 GB | NAS/Nube (SMB) | `\\192.168.10.75\VAULT-OMV` | running | -| 102 | Dashy | LXC | 192.168.10.86 | 2 GB | Dashboard | - | running | -| 104 | Immich | LXC | 192.168.10.78 | 6 GB | Fotos | https://immich.consultoria-as.com | running | -| 105 | Hotel Hacienda | LXC | 192.168.10.167 | 16 GB | Gestion Hotel | https://hacienda.consultoria-as.com | running | -| 106 | Dockge | LXC | 192.168.10.74 | 40 GB | Multimedia/Docker/Caddy | http://192.168.10.74:5001 | running | -| 108 | n8n | LXC | 192.168.10.83 | 8 GB | Automatizacion | https://n8n.consultoria-as.com | running | -| 109 | Navidrome | LXC | 192.168.10.85 | 10 GB | Musica | https://navidrome.consultoria-as.com | running | -| 110 | UptimeKuma | LXC | 192.168.10.87 | 1 GB | Monitoreo | https://status.consultoria-as.com | running | -| 111 | Metabase | LXC | 192.168.10.170 | 20 GB | Analytics | https://metabase.consultoria-as.com | running | -| 112 | Gitea | LXC | 192.168.10.69 | 10 GB | Git | https://git.consultoria-as.com | running | -| **200** | **NexusManager** | **LXC** | **192.168.10.138 (DHCP)** | **32 GB** | **Nueva (Ubuntu 24.04)** | **-** | **running** | -| **201** | **VisasChinas** | **LXC** | **192.168.10.139 (DHCP)** | **8 GB** | **Nueva (Ubuntu 24.04)** | **-** | **running** | -| **202** | **VT210** | **LXC** | **192.168.10.140 (DHCP)** | **16 GB** | **Nueva (Ubuntu 24.04)** | **-** | **running** | - -### Servidor Dell T430 #1 Cisco1 (192.168.10.185) - -| VMID | Nombre | Tipo | IP | RAM | Funcion | URL | Estado | -|---|---|---|---|---|---|---|---| -| 100 | vm-nier | VM | 192.168.10.108 | 8 GB | NieR Reincarnation server | https://play.consultoria-as.com | stopped | -| 101 | OpenWebUI | LXC | 192.168.10.135 | 40 GB | Interfaz Web AI (Ollama) | http://192.168.10.135:8080 | running | -| 102 | CraneGOO | VM | 192.168.10.140 | 8 GB | Proyecto CraneGOO | http://192.168.10.140 | running | -| 103 | vm-dbo | VM | - | 8 GB | Base de datos | - | stopped | -| 105 | EstradaApp | VM | - | 16 GB | Proyecto Estrada | - | running | -| 106 | AfterlifeProject | VM | 192.168.10.84 | 41 GB | Proyecto Afterlife (Strapi+Next.js+MinIO) | https://afterlife.consultoria-as.com | running | -| 107 | SocialAutomationX | VM | - | 8 GB | Automatizacion social | - | running | -| 108 | GimTracker | VM | - | 8 GB | Gym tracker | - | running | - -### Servidor Dell T430 #2 DellT430-2 (192.168.10.187) - -| VMID | Nombre | Tipo | IP | RAM | Funcion | URL Externa | Estado | -|---|---|---|---|---|---|---|---| -| 100 | SKEEN.MX | VM | 192.168.10.100 | 16 GB | Proyecto SKEEN | - | running | -| 101 | CocinaConAlma (Tandoor) | VM | 192.168.10.156 | 8 GB | Recetas - Negocio comida | https://recetas.consultoria-as.com | running | -| 102 | Odoo | LXC | 192.168.10.81 | 16 GB | ERP | https://odoo.consultoria-as.com | running | -| 103 | NodeBB | LXC | 192.168.10.73 | 8 GB | Foro | https://foro.consultoria-as.com | running | -| 104 | Autopartes | VM | 192.168.10.91 | 50 GB | Sistema Autopartes | https://nexus.consultoria-as.com + nexusautoparts.com.mx | running | -| 105 | 3D (STL Manager) | VM | 192.168.10.104 | 8 GB | Gestor archivos 3D | https://3d.consultoria-as.com | running | -| 106 | CAS-PaginasWeb | VM | 192.168.10.92 | 8 GB | Paginas Web | cronicas/pagoda.consultoria-as.com | running | -| 107 | CrawlAI | VM | - | 16 GB | Crawler con IA | - | running | -| 108 | Horux | VM | 192.168.10.90 | 24 GB | Gestion Horux | https://horuxfin.com | running | -| 109 | VOIP | VM | - | 8 GB | Telefonia | - | stopped | -| 113 | MSP | VM | 192.168.10.97 | 20 GB | MeshCentral/MSP | https://mesh.consultoria-as.com | running | - -### Servidores adicionales (no Proxmox) - -| IP | Servicio | URL | -|---|---|---| -| 192.168.10.117 | Strada (refaccionaria) | https://strada.consultoria-as.com | -| 192.168.10.123 | wger (gym tracker) | https://gym.consultoria-as.com | -| 192.168.10.144 | Ollama (Ryzen PC) | - | - -## Servicios Web y URLs - -### Servicios con acceso externo (via Caddy reverse proxy) - -| Servicio | URL Externa | IP:Puerto Interno | DNS | Estado | -|---|---|---|---|---| -| Jellyfin | https://jellyfin.consultoria-as.com | 127.0.0.1:8096 (Dockge) | Cloudflare | OK | -| Jellyseerr | https://mediarequest.consultoria-as.com | 127.0.0.1:5055 (Dockge) | Cloudflare | OK | -| Immich | https://immich.consultoria-as.com | 192.168.10.78:2283 | Cloudflare | OK | -| Odoo | https://odoo.consultoria-as.com | 192.168.10.81:8069 | Cloudflare | OK | -| n8n | https://n8n.consultoria-as.com | 192.168.10.83:5678 | Cloudflare | OK | -| Horux | https://horuxfin.com | 192.168.10.90:3000 | AWS Route 53 | OK | -| Hotel Hacienda | https://hacienda.consultoria-as.com | 192.168.10.167:5172 | Cloudflare | OK | -| API Hotel | https://api-hacienda.consultoria-as.com | 192.168.10.167:4000 | Cloudflare | OK | -| Metabase | https://metabase.consultoria-as.com | 192.168.10.170:3000 | Cloudflare | OK | -| Autopartes (Nexus) | https://nexus.consultoria-as.com | 192.168.10.91:5000 | Cloudflare | OK | -| Gitea | https://git.consultoria-as.com | 192.168.10.69:3000 | Cloudflare | OK | -| Navidrome | https://navidrome.consultoria-as.com | 192.168.10.85:4533 | Cloudflare | OK | -| NodeBB | https://foro.consultoria-as.com | 192.168.10.73:4567 | Cloudflare | OK | -| UptimeKuma | https://status.consultoria-as.com | 192.168.10.87:3001 | Cloudflare | OK | -| Cronicas | https://cronicas.consultoria-as.com | 192.168.10.92:3000 | Cloudflare | OK | -| Pagoda | https://pagoda.consultoria-as.com | 192.168.10.92:3001 | Cloudflare | OK | -| MeshCentral | https://mesh.consultoria-as.com | 192.168.10.97:4443 (HTTPS) | Cloudflare | OK | -| Recetas (Tandoor) | https://recetas.consultoria-as.com | 192.168.10.156:8080 | Cloudflare | OK | -| Afterlife | https://afterlife.consultoria-as.com | 192.168.10.84:3000 | Cloudflare | OK | -| Play (NieR) | https://play.consultoria-as.com | 192.168.10.108:443 (h2c) | Cloudflare | DOWN (vm-nier stopped) | -| 3D (STL) | https://3d.consultoria-as.com | 192.168.10.104:8000 | Cloudflare | OK | -| Gym (wger) | https://gym.consultoria-as.com | 192.168.10.123:80 | Cloudflare | OK | -| Strada (refaccionaria) | https://strada.consultoria-as.com | 192.168.10.117:80 | Cloudflare | OK | -| **NexusAutoparts (raiz)** | **https://nexusautoparts.com.mx** | **192.168.10.91:80** | **Hostinger** | **OK** | -| **NexusAutoparts WWW** | **https://www.nexusautoparts.com.mx** | **192.168.10.91:80** | **Hostinger** | **OK** | -| **NexusAutoparts Admin** | **https://admin.nexusautoparts.com.mx** | **192.168.10.91:80** | **Hostinger** | **OK** | -| **NexusAutoparts POS** | **https://pos.nexusautoparts.com.mx** | **192.168.10.91:80** | **Hostinger** | **OK** | - -### Servicios solo acceso local - -| Servicio | URL Local | -|---|---| -| OMV (NAS) | http://192.168.10.75 / `\\192.168.10.75\VAULT-OMV` | -| Dockge | http://192.168.10.74:5001 | -| qBittorrent | http://192.168.10.74:8080 | -| Sonarr | http://192.168.10.74:8989 | -| Radarr | http://192.168.10.74:7878 | -| Prowlarr | http://192.168.10.74:9696 | -| Bazarr | http://192.168.10.74:6767 | -| OpenWebUI | http://192.168.10.135:8080 | -| CraneGOO | http://192.168.10.140 | -| Ollama API | http://192.168.10.144:11434 | -| Afterlife CMS (Strapi) | http://192.168.10.84:1337 | -| Afterlife MinIO | http://192.168.10.84:9001 | -| Proxmox TYAN | https://192.168.10.3:8006 | -| Proxmox Dell185 | https://192.168.10.185:8006 | -| Proxmox Dell187 | https://192.168.10.187:8006 | - -## VMs nuevas Ubuntu 24.04 (TYAN) - -3 containers LXC nuevos creados para uso general: - -| VM | IP | CPU | RAM | Disco | SSH | -|---|---|---|---|---|---| -| NexusManager (200) | 192.168.10.138 | 8 | 32 GB | 150 GB | ssh root@192.168.10.138 | -| VisasChinas (201) | 192.168.10.139 | 4 | 8 GB | 50 GB | ssh root@192.168.10.139 | -| VT210 (202) | 192.168.10.140 | 8 | 16 GB | 75 GB | ssh root@192.168.10.140 | - -- Template: Ubuntu 24.04 standard LXC -- Storage: Multimedia (ZFS) -- Network: vmbr0 (DHCP) -- SSH habilitado: root con password Aasi940812 -- features: nesting=1 (permite Docker) - -**ATENCION**: VT210 (192.168.10.140) tiene conflicto de IP con CraneGOO (Cisco1 VM 102). Asignar IP estatica diferente cuanto antes. - -## Red - -### Topologia - -` -Internet - | -Modem ISP (192.168.10.254) - | -Switch Cisco (administrable) - | - +-- Servidor TYAN (192.168.10.3) - +-- Servidor Dell T430 #1 (192.168.10.185) - +-- Servidor Dell T430 #2 (192.168.10.187) - +-- Servidor Ryzen AI (192.168.10.144) - +-- PCs de oficina - +-- Otros dispositivos -` - -### Port Forwarding (Modem) - -| Puerto Externo | Destino | Puerto Interno | Servicio | -|---|---|---|---| -| 80 | 192.168.10.74 | 80 | Caddy (HTTP/ACME) | -| 443 | 192.168.10.74 | 443 | Caddy (HTTPS) | - -### Reverse Proxy (Caddy) - -- **Ubicacion**: Container Dockge (VMID 106, TYAN) -- **IP**: 192.168.10.74 -- **Modo**: Docker container con --network host -- **SSL**: Automatico via Lets Encrypt -- **Config**: /opt/caddy/Caddyfile - -### Asignacion de IPs - -| IP | Dispositivo/Servicio | -|---|---| -| 192.168.10.3 | Proxmox TYAN | -| 192.168.10.69 | Gitea (LXC 112 TYAN) | -| 192.168.10.73 | NodeBB (LXC 103 DellT430-2) | -| 192.168.10.74 | Dockge/Caddy (LXC 106 TYAN) | -| 192.168.10.75 | OMV (VM 100 TYAN) | -| 192.168.10.78 | Immich (LXC 104 TYAN) | -| 192.168.10.81 | Odoo (LXC 102 DellT430-2) | -| 192.168.10.83 | n8n (LXC 108 TYAN) | -| 192.168.10.84 | AfterlifeProject (VM 106 Cisco1) | -| 192.168.10.85 | Navidrome (LXC 109 TYAN) | -| 192.168.10.86 | Dashy (LXC 102 TYAN) | -| 192.168.10.87 | UptimeKuma (LXC 110 TYAN) | -| 192.168.10.90 | Horux (VM 108 DellT430-2) | -| 192.168.10.91 | Autopartes (VM 104 DellT430-2) | -| 192.168.10.92 | CAS-PaginasWeb (VM 106 DellT430-2) | -| 192.168.10.97 | MSP/MeshCentral (VM 113 DellT430-2) | -| 192.168.10.100 | SKEEN.MX (VM 100 DellT430-2) | -| 192.168.10.104 | 3D / STL Manager (VM 105 DellT430-2) | -| 192.168.10.108 | vm-nier (NieR server, VM 100 Cisco1) | -| 192.168.10.117 | Strada (refaccionaria) | -| 192.168.10.123 | wger (gym tracker) | -| 192.168.10.135 | OpenWebUI (LXC 101 Cisco1) | -| 192.168.10.138 | NexusManager (LXC 200 TYAN) | -| 192.168.10.139 | VisasChinas (LXC 201 TYAN) | -| 192.168.10.140 | CraneGOO (Cisco1) Y VT210 (TYAN) - **CONFLICTO** | -| 192.168.10.144 | Ryzen PC / Ollama (bare metal) | -| 192.168.10.156 | CocinaConAlma/Tandoor (VM 101 DellT430-2) | -| 192.168.10.167 | Hotel Hacienda (LXC 105 TYAN) | -| 192.168.10.170 | Metabase (LXC 111 TYAN) | -| 192.168.10.185 | Proxmox Dell T430 #1 | -| 192.168.10.187 | Proxmox Dell T430 #2 | -| 192.168.10.254 | Modem ISP | - -## Servicios Multimedia (Container Dockge - 192.168.10.74) - -| Servicio | Puerto | Funcion | -|---|---|---| -| Jellyfin | 8096 | Streaming video | -| Jellyseerr | 5055 | Peticiones multimedia | -| Sonarr | 8989 | Gestion de series | -| Radarr | 7878 | Gestion de peliculas | -| Prowlarr | 9696 | Indexadores | -| Bazarr | 6767 | Subtitulos | -| qBittorrent | 8080 | Descargas | -| Dockge | 5001 | Gestion Docker | -| Caddy | 80/443 | Reverse Proxy | - -## Stack de AI - -| Componente | Ubicacion | IP | Funcion | -|---|---|---|---| -| Ollama | Ryzen PC (bare metal) | 192.168.10.144:11434 | LLM inference con GPU RTX 3060 | -| OpenWebUI | Cisco1 (LXC 101) | 192.168.10.135:8080 | Interfaz web para chat AI | -| Modelo actual | - | - | qwen3.5:9b (Q4_K_M, 6.6 GB) | - -## Project Afterlife (192.168.10.84) - -Plataforma de preservacion de videojuegos con arquitectura multi-VM. - -| Componente | Puerto | URL | -|---|---|---| -| Web (Next.js) | 3000 | https://afterlife.consultoria-as.com | -| CMS (Strapi) | 1337 | http://192.168.10.84:1337 (local) | -| MinIO Console | 9001 | http://192.168.10.84:9001 (local) | - -## NieR Reincarnation Server (192.168.10.108) - -| Componente | Puerto | URL | -|---|---|---| -| Assets HTTP | 80 | https://play.consultoria-as.com | -| gRPC h2c | 443 | https://play.consultoria-as.com | - -## Pendientes - -- [ ] Asignar IP estatica a VT210 (conflicto con CraneGOO en 192.168.10.140) -- [ ] Acceder al switch Cisco para configurar VLANs -- [ ] Reparar/reemplazar NIC re1 del firewall OPNsense -- [ ] Configurar DDNS o Cloudflare Proxy para IP dinamica (cambio frecuente) -- [ ] Configurar alta disponibilidad (failover multi-sitio) -- [ ] Iniciar vm-nier (VM 100 Cisco1) para que play.consultoria-as.com responda -- [ ] Configurar IP estatica en EstradaApp, SocialAutomationX, GimTracker, CrawlAI -- [ ] Configurar Hostinger DNS sin Cloudflare CDN para evitar conflictos - -## Notas importantes - -- El firewall OPNsense esta desactivado temporalmente por fallo en NIC re1 -- El modem ISP actua como gateway directo (192.168.10.254) -- La IP publica es dinamica - actualmente 187.250.132.40 (cambia frecuentemente) -- Actualizar DNS cada vez que cambie la IP publica -- Todas las VMs/containers criticos tienen IP estatica -- Importante: el dominio consultoria-as.com expiro previamente y se renovo -- Nameservers de Cloudflare: christina.ns.cloudflare.com, aiden.ns.cloudflare.com -- Dominio nexusautoparts.com.mx esta en Hostinger (no Cloudflare) - -## Servicios Hotel Hacienda (requieren inicio manual tras reboot) - -`ash -pct enter 105 -cd /home/HotelEntregaNoTocar/backend/hotel_hacienda -nohup node server.js > /tmp/hotel-backend.log 2>&1 & -disown -cd /home/HotelEntregaNoTocar/frontend/Frontend-Hotel -nohup npx vite --host > /tmp/hotel-frontend.log 2>&1 & -disown -exit -` - -## Cambios recientes - -### 17 mayo 2026 -- IP publica cambio: 201.142.180.120 -> 187.250.132.40 -- DNS actualizados en Cloudflare para nueva IP -- Agregado: Strada (https://strada.consultoria-as.com) - 192.168.10.117 (refaccionaria) -- Agregado: NexusAutoparts dominios (.com.mx, www, admin, pos) en Hostinger -- Creadas 3 nuevas LXC Ubuntu 24.04 en TYAN: - - NexusManager (200) - 192.168.10.138 - 8 CPU/32 GB/150 GB - - VisasChinas (201) - 192.168.10.139 - 4 CPU/8 GB/50 GB - - VT210 (202) - 192.168.10.140 - 8 CPU/16 GB/75 GB -- Repo Git agregado: HoruxDespachosNuevo -- SSH habilitado en VMs nuevas (root/Aasi940812) -- CONFLICTO PENDIENTE: VT210 y CraneGOO usan 192.168.10.140 - -### 5 mayo 2026 -- IP publica cambio: 201.142.187.207 -> 187.250.132.40 -- Eliminado registro AAAA de Hostinger que causaba conflicto IPv6 -- DNS Cloudflare verificados y sincronizados - -### 28 abril 2026 -- Agregado: Project Afterlife (https://afterlife.consultoria-as.com) - 192.168.10.84 -- Agregado: NieR Server play.consultoria-as.com - 192.168.10.108 (h2c) -- Agregado: STL/3D Manager (https://3d.consultoria-as.com) - 192.168.10.104 -- Agregado: wger Gym (https://gym.consultoria-as.com) - 192.168.10.123 -- Nuevas VMs Cisco1: EstradaApp (105), SocialAutomationX (107), GimTracker (108) -- Nuevas VMs DellT430-2: 3D (105), CrawlAI (107) -- Renovado dominio consultoria-as.com (habia expirado) - -### 24-25 abril 2026 -- Corte de luz causo reinicio completo de infraestructura -- IP estatica configurada en TODOS los containers/VMs criticos -- Hotel cambio de 192.168.10.67 a 192.168.10.167 -- Metabase cambio de 192.168.10.70 a 192.168.10.170 -- OpenWebUI, SKEEN.MX, NodeBB, Odoo asignados IPs estaticas +| **GPU** | NVIDIA RTX 3060 12GB VRAM | +| **Disco** | 500 GB SSD | +| **Servicio Principal** | Ollama (LLM inference) | +| **Acceso SSH** | `ssh consultoria-as@192.168.10.144` | +| **Rol** | Inferencia de IA local, agentes conversacionales, TTS | --- -*Documentacion actualizada el 17 de Mayo de 2026* -*Consultoria-AS* \ No newline at end of file + +## Topología de Red + +``` + INTERNET + | + +------------+------------+ + | Modem ISP (Telmex) | + | 192.168.10.254 | + +------------+------------+ + | + +------------+------------+ + | Switch Cisco Managed | + | (VLANs pendientes) | + +------------+------------+ + | + +------------------------+------------------------+ + | | | + +----+----+ +----+----+ +----+----+ + | TYAN | | Cisco1 | |DellT430-2| + |192.168. | |192.168. | |192.168. | + | 10.3 | | 10.185 | | 10.187 | + +----+----+ +----+----+ +----+----+ + | | | + +----+----+ +----+----+ +----+----+ + | VMs/ | | VMs/ | | VMs/ | + | LXC | | LXC | | LXC | + +----+----+ +----+----+ +----+----+ + | | | + +------------------------+------------------------+ + | + +------------+------------+ + | Ryzen AI Server | + | 192.168.10.144 | + | (Ollama + Hermes) | + +-------------------------+ +``` + +### Configuración de Red + +| Parámetro | Valor | +|---|---| +| **Red** | 192.168.10.0/24 | +| **Máscara** | 255.255.255.0 | +| **Gateway** | 192.168.10.254 | +| **DNS Primario** | 1.1.1.1 (Cloudflare) | +| **DNS Secundario** | 8.8.8.8 (Google) | +| **DHCP** | Gestionado por modem ISP | + +### Port Forwarding (Modem ISP) + +| Puerto Externo | Destino | Puerto Interno | Servicio | Protocolo | +|---|---|---|---|---| +| 80 | 192.168.10.74 | 80 | Caddy (HTTP/ACME) | TCP | +| 443 | 192.168.10.74 | 443 | Caddy (HTTPS) | TCP | + +> **Nota**: OPNsense está desactivado temporalmente por fallo en NIC re1. El modem ISP actúa como gateway y firewall directo. + +--- + +## Servidores Proxmox + +### Especificaciones del Clúster + +| Nodo | Versión | CPUs | RAM Total | Almacenamiento | Estado | +|---|---|---|---|---|---| +| Consultoria-AS (TYAN) | 8.4.14 | 28 | 755 GB | ZFS + local | ✅ Activo | +| Cisco1 (Dell T430 #1) | 8.4.14 | 16 | 755 GB | local-lvm | ✅ Activo | +| DellT430-2 (Dell T430 #2) | 9.1.2 | 16 | 126 GB | local-lvm | ✅ Activo | + +### Almacenamiento + +| Nodo | Pool/Tipo | Capacidad | Uso | +|---|---|---|---| +| TYAN | Multimedia (ZFS) | > 4 TB | VMs, backups, NAS | +| TYAN | local-lvm | 64 GB | Sistema operativo | +| Cisco1 | local-lvm | 94 GB | VMs y containers | +| DellT430-2 | local-lvm | 94 GB | VMs y containers | + +### Configuración de Red en Proxmox + +| Nodo | Bridge | IP | Función | +|---|---|---|---| +| TYAN | vmbr0 | 192.168.10.3 | Red principal | +| Cisco1 | vmbr0 | 192.168.10.185 | Red principal | +| DellT430-2 | vmbr0 | 192.168.10.187 | Red principal | + +--- + +## Máquinas Virtuales y Contenedores + +### TYAN (192.168.10.3) + +| VMID | Nombre | Tipo | IP | RAM | CPU | Disco | Función | Estado | +|---|---|---|---|---|---|---|---|---| +| 100 | OMV | VM | 192.168.10.75 | 8 GB | 4 | 4 TB | NAS/Nube (SMB) | ✅ running | +| 102 | Dashy | LXC | 192.168.10.86 | 2 GB | 2 | 16 GB | Dashboard | ✅ running | +| 104 | Immich | LXC | 192.168.10.78 | 6 GB | 4 | 200 GB | Gestión de fotos | ✅ running | +| 105 | Hotel Hacienda | LXC | 192.168.10.167 | 16 GB | 4 | 100 GB | Gestión Hotel | ✅ running | +| 106 | Dockge | LXC | 192.168.10.74 | 40 GB | 8 | 500 GB | Docker/Caddy/Stack multimedia | ✅ running | +| 108 | n8n | LXC | 192.168.10.83 | 8 GB | 4 | 100 GB | Automatización workflows | ✅ running | +| 109 | Navidrome | LXC | 192.168.10.85 | 10 GB | 4 | 500 GB | Servidor de música | ✅ running | +| 110 | UptimeKuma | LXC | 192.168.10.87 | 1 GB | 1 | 16 GB | Monitoreo uptime | ✅ running | +| 111 | Metabase | LXC | 192.168.10.170 | 20 GB | 4 | 100 GB | Analytics/BI | ✅ running | +| 112 | Gitea | LXC | 192.168.10.69 | 10 GB | 4 | 200 GB | Git server | ✅ running | +| 200 | NexusManager | LXC | 192.168.10.138 | 32 GB | 8 | 150 GB | Gestión general (Ubuntu 24.04) | ✅ running | +| 201 | VisasChinas | LXC | 192.168.10.139 | 8 GB | 4 | 50 GB | Proyecto visas (Ubuntu 24.04) | ✅ running | +| 202 | VT210 | LXC | DHCP | 16 GB | 8 | 75 GB | Proyecto VT210 (Ubuntu 24.04) | ✅ running | + +### Cisco1 (192.168.10.185) + +| VMID | Nombre | Tipo | IP | RAM | CPU | Disco | Función | Estado | +|---|---|---|---|---|---|---|---|---| +| 100 | vm-nier | VM | 192.168.10.108 | 8 GB | 4 | 100 GB | NieR Reincarnation server | ⚠️ stopped | +| 101 | OpenWebUI | LXC | 192.168.10.135 | 40 GB | 8 | 200 GB | Interfaz Web AI (Ollama) | ✅ running | +| 102 | CraneGOO | VM | 192.168.10.140 | 8 GB | 4 | 100 GB | Proyecto CraneGOO | ✅ running | +| 103 | vm-dbo | VM | DHCP | 8 GB | 4 | 100 GB | Base de datos | ⚠️ stopped | +| 105 | EstradaApp | VM | DHCP | 16 GB | 4 | 150 GB | Proyecto Estrada | ✅ running | +| 106 | AfterlifeProject | VM | 192.168.10.84 | 41 GB | 8 | 500 GB | Preservación videojuegos | ✅ running | +| 107 | SocialAutomationX | VM | DHCP | 8 GB | 4 | 100 GB | Automatización social | ✅ running | +| 108 | GimTracker | VM | DHCP | 8 GB | 4 | 100 GB | Gym tracker | ✅ running | + +### DellT430-2 (192.168.10.187) + +| VMID | Nombre | Tipo | IP | RAM | CPU | Disco | Función | Estado | +|---|---|---|---|---|---|---|---|---| +| 100 | SKEEN.MX | VM | 192.168.10.100 | 16 GB | 4 | 200 GB | Proyecto SKEEN | ✅ running | +| 101 | CocinaConAlma | VM | 192.168.10.156 | 8 GB | 4 | 100 GB | Recetas (Tandoor) | ✅ running | +| 102 | Odoo | LXC | 192.168.10.81 | 16 GB | 4 | 200 GB | ERP | ✅ running | +| 103 | NodeBB | LXC | 192.168.10.73 | 8 GB | 4 | 100 GB | Foro | ✅ running | +| 104 | Autopartes | VM | 192.168.10.91 | 50 GB | 8 | 500 GB | Sistema Autopartes | ✅ running | +| 105 | 3D (STL Manager) | VM | 192.168.10.104 | 8 GB | 4 | 200 GB | Gestor archivos 3D | ✅ running | +| 106 | CAS-PaginasWeb | VM | 192.168.10.92 | 8 GB | 4 | 100 GB | Páginas web CAS | ✅ running | +| 107 | CrawlAI | VM | DHCP | 16 GB | 4 | 200 GB | Crawler con IA | ✅ running | +| 108 | Horux | VM | 192.168.10.90 | 24 GB | 8 | 500 GB | Gestión Horux 360 | ✅ running | +| 109 | VOIP | VM | DHCP | 8 GB | 4 | 100 GB | Telefonía | ⚠️ stopped | +| 113 | MSP | VM | 192.168.10.97 | 20 GB | 4 | 200 GB | MeshCentral/MSP | ✅ running | + +### Servidores Adicionales (No Proxmox) + +| IP | Hostname | Servicio | URL | +|---|---|---|---| +| 192.168.10.117 | strada | Strada (refaccionaria) | https://strada.consultoria-as.com | +| 192.168.10.123 | wger | wger (gym tracker) | https://gym.consultoria-as.com | +| 192.168.10.144 | ai-server | Ollama + Hermes | http://192.168.10.144:11434 | + +--- + +## Servicios Web + +### Servicios con Acceso Externo (vía Caddy) + +| Servicio | URL Externa | IP:Puerto Interno | DNS Provider | Estado | +|---|---|---|---|---| +| Jellyfin | https://jellyfin.consultoria-as.com | 127.0.0.1:8096 | Cloudflare | ✅ | +| Jellyseerr | https://mediarequest.consultoria-as.com | 127.0.0.1:5055 | Cloudflare | ✅ | +| Immich | https://immich.consultoria-as.com | 192.168.10.78:2283 | Cloudflare | ✅ | +| Odoo | https://odoo.consultoria-as.com | 192.168.10.81:8069 | Cloudflare | ✅ | +| n8n | https://n8n.consultoria-as.com | 192.168.10.83:5678 | Cloudflare | ✅ | +| Horux 360 | https://horuxfin.com | 192.168.10.90:3000 | AWS Route 53 | ✅ | +| Hotel Hacienda | https://hacienda.consultoria-as.com | 192.168.10.167:5172 | Cloudflare | ✅ | +| API Hotel | https://api-hacienda.consultoria-as.com | 192.168.10.167:4000 | Cloudflare | ✅ | +| Metabase | https://metabase.consultoria-as.com | 192.168.10.170:3000 | Cloudflare | ✅ | +| Nexus Autopartes | https://nexus.consultoria-as.com | 192.168.10.91:5000 | Cloudflare | ✅ | +| Gitea | https://git.consultoria-as.com | 192.168.10.69:3000 | Cloudflare | ✅ | +| Navidrome | https://navidrome.consultoria-as.com | 192.168.10.85:4533 | Cloudflare | ✅ | +| NodeBB | https://foro.consultoria-as.com | 192.168.10.73:4567 | Cloudflare | ✅ | +| UptimeKuma | https://status.consultoria-as.com | 192.168.10.87:3001 | Cloudflare | ✅ | +| Cronicas | https://cronicas.consultoria-as.com | 192.168.10.92:3000 | Cloudflare | ✅ | +| Pagoda | https://pagoda.consultoria-as.com | 192.168.10.92:3001 | Cloudflare | ✅ | +| MeshCentral | https://mesh.consultoria-as.com | 192.168.10.97:4443 | Cloudflare | ✅ | +| Recetas (Tandoor) | https://recetas.consultoria-as.com | 192.168.10.156:8080 | Cloudflare | ✅ | +| Afterlife | https://afterlife.consultoria-as.com | 192.168.10.84:3000 | Cloudflare | ✅ | +| Play (NieR) | https://play.consultoria-as.com | 192.168.10.108:443 | Cloudflare | ⚠️ DOWN | +| 3D (STL) | https://3d.consultoria-as.com | 192.168.10.104:8000 | Cloudflare | ✅ | +| Gym (wger) | https://gym.consultoria-as.com | 192.168.10.123:80 | Cloudflare | ✅ | +| Strada | https://strada.consultoria-as.com | 192.168.10.117:80 | Cloudflare | ✅ | +| NexusAutoparts | https://nexusautoparts.com.mx | 192.168.10.91:80 | Hostinger | ✅ | +| NexusAutoparts WWW | https://www.nexusautoparts.com.mx | 192.168.10.91:80 | Hostinger | ✅ | +| NexusAutoparts Admin | https://admin.nexusautoparts.com.mx | 192.168.10.91:80 | Hostinger | ✅ | +| NexusAutoparts POS | https://pos.nexusautoparts.com.mx | 192.168.10.91:80 | Hostinger | ✅ | + +### Servicios de Solo Acceso Local + +| Servicio | URL Local | Notas | +|---|---|---| +| OMV (NAS) | http://192.168.10.75 | SMB: `\\192.168.10.75\VAULT-OMV` | +| Dockge | http://192.168.10.74:5001 | Gestión Docker | +| qBittorrent | http://192.168.10.74:8080 | Descargas | +| Sonarr | http://192.168.10.74:8989 | Series | +| Radarr | http://192.168.10.74:7878 | Películas | +| Prowlarr | http://192.168.10.74:9696 | Indexadores | +| Bazarr | http://192.168.10.74:6767 | Subtítulos | +| OpenWebUI | http://192.168.10.135:8080 | Interfaz AI | +| CraneGOO | http://192.168.10.140 | Proyecto CraneGOO | +| Ollama API | http://192.168.10.144:11434 | API LLM | +| Afterlife CMS | http://192.168.10.84:1337 | Strapi (local) | +| Afterlife MinIO | http://192.168.10.84:9001 | S3 compatible (local) | +| Proxmox TYAN | https://192.168.10.3:8006 | Admin TYAN | +| Proxmox Cisco1 | https://192.168.10.185:8006 | Admin Cisco1 | +| Proxmox DellT430-2 | https://192.168.10.187:8006 | Admin DellT430-2 | + +--- + +## DNS y Dominios + +### Dominios Gestionados + +| Dominio | Proveedor DNS | Uso Principal | +|---|---|---| +| consultoria-as.com | Cloudflare | Dominio principal, servicios internos | +| horuxfin.com | AWS Route 53 | Horux 360 (finanzas) | +| nexusautoparts.com.mx | Hostinger | Nexus Autoparts (e-commerce) | + +### Name Servers + +| Dominio | NS1 | NS2 | +|---|---|---| +| consultoria-as.com | christina.ns.cloudflare.com | aiden.ns.cloudflare.com | +| horuxfin.com | [AWS Route 53 delegados] | [AWS Route 53 delegados] | +| nexusautoparts.com.mx | ns1.dns-parking.com | ns2.dns-parking.com | + +### Registros A Principales (Cloudflare) + +| Subdominio | IP Destino | Proxy | Notas | +|---|---|---|---| +| @ | 187.250.132.40 | ✅ | Dominio raíz | +| jellyfin | 187.250.132.40 | ✅ | Streaming | +| mediarequest | 187.250.132.40 | ✅ | Peticiones multimedia | +| immich | 187.250.132.40 | ✅ | Fotos | +| odoo | 187.250.132.40 | ✅ | ERP | +| n8n | 187.250.132.40 | ✅ | Automatización | +| hacienda | 187.250.132.40 | ✅ | Hotel Hacienda | +| api-hacienda | 187.250.132.40 | ✅ | API Hotel | +| metabase | 187.250.132.40 | ✅ | Analytics | +| nexus | 187.250.132.40 | ✅ | Nexus Autopartes | +| git | 187.250.132.40 | ✅ | Gitea | +| navidrome | 187.250.132.40 | ✅ | Música | +| foro | 187.250.132.40 | ✅ | Foro NodeBB | +| status | 187.250.132.40 | ✅ | UptimeKuma | +| cronicas | 187.250.132.40 | ✅ | Cronicas | +| pagoda | 187.250.132.40 | ✅ | Pagoda | +| mesh | 187.250.132.40 | ✅ | MeshCentral | +| recetas | 187.250.132.40 | ✅ | Recetas Tandoor | +| afterlife | 187.250.132.40 | ✅ | Afterlife Project | +| play | 187.250.132.40 | ✅ | NieR Server | +| 3d | 187.250.132.40 | ✅ | STL Manager | +| gym | 187.250.132.40 | ✅ | wger Gym | +| strada | 187.250.132.40 | ✅ | Strada Refaccionaria | + +> **Alerta**: La IP pública es dinámica. Cada cambio requiere actualizar registros A en Cloudflare, AWS Route 53 y Hostinger. + +--- + +## Reverse Proxy + +### Caddy Server + +| Parámetro | Valor | +|---|---| +| **Ubicación** | Container Dockge (VMID 106, TYAN) | +| **IP** | 192.168.10.74 | +| **Modo** | Docker container con `--network host` | +| **SSL** | Automático vía Let's Encrypt | +| **Configuración** | `/opt/caddy/Caddyfile` | +| **Puertos expuestos** | 80 (HTTP), 443 (HTTPS) | + +### Funcionamiento + +1. Solicitudes externas llegan al modem ISP (187.250.132.40) +2. Port forwarding redirige 80/443 a 192.168.10.74 +3. Caddy recibe la solicitud, determina el host (SNI) +4. Según el dominio, hace reverse proxy al servicio interno correspondiente +5. SSL/TLS se gestiona automáticamente con Let's Encrypt + +--- + +## Stack de Inteligencia Artificial + +### Componentes + +| Componente | Ubicación | IP | Función | Estado | +|---|---|---|---|---| +| Ollama | Ryzen PC (bare metal) | 192.168.10.144:11434 | LLM inference con GPU RTX 3060 | ✅ | +| OpenWebUI | Cisco1 (LXC 101) | 192.168.10.135:8080 | Interfaz web para chat AI | ✅ | +| Hermes Agent | Ryzen PC (bare metal) | 192.168.10.144 | Agente orquestrador multi-canal | ✅ | +| Kokoro TTS | Ryzen PC (Docker) | 192.168.10.144:8880 | Text-to-Speech GPU | ✅ | +| Hermes Dashboard | Ryzen PC (bare metal) | 192.168.10.144:9119 | Dashboard web | ✅ | + +### Modelos Instalados + +| Modelo | Ubicación | VRAM | Uso | +|---|---|---|---| +| qwen3.5:9b | Ollama local | ~6.6 GB | Respaldo / local inference | +| qwen3.6 (NaN Builders) | Cloud API | N/A | Principal (Hermes) | + +### Proveedores LLM + +| Proveedor | Modelo | Estado | Notas | +|---|---|---|---| +| NaN Builders | qwen3.6 | ✅ Principal | RTX PRO 6000 96GB VRAM | +| Ollama Local | qwen3.5:9b | ✅ Respaldo | 12GB VRAM local | +| Groq | llama-3.3-70b | ❌ Descartado | Límite TPM muy bajo | +| Z.ai | GLM-4.7-Flash | ❌ Descartado | Rate limit bajo | + +### Agentes Configurados + +| Agente | Perfil | Modelo | Canales | Rol | +|---|---|---|---|---| +| Lucy | Principal | qwen3.6 (NaN) | Telegram + Discord | Asistente general | +| Kratos | Marketing | qwen3.6 (NaN) | Telegram + Discord | Marketing & SEO | +| Juan | Nexus | qwen3.6 (NaN) | Telegram + Discord | Soporte autopartes | +| Horux | Finanzas | qwen3.6 (NaN) | WhatsApp (pendiente) | Asistente financiero | + +--- + +## Monitoreo + +### UptimeKuma + +| Parámetro | Valor | +|---|---| +| **URL** | https://status.consultoria-as.com | +| **IP** | 192.168.10.87 | +| **VMID** | 110 (TYAN) | +| **Tipo** | LXC | +| **Monitoreo** | HTTP/S, Ping, Puerto, DNS | + +### Métricas Monitoreadas + +- ✅ Todos los servicios web públicos +- ✅ APIs internas +- ✅ Servidores Proxmox (ping) +- ✅ ISP / IP pública (cambios) +- ✅ Certificados SSL (expiración) + +--- + +## Seguridad + +### Estado Actual + +| Capa | Estado | Notas | +|---|---|---| +| **Firewall perimetral** | ⚠️ Degradado | OPNsense desactivado (NIC re1 fallada) | +| **Firewall host** | ✅ Parcial | UFW en servidores Ubuntu | +| **SSL/TLS** | ✅ Automático | Let's Encrypt vía Caddy | +| **DNS Security** | ✅ Activo | Cloudflare Proxy + AWS Route 53 | +| **Acceso SSH** | ⚠️ Básico | Password auth (root/Aasi940812 en VMs nuevas) | +| **2FA** | ❌ Pendiente | No implementado en servicios críticos | +| **Backups** | ⚠️ Parcial | OMV como NAS, backups manuales | + +### Recomendaciones Prioritarias + +1. **Reparar/reemplazar NIC re1** para reactivar OPNsense +2. **Implementar autenticación SSH por clave** y deshabilitar root login +3. **Configurar fail2ban** en todos los servidores accesibles +4. **Habilitar 2FA** en Gitea, Proxmox, y servicios críticos +5. **Implementar VLANs** para segmentar redes (IoT, servidores, oficina) +6. **Configurar VPN** (WireGuard) para acceso remoto seguro + +--- + +## Proyectos Activos + +| Proyecto | URL | IP | Stack | Estado | +|---|---|---|---|---| +| Afterlife Project | https://afterlife.consultoria-as.com | 192.168.10.84 | Next.js + Strapi + MinIO | ✅ Producción | +| Nexus Autoparts | https://nexusautoparts.com.mx | 192.168.10.91 | Custom/Flask | ✅ Producción | +| Horux 360 | https://horuxfin.com | 192.168.10.90 | Node.js/Express | ✅ Producción | +| Hotel Hacienda | https://hacienda.consultoria-as.com | 192.168.10.167 | Node.js + Vite | ✅ Producción | +| SKEEN.MX | — | 192.168.10.100 | — | ✅ Activo | +| CocinaConAlma | https://recetas.consultoria-as.com | 192.168.10.156 | Tandoor | ✅ Producción | +| CraneGOO | http://192.168.10.140 | 192.168.10.140 | — | ✅ Desarrollo | +| EstradaApp | — | DHCP | — | ✅ Desarrollo | +| SocialAutomationX | — | DHCP | — | ✅ Desarrollo | +| GimTracker | — | DHCP | — | ✅ Desarrollo | +| CrawlAI | — | DHCP | — | ✅ Desarrollo | +| Strada | https://strada.consultoria-as.com | 192.168.10.117 | — | ✅ Producción | +| NieR Server | https://play.consultoria-as.com | 192.168.10.108 | gRPC/h2c | ⚠️ Stopped | +| 3D STL Manager | https://3d.consultoria-as.com | 192.168.10.104 | — | ✅ Producción | +| CAS Páginas Web | https://cronicas.consultoria-as.com | 192.168.10.92 | — | ✅ Producción | + +--- + +## Pendientes y Roadmap + +### Crítico (Inmediato) + +- [ ] **Asignar IP estática a VT210** (conflicto con CraneGOO en 192.168.10.140) +- [ ] **Reparar/reemplazar NIC re1** del firewall OPNsense +- [ ] **Configurar IP estática** en Ryzen PC (ai-server, 192.168.10.144) +- [ ] **Configurar IP estática** en EstradaApp, SocialAutomationX, GimTracker, CrawlAI + +### Alto (1-2 semanas) + +- [ ] Acceder al switch Cisco para configurar VLANs +- [ ] Configurar DDNS o Cloudflare API para IP dinámica +- [ ] Iniciar vm-nier (VM 100 Cisco1) para reactivar play.consultoria-as.com +- [ ] Configurar backups automatizados de VMs críticas +- [ ] Implementar autenticación SSH por clave en todas las VMs + +### Medio (1 mes) + +- [ ] Configurar alta disponibilidad (failover multi-sitio) +- [ ] Implementar VPN WireGuard para acceso remoto +- [ ] Configurar Hostinger DNS sin Cloudflare CDN para evitar conflictos +- [ ] Desplegar agente Horux multi-tenant +- [ ] Configurar WhatsApp gateway para Hermes +- [ ] Implementar monitoreo avanzado (Prometheus + Grafana) + +### Bajo (Futuro) + +- [ ] Migrar servicios críticos a Kubernetes +- [ ] Implementar CI/CD pipelines en Gitea +- [ ] Configurar almacenamiento distribuido (Ceph) +- [ ] Expandir clúster Proxmox con más nodos + +--- + +## Contacto y Acceso + +| Recurso | Valor | +|---|---| +| **Empresa** | Consultoria Alcaraz Salazar | +| **Email** | ialcarazsalazar@consultoria-as.com | +| **Gitea** | https://git.consultoria-as.com | +| **Status** | https://status.consultoria-as.com | +| **Documentación** | https://git.consultoria-as.com/consultoria-as/network-documentation | + +### Credenciales por Defecto (VMs Nuevas) + +| Servicio | Usuario | Contraseña | Notas | +|---|---|---|---| +| SSH VMs Ubuntu 24.04 | root | Aasi940812 | **Cambiar inmediatamente** | +| Proxmox | root | [configurado localmente] | Acceso web + SSH | +| OMV | admin | [configurado localmente] | Web GUI | + +--- + +*Documentación generada y mantenida por el Orquestrador de Consultoria-AS* +*Última actualización: 9 de Junio de 2026* diff --git a/automatizacion/README.md b/automatizacion/README.md new file mode 100644 index 0000000..58ff6b6 --- /dev/null +++ b/automatizacion/README.md @@ -0,0 +1,33 @@ +# Automatización — Consultoria-AS + +> **Servicio**: n8n (TYAN LXC 108) +> **URL**: https://n8n.consultoria-as.com +> **IP**: 192.168.10.83 + +--- + +## n8n Workflows + +| Workflow | Descripción | Estado | +|---|---|---| +| PostgreSQL backup | Backup automático de BD | ⚠️ Fallando | +| IP Change Notify | Notificación cambio IP | Pendiente | +| SSL Monitor | Monitoreo de certificados | Pendiente | +| VM Status Report | Reporte diario de VMs | Pendiente | + +## Scripts Automatizables + +- `backup-vms.sh` — Backup de VMs Proxmox +- `update-dns.sh` — Actualización DNS Cloudflare +- `check-ip.sh` — Monitoreo de IP pública + +## Integraciones Planificadas + +- Telegram (notificaciones) +- Discord (alertas) +- Gitea (CI/CD webhooks) +- UptimeKuma (estado de servicios) + +--- + +*Documentación de automatización - Consultoria-AS* diff --git a/dns/README.md b/dns/README.md new file mode 100644 index 0000000..025a132 --- /dev/null +++ b/dns/README.md @@ -0,0 +1,124 @@ +# Documentación DNS — Consultoria-AS + +> **Dominios gestionados**: consultoria-as.com, horuxfin.com, nexusautoparts.com.mx + +--- + +## Resumen de Proveedores + +| Dominio | Proveedor DNS | NS1 | NS2 | +|---|---|---|---| +| consultoria-as.com | Cloudflare | christina.ns.cloudflare.com | aiden.ns.cloudflare.com | +| horuxfin.com | AWS Route 53 | [delegados AWS] | [delegados AWS] | +| nexusautoparts.com.mx | Hostinger | ns1.dns-parking.com | ns2.dns-parking.com | + +--- + +## consultoria-as.com (Cloudflare) + +### Registros A + +| Nombre | Contenido | Proxy | TTL | Notas | +|---|---|---|---|---| +| @ | 187.250.132.40 | ✅ | Auto | Raíz | +| jellyfin | 187.250.132.40 | ✅ | Auto | Streaming | +| mediarequest | 187.250.132.40 | ✅ | Auto | Peticiones multimedia | +| immich | 187.250.132.40 | ✅ | Auto | Fotos | +| odoo | 187.250.132.40 | ✅ | Auto | ERP | +| n8n | 187.250.132.40 | ✅ | Auto | Automatización | +| hacienda | 187.250.132.40 | ✅ | Auto | Hotel Hacienda | +| api-hacienda | 187.250.132.40 | ✅ | Auto | API Hotel | +| metabase | 187.250.132.40 | ✅ | Auto | Analytics | +| nexus | 187.250.132.40 | ✅ | Auto | Nexus Autopartes (mirror) | +| git | 187.250.132.40 | ✅ | Auto | Gitea | +| navidrome | 187.250.132.40 | ✅ | Auto | Música | +| foro | 187.250.132.40 | ✅ | Auto | Foro NodeBB | +| status | 187.250.132.40 | ✅ | Auto | UptimeKuma | +| cronicas | 187.250.132.40 | ✅ | Auto | Cronicas | +| pagoda | 187.250.132.40 | ✅ | Auto | Pagoda | +| mesh | 187.250.132.40 | ✅ | Auto | MeshCentral | +| recetas | 187.250.132.40 | ✅ | Auto | Recetas Tandoor | +| afterlife | 187.250.132.40 | ✅ | Auto | Afterlife Project | +| play | 187.250.132.40 | ✅ | Auto | NieR Server | +| 3d | 187.250.132.40 | ✅ | Auto | STL Manager | +| gym | 187.250.132.40 | ✅ | Auto | wger Gym | +| strada | 187.250.132.40 | ✅ | Auto | Strada Refaccionaria | + +### Registros MX + +| Nombre | Prioridad | Destino | +|---|---|---| +| @ | 10 | [configurar según proveedor email] | + +### Registros TXT + +| Nombre | Contenido | Uso | +|---|---|---| +| @ | v=spf1... | SPF (configurar) | +| _dmarc | v=DMARC1... | DMARC (configurar) | + +--- + +## horuxfin.com (AWS Route 53) + +### Registros A + +| Nombre | Contenido | Notas | +|---|---|---| +| @ | 187.250.132.40 | Horux 360 principal | +| www | 187.250.132.40 | Redirección | + +### Notas + +- DNS delegado a AWS Route 53 +- Requiere actualización manual al cambiar IP pública + +--- + +## nexusautoparts.com.mx (Hostinger) + +### Registros A + +| Nombre | Contenido | Notas | +|---|---|---| +| @ | 187.250.132.40 | Dominio raíz | +| www | 187.250.132.40 | WWW redirect | +| admin | 187.250.132.40 | Panel administrativo | +| pos | 187.250.132.40 | Punto de venta | + +### Notas + +- DNS en Hostinger (no Cloudflare) +- Eliminado registro AAAA que causaba conflicto IPv6 +- CDN de Hostinger puede causar conflictos con Cloudflare + +--- + +## IP Pública + +| Parámetro | Valor | +|---|---| +| **IP Actual** | 187.250.132.40 | +| **Tipo** | Dinámica | +| **ISP** | Infinitum (Telmex) | +| **Último cambio** | 17 Mayo 2026 (201.142.180.120 -> 187.250.132.40) | +| **Frecuencia** | Alta (cambios frecuentes) | + +### Historial de Cambios + +| Fecha | IP Anterior | IP Nueva | +|---|---|---| +| 17 Mayo 2026 | 201.142.180.120 | 187.250.132.40 | +| 5 Mayo 2026 | 201.142.187.207 | 187.250.132.40 | + +### Acciones al Cambiar IP + +1. Actualizar registros A en Cloudflare +2. Actualizar registros A en AWS Route 53 +3. Actualizar registros A en Hostinger +4. Verificar UptimeKuma (status.consultoria-as.com) +5. Verificar certificados SSL (Caddy/Let's Encrypt) + +--- + +*Documentación DNS - Consultoria-AS* diff --git a/planificacion/roadmap-2026.md b/planificacion/roadmap-2026.md new file mode 100644 index 0000000..9c2e9ab --- /dev/null +++ b/planificacion/roadmap-2026.md @@ -0,0 +1,50 @@ +# Roadmap 2026 — Consultoria-AS + +## Q2 2026 (Abril - Junio) + +### Infraestructura +- [ ] Reparar NIC re1 de OPNsense +- [ ] Configurar IP estática en todas las VMs +- [ ] Resolver conflicto IP VT210/CraneGOO +- [ ] Configurar VLANs en switch Cisco +- [ ] Implementar WireGuard VPN + +### Seguridad +- [ ] SSH por clave en todas las VMs +- [ ] fail2ban en servidores +- [ ] 2FA en Gitea y Proxmox +- [ ] Backups automatizados + +### Proyectos +- [ ] Lanzar Nexus Autoparts al mercado +- [ ] Agente Horux multi-tenant +- [ ] WhatsApp gateway para Hermes + +## Q3 2026 (Julio - Septiembre) + +### Infraestructura +- [ ] DDNS automatizado +- [ ] Alta disponibilidad (failover) +- [ ] Monitoreo avanzado (Prometheus + Grafana) +- [ ] CI/CD pipelines en Gitea + +### Proyectos +- [ ] Expansión Afterlife Project +- [ ] CRM integrado con Odoo +- [ ] Portal de clientes + +## Q4 2026 (Octubre - Diciembre) + +### Infraestructura +- [ ] Evaluar Kubernetes +- [ ] Almacenamiento distribuido (Ceph) +- [ ] Expansión de clúster Proxmox + +### Proyectos +- [ ] SaaS multi-tenant +- [ ] Marketplace de autopartes +- [ ] Integraciones bancarias Horux + +--- + +*Roadmap 2026 - Consultoria-AS* diff --git a/proyectos/afterlife/README.md b/proyectos/afterlife/README.md new file mode 100644 index 0000000..fd44cc0 --- /dev/null +++ b/proyectos/afterlife/README.md @@ -0,0 +1,38 @@ +# Project Afterlife + +> **URL**: https://afterlife.consultoria-as.com +> **IP**: 192.168.10.84 +> **VM**: Cisco1 VM 106 +> **Estado**: Producción + +--- + +## Arquitectura + +| Componente | Puerto | Tecnología | URL | +|---|---|---|---| +| Web (Frontend) | 3000 | Next.js | https://afterlife.consultoria-as.com | +| CMS (Backend) | 1337 | Strapi | http://192.168.10.84:1337 (local) | +| Storage | 9001 | MinIO | http://192.168.10.84:9001 (local) | + +## Stack + +- **Frontend**: Next.js (React) +- **Backend**: Strapi (Headless CMS) +- **Storage**: MinIO (S3 compatible) +- **Base de datos**: PostgreSQL o SQLite (verificar) + +## Acceso + +```bash +# SSH a la VM +ssh root@192.168.10.84 + +# Servicios +cd /path/to/nextjs && npm start +cd /path/to/strapi && npm develop +``` + +--- + +*Documentación Afterlife Project - Consultoria-AS* diff --git a/proyectos/horux/README.md b/proyectos/horux/README.md new file mode 100644 index 0000000..c9dcfa1 --- /dev/null +++ b/proyectos/horux/README.md @@ -0,0 +1,45 @@ +# Horux 360 + +> **URL**: https://horuxfin.com +> **IP**: 192.168.10.90 +> **VM**: DellT430-2 VM 108 +> **Estado**: Producción + +--- + +## Arquitectura + +| Componente | Puerto | Tecnología | +|---|---|---| +| App principal | 3000 | Node.js / Express | + +## DNS + +- Proveedor: AWS Route 53 +- Dominio: horuxfin.com + +## Agente Horux (Pendiente) + +- **Perfil**: `~/.hermes/profiles/horux/` +- **Estado**: En diseño +- **Rol**: Asistente financiero para clientes de Horux 360 +- **Canales**: WhatsApp + Chat embebido en Horux web +- **Arquitectura**: Multi-tenant — cada cliente ve solo su propia base de datos PostgreSQL + +### Arquitectura Futura + +``` +Cliente WhatsApp/Web + ↓ +Identificación por número de teléfono + ↓ +Lookup tabla maestra: número → DB del cliente + ↓ +Conexión a PostgreSQL específico del cliente + ↓ +Respuesta solo con datos de ese cliente +``` + +--- + +*Documentación Horux 360 - Consultoria-AS* diff --git a/proyectos/nexus/README.md b/proyectos/nexus/README.md new file mode 100644 index 0000000..47e3d39 --- /dev/null +++ b/proyectos/nexus/README.md @@ -0,0 +1,34 @@ +# Nexus Autoparts + +> **URLs**: https://nexus.consultoria-as.com, https://nexusautoparts.com.mx +> **IP**: 192.168.10.91 +> **VM**: DellT430-2 VM 104 +> **Estado**: Producción + +--- + +## Arquitectura + +| Componente | Puerto | Tecnología | +|---|---|---| +| App principal | 5000 | Custom/Flask | +| Web pública | 80 | nexusautoparts.com.mx | + +## Dominios + +- https://nexus.consultoria-as.com (Cloudflare) +- https://nexusautoparts.com.mx (Hostinger) +- https://www.nexusautoparts.com.mx (Hostinger) +- https://admin.nexusautoparts.com.mx (Hostinger) +- https://pos.nexusautoparts.com.mx (Hostinger) + +## Funcionalidades + +- Consulta de inventario +- Catálogo TecDoc +- CFDI 4.0 +- VIN decoder + +--- + +*Documentación Nexus Autoparts - Consultoria-AS* diff --git a/red/README.md b/red/README.md new file mode 100644 index 0000000..62fcd33 --- /dev/null +++ b/red/README.md @@ -0,0 +1,146 @@ +# Documentación de Red — Consultoria-AS + +> **Rango**: 192.168.10.0/24 +> **Gateway**: 192.168.10.254 (Modem ISP) +> **Máscara**: 255.255.255.0 + +--- + +## Topología de Red + +``` + INTERNET + | + +------------+------------+ + | Modem ISP (Telmex) | + | 192.168.10.254 | + | Infinitum | + +------------+------------+ + | + +------------+------------+ + | Switch Cisco Managed | + | (SG300/SG350 series) | + | VLANs: pendientes | + +------------+------------+ + | + +------------------------+------------------------+ + | | | + +----+----+ +----+----+ +----+----+ + | TYAN | | Cisco1 | |DellT430-2| + |192.168. | |192.168. | |192.168. | + | 10.3 | | 10.185 | | 10.187 | + | (PVE) | | (PVE) | | (PVE) | + +----+----+ +----+----+ +----+----+ + | | | + +----+----+ +----+----+ +----+----+ + | VMs/ | | VMs/ | | VMs/ | + | LXC | | LXC | | LXC | + +----+----+ +----+----+ +----+----+ + | | | + +------------------------+------------------------+ + | + +------------+------------+ + | Ryzen AI Server | + | 192.168.10.144 | + +-------------------------+ + | + +------------+------------+ + | Dispositivos varios | + | (PCs oficina, etc.) | + +-------------------------+ +``` + +--- + +## Asignación de IPs + +### Infraestructura Core + +| IP | Dispositivo/Servicio | Notas | +|---|---|---| +| 192.168.10.254 | Modem ISP (Gateway) | Telmex Infinitum | +| 192.168.10.3 | Proxmox TYAN | Nodo principal | +| 192.168.10.185 | Proxmox Cisco1 | Nodo desarrollo | +| 192.168.10.187 | Proxmox DellT430-2 | Nodo producción | + +### Servicios TYAN + +| IP | Servicio | VMID | Tipo | +|---|---|---|---| +| 192.168.10.69 | Gitea | 112 | LXC | +| 192.168.10.74 | Dockge/Caddy | 106 | LXC | +| 192.168.10.75 | OMV | 100 | VM | +| 192.168.10.78 | Immich | 104 | LXC | +| 192.168.10.83 | n8n | 108 | LXC | +| 192.168.10.85 | Navidrome | 109 | LXC | +| 192.168.10.86 | Dashy | 102 | LXC | +| 192.168.10.87 | UptimeKuma | 110 | LXC | +| 192.168.10.138 | NexusManager | 200 | LXC | +| 192.168.10.139 | VisasChinas | 201 | LXC | +| 192.168.10.167 | Hotel Hacienda | 105 | LXC | +| 192.168.10.170 | Metabase | 111 | LXC | + +### Servicios Cisco1 + +| IP | Servicio | VMID | Tipo | +|---|---|---|---| +| 192.168.10.84 | AfterlifeProject | 106 | VM | +| 192.168.10.108 | vm-nier | 100 | VM | +| 192.168.10.135 | OpenWebUI | 101 | LXC | +| 192.168.10.140 | CraneGOO | 102 | VM | + +### Servicios DellT430-2 + +| IP | Servicio | VMID | Tipo | +|---|---|---|---| +| 192.168.10.73 | NodeBB | 103 | LXC | +| 192.168.10.81 | Odoo | 102 | LXC | +| 192.168.10.90 | Horux | 108 | VM | +| 192.168.10.91 | Autopartes | 104 | VM | +| 192.168.10.92 | CAS-PaginasWeb | 106 | VM | +| 192.168.10.97 | MSP/MeshCentral | 113 | VM | +| 192.168.10.100 | SKEEN.MX | 100 | VM | +| 192.168.10.104 | 3D STL Manager | 105 | VM | +| 192.168.10.156 | CocinaConAlma | 101 | VM | + +### Otros Dispositivos + +| IP | Dispositivo | Notas | +|---|---|---| +| 192.168.10.117 | Strada | Refaccionaria independiente | +| 192.168.10.123 | wger | Gym tracker independiente | +| 192.168.10.144 | Ryzen AI Server | Ollama + Hermes | +| 192.168.10.148 | PostgreSQL (n8n) | Base de datos workflow | + +--- + +## Conflictos de IP + +| IP | Dispositivo 1 | Dispositivo 2 | Severidad | Acción | +|---|---|---|---|---| +| 192.168.10.140 | CraneGOO (Cisco1) | VT210 (TYAN) | 🔴 Crítico | Asignar IP estática diferente a VT210 | + +--- + +## Segmentación Propuesta (VLANs) + +| VLAN | Rango | Uso | Dispositivos | +|---|---|---|---| +| VLAN 10 | 192.168.10.0/24 | Infraestructura (actual) | Servidores, VMs | +| VLAN 20 | 192.168.20.0/24 | Oficina/Usuarios | PCs, laptops, impresoras | +| VLAN 30 | 192.168.30.0/24 | IoT/Invitados | Dispositivos IoT, WiFi invitados | +| VLAN 40 | 192.168.40.0/24 | Management | IPMI, iDRAC, switch admin | +| VLAN 50 | 192.168.50.0/24 | DMZ | Servicios expuestos (futuro) | + +--- + +## Port Forwarding + +| Puerto Ext. | Destino | Puerto Int. | Servicio | Protocolo | +|---|---|---|---|---| +| 80 | 192.168.10.74 | 80 | Caddy HTTP | TCP | +| 443 | 192.168.10.74 | 443 | Caddy HTTPS | TCP | + +--- + +*Documentación de red - Consultoria-AS* diff --git a/scripts/backup-vms.sh b/scripts/backup-vms.sh new file mode 100755 index 0000000..d7006ae --- /dev/null +++ b/scripts/backup-vms.sh @@ -0,0 +1,26 @@ +#!/bin/bash +# Script de backup para VMs Proxmox +# Uso: ./backup-vms.sh [storage] + +STORAGE=${1:-"/mnt/pve/Multimedia/backup"} +DATE=$(date +%Y%m%d_%H%M%S) +LOG="/var/log/proxmox-backup-${DATE}.log" + +# VMs a respaldar +VMS=(100 102 104 105 106 108 109 110 111 112) + +mkdir -p "$STORAGE" + +echo "Iniciando backup: $DATE" | tee -a "$LOG" + +for VM in "${VMS[@]}"; do + echo "Backup VM $VM..." | tee -a "$LOG" + vzdump "$VM" --dumpdir "$STORAGE" --mode snapshot --compress zstd 2>&1 | tee -a "$LOG" + if [ $? -eq 0 ]; then + echo "✅ VM $VM backup OK" | tee -a "$LOG" + else + echo "❌ VM $VM backup FAILED" | tee -a "$LOG" + fi +done + +echo "Backup completado: $(date)" | tee -a "$LOG" diff --git a/scripts/check-ip.sh b/scripts/check-ip.sh new file mode 100755 index 0000000..54d4d5f --- /dev/null +++ b/scripts/check-ip.sh @@ -0,0 +1,17 @@ +#!/bin/bash +# Script para monitorear cambios de IP pública y notificar + +LAST_IP_FILE="/var/run/last_public_ip" +CURRENT_IP=$(curl -s https://api.ipify.org) + +if [ -f "$LAST_IP_FILE" ]; then + LAST_IP=$(cat "$LAST_IP_FILE") + if [ "$CURRENT_IP" != "$LAST_IP" ]; then + echo "IP cambiada: $LAST_IP -> $CURRENT_IP" + # Notificar vía n8n webhook, telegram, etc. + # curl -X POST https://n8n.consultoria-as.com/webhook/ip-change ... + echo "$CURRENT_IP" > "$LAST_IP_FILE" + fi +else + echo "$CURRENT_IP" > "$LAST_IP_FILE" +fi diff --git a/scripts/update-dns.sh b/scripts/update-dns.sh new file mode 100755 index 0000000..d70b760 --- /dev/null +++ b/scripts/update-dns.sh @@ -0,0 +1,26 @@ +#!/bin/bash +# Script para actualizar DNS en Cloudflare cuando cambia la IP pública +# Requiere: CF_API_TOKEN, CF_ZONE_ID + +CF_API_TOKEN="tu_token_aqui" +CF_ZONE_ID="tu_zone_id_aqui" +DOMAINS=("jellyfin" "immich" "odoo" "n8n" "git" "status") + +CURRENT_IP=$(curl -s https://api.ipify.org) + +echo "IP actual: $CURRENT_IP" + +for DOMAIN in "${DOMAINS[@]}"; do + # Obtener record ID + RECORD_ID=$(curl -s -X GET "https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records?name=${DOMAIN}.consultoria-as.com" \ + -H "Authorization: Bearer $CF_API_TOKEN" \ + -H "Content-Type: application/json" | jq -r '.result[0].id') + + # Actualizar + curl -s -X PUT "https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records/$RECORD_ID" \ + -H "Authorization: Bearer $CF_API_TOKEN" \ + -H "Content-Type: application/json" \ + --data "{\"type\":\"A\",\"name\":\"${DOMAIN}\",\"content\":\"$CURRENT_IP\",\"ttl\":120,\"proxied\":true}" + + echo "Actualizado: ${DOMAIN}.consultoria-as.com -> $CURRENT_IP" +done diff --git a/seguridad/README.md b/seguridad/README.md new file mode 100644 index 0000000..6645354 --- /dev/null +++ b/seguridad/README.md @@ -0,0 +1,53 @@ +# Política de Seguridad — Consultoria-AS + +> **Estado**: Parcialmente implementada +> **Última revisión**: 9 Junio 2026 + +--- + +## Estado de Seguridad por Capa + +| Capa | Estado | Detalle | +|---|---|---| +| Perimetral (Firewall) | ⚠️ Degradado | OPNsense desactivado, modem ISP como firewall | +| Host (UFW) | ✅ Parcial | Activado en servidores Ubuntu | +| Red (VLANs) | ❌ No implementado | Switch sin configurar | +| Aplicación | ⚠️ Variable | Depende del servicio | +| Datos | ⚠️ Parcial | Backups manuales | +| Acceso remoto | ❌ Inseguro | SSH con password, sin VPN | + +--- + +## Riesgos Identificados + +| Riesgo | Severidad | Mitigación Actual | Mitigación Propuesta | +|---|---|---|---| +| Sin firewall perimetral | 🔴 Alto | Modem ISP básico | Reparar OPNsense | +| SSH con password | 🔴 Alto | — | Claves SSH + fail2ban | +| IPs dinámicas sin DDNS | 🟡 Medio | Actualización manual | Cloudflare API + script | +| Sin VLANs | 🟡 Medio | Red plana | Configurar switch Cisco | +| Sin VPN | 🔴 Alto | — | WireGuard | +| Sin 2FA | 🟡 Medio | — | Habilitar en servicios críticos | +| Backup sin automatizar | 🟡 Medio | Manual | vzdump + cron | + +--- + +## Credenciales por Defecto (Cambiar) + +| Servicio | Usuario | Password | Ubicación | +|---|---|---|---| +| VMs Ubuntu 24.04 nuevas | root | Aasi940812 | TYAN LXC 200, 201, 202 | + +## Recomendaciones + +1. Implementar autenticación SSH por clave pública +2. Deshabilitar login root vía SSH +3. Configurar fail2ban en todos los servidores +4. Habilitar 2FA en Gitea, Proxmox +5. Configurar WireGuard VPN para acceso remoto +6. Implementar backups automatizados +7. Configurar DDNS para IP dinámica + +--- + +*Documentación de seguridad - Consultoria-AS* diff --git a/servicios/caddy/README.md b/servicios/caddy/README.md new file mode 100644 index 0000000..3431dab --- /dev/null +++ b/servicios/caddy/README.md @@ -0,0 +1,63 @@ +# Caddy Reverse Proxy + +> **Ubicación**: Container Docker dentro de Dockge (TYAN LXC 106) +> **IP**: 192.168.10.74 +> **Puertos**: 80, 443 +> **SSL**: Automático vía Let's Encrypt + +--- + +## Arquitectura + +``` +Internet -> Modem (80/443) -> Caddy (192.168.10.74) -> Servicio Interno +``` + +## Configuración + +**Archivo**: `/opt/caddy/Caddyfile` + +```caddyfile +# Ejemplo de configuración Caddy +git.consultoria-as.com { + reverse_proxy 192.168.10.69:3000 +} + +immich.consultoria-as.com { + reverse_proxy 192.168.10.78:2283 +} + +# ... (configuración completa en servidor) +``` + +## Servicios Proxyados + +| Dominio | Destino | Notas | +|---|---|---| +| git.consultoria-as.com | 192.168.10.69:3000 | Gitea | +| immich.consultoria-as.com | 192.168.10.78:2283 | Immich | +| odoo.consultoria-as.com | 192.168.10.81:8069 | Odoo | +| n8n.consultoria-as.com | 192.168.10.83:5678 | n8n | +| afterlife.consultoria-as.com | 192.168.10.84:3000 | Afterlife | +| navidrome.consultoria-as.com | 192.168.10.85:4533 | Navidrome | +| hacienda.consultoria-as.com | 192.168.10.167:5172 | Hotel Frontend | +| api-hacienda.consultoria-as.com | 192.168.10.167:4000 | Hotel API | +| metabase.consultoria-as.com | 192.168.10.170:3000 | Metabase | +| status.consultoria-as.com | 192.168.10.87:3001 | UptimeKuma | + +## Comandos + +```bash +# Recargar configuración +docker exec caddy caddy reload --config /etc/caddy/Caddyfile + +# Ver logs +docker logs -f caddy + +# Estado de certificados +docker exec caddy caddy list-modules | grep tls +``` + +--- + +*Documentación Caddy - Consultoria-AS* diff --git a/servicios/jellyfin-stack/README.md b/servicios/jellyfin-stack/README.md new file mode 100644 index 0000000..c19528e --- /dev/null +++ b/servicios/jellyfin-stack/README.md @@ -0,0 +1,37 @@ +# Stack Multimedia — Dockge (TYAN) + +> **Ubicación**: Container Docker dentro de Dockge (TYAN LXC 106) +> **IP**: 192.168.10.74 +> **Acceso**: http://192.168.10.74:5001 (Dockge) + +--- + +## Servicios + +| Servicio | Puerto | Función | URL Local | +|---|---|---|---| +| Jellyfin | 8096 | Streaming video | http://192.168.10.74:8096 | +| Jellyseerr | 5055 | Peticiones multimedia | http://192.168.10.74:5055 | +| Sonarr | 8989 | Gestión de series | http://192.168.10.74:8989 | +| Radarr | 7878 | Gestión de películas | http://192.168.10.74:7878 | +| Prowlarr | 9696 | Indexadores | http://192.168.10.74:9696 | +| Bazarr | 6767 | Subtítulos | http://192.168.10.74:6767 | +| qBittorrent | 8080 | Descargas | http://192.168.10.74:8080 | + +## URLs Externas + +| Servicio | URL | +|---|---| +| Jellyfin | https://jellyfin.consultoria-as.com | +| Jellyseerr | https://mediarequest.consultoria-as.com | + +## Volumen Compartido + +Los servicios comparten volúmenes para: +- `/media/movies` — Películas +- `/media/tv` — Series +- `/downloads` — Descargas + +--- + +*Documentación Stack Multimedia - Consultoria-AS* diff --git a/servidores/ai-server/README.md b/servidores/ai-server/README.md new file mode 100644 index 0000000..f750515 --- /dev/null +++ b/servidores/ai-server/README.md @@ -0,0 +1,237 @@ +# Servidor de IA — Ryzen PC (AI Server) + +> **IP**: 192.168.10.144 +> **Hostname**: ai-server +> **OS**: Ubuntu Server 24.04 LTS (bare metal) +> **Rol**: Inferencia de IA local, agentes conversacionales, TTS + +--- + +## Hardware + +| Componente | Especificación | +|---|---| +| **CPU** | AMD Ryzen 7 7700X | +| **RAM** | 32 GB DDR5 | +| **GPU** | NVIDIA RTX 3060 12GB VRAM | +| **Disco** | 500 GB NVMe SSD | +| **Red** | 1GbE | + +--- + +## Servicios Instalados + +| Servicio | Versión | Puerto | Estado | Descripción | +|---|---|---|---|---| +| Ollama | Latest | 11434 | ✅ | Motor de inferencia LLM | +| Hermes Agent | v0.9.0 | — | ✅ | Agente orquestrador multi-canal | +| Kokoro TTS | v0.2.2 | 8880 | ✅ Docker | Text-to-Speech GPU | +| Hermes Dashboard | — | 9119 | ✅ | Dashboard web | + +--- + +## Ollama + +### Configuración + +```ini +# /etc/systemd/system/ollama.service +[Service] +Environment="OLLAMA_HOST=0.0.0.0:11434" +Environment="OLLAMA_MODELS=/usr/share/ollama/.ollama/models" +``` + +### Modelos Instalados + +| Modelo | Tamaño | VRAM | Uso | +|---|---|---|---| +| qwen3.5:9b | 6.6 GB (Q4_K_M) | ~6.6 GB | Inferencia local / respaldo | + +### Comandos + +```bash +# Listar modelos +ollama list + +# Ejecutar modelo +ollama run qwen3.5:9b + +# Pull nuevo modelo +ollama pull + +# Ver logs +journalctl -u ollama -f +``` + +--- + +## Hermes Agent + +### Perfiles + +| Agente | Perfil | Modelo | Canales | Rol | +|---|---|---|---|---| +| Lucy | Principal (default) | qwen3.6 (NaN) | Telegram + Discord | Asistente general | +| Kratos | `~/.hermes/profiles/kratos/` | qwen3.6 (NaN) | Telegram + Discord | Marketing & SEO | +| Juan | `~/.hermes/profiles/nexus/` | qwen3.6 (NaN) | Telegram + Discord | Soporte autopartes | +| Horux | `~/.hermes/profiles/horux/` | — | WhatsApp (pendiente) | Asistente financiero | + +### Archivos de Configuración + +| Archivo | Descripción | +|---|---| +| `~/.hermes/config.yaml` | Configuración principal | +| `~/.hermes/SOUL.md` | Personalidad Lucy (General) | +| `~/.hermes/.env` | API keys y variables de entorno | +| `~/.hermes/skills/` | Skills instalados | +| `~/.hermes/profiles/` | Perfiles de agentes | +| `~/.hermes/sessions/` | Historial en SQLite | +| `~/.hermes/cron/` | Tareas programadas | + +### Variables de Entorno + +```bash +# NaN Builders (modelo principal) +# base_url: https://api.nan.builders/v1 +# model: qwen3.6 + +# Telegram Gateway +TELEGRAM_ALLOWED_USERS=1322020431,[usuario2],[usuario3] + +# Discord Gateway +DISCORD_ALLOWED_USERS=[id1],[id2],[id3] + +# Kokoro TTS +VOICE_TOOLS_OPENAI_KEY=dummy +VOICE_TOOLS_OPENAI_BASE_URL=http://localhost:8880/v1 + +# Gitea +GITHUB_TOKEN=d513c9be01ccd2044788c1895b74d5a27eec721c +GITHUB_API_URL=https://git.consultoria-as.com/api/v1 +``` + +### Servicios Systemd + +```bash +# Gateway de mensajería +systemctl --user status hermes-gateway + +# Dashboard web +systemctl --user status hermes-dashboard + +# Logs +journalctl --user -u hermes-gateway -f +``` + +### Comandos + +```bash +# Iniciar chat con agente principal +hermes chat + +# Iniciar chat con agente específico +kratos chat # Marketing & SEO +nexus chat # Autopartes (Juan) + +# Ver skills +hermes skills list + +# Backup de configuración +hermes backup + +# Actualizar +hermes update + +# Cambiar modelo +hermes model +``` + +--- + +## Kokoro TTS + +### Instalación + +```bash +docker run -d \ + --name kokoro-tts \ + --restart unless-stopped \ + --gpus all \ + -p 8880:8880 \ + ghcr.io/remsky/kokoro-fastapi-gpu:v0.2.2 +``` + +### Voces en Español + +| Voz | Género | Calidad | +|---|---|---| +| ef_dora | Femenina | ⭐⭐⭐⭐ | +| em_alex | Masculino | ⭐⭐⭐⭐ | +| em_santa | Masculino | ⭐⭐⭐ | + +### Integraciones + +**Open WebUI**: +- Engine: OpenAI +- URL: `http://192.168.10.144:8880/v1` +- API Key: `anything` +- Model: `kokoro` + +**Hermes**: +```bash +VOICE_TOOLS_OPENAI_KEY=dummy +VOICE_TOOLS_OPENAI_BASE_URL=http://localhost:8880/v1 +``` + +--- + +## Firewall + +```bash +# Reglas activas +sudo ufw status + +# Permitir Ollama +sudo ufw allow 11434/tcp + +# Permitir Kokoro +sudo ufw allow 8880/tcp + +# Permitir Hermes Dashboard +sudo ufw allow 9119/tcp +``` + +--- + +## Mantenimiento + +```bash +# Actualizar sistema +sudo apt update && sudo apt upgrade -y + +# Actualizar drivers NVIDIA +sudo ubuntu-drivers autoinstall + +# Ver GPU +nvidia-smi + +# Temperatura GPU +nvidia-smi -q -d TEMPERATURE + +# Logs Docker +journalctl -u docker -f +``` + +--- + +## Notas Importantes + +1. **IP dinámica**: 192.168.10.144 es DHCP — pendiente configurar IP estática en Netplan +2. **OPNsense desactivado**: Red sin firewall activo — prioridad reparar +3. **n8n workflow**: PostgreSQL en 192.168.10.148 con workflow fallando +4. **WhatsApp**: Configuración pendiente, se usará número dedicado +5. **Agente Horux**: Pendiente tabla maestra clientes y esquema de BD + +--- + +*Documentación del servidor AI - Consultoria-AS* diff --git a/servidores/cisco1/README.md b/servidores/cisco1/README.md new file mode 100644 index 0000000..5621e60 --- /dev/null +++ b/servidores/cisco1/README.md @@ -0,0 +1,176 @@ +# Servidor Dell T430 #1 — Cisco1 + +> **IP**: 192.168.10.185 +> **Hostname**: Cisco1 +> **PVE Version**: 8.4.14 +> **Rol**: Desarrollo, gaming servers, AI interfaces + +--- + +## Hardware + +| Componente | Especificación | +|---|---| +| **Chassis** | Dell PowerEdge T430 | +| **CPU** | Intel Xeon E5-2609 v4 @ 1.70GHz (2 sockets) | +| **Núcleos** | 16 físicos / 16 hilos | +| **RAM** | 755 GB ECC | +| **Disco Root** | 94 GB | +| **Storage** | local-lvm | +| **Red** | Dual 1GbE (vmbr0) | + +--- + +## VMs y Containers + +### VM 100 — vm-nier (NieR Reincarnation Server) + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.108 | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Servidor privado NieR Reincarnation | +| **URL** | https://play.consultoria-as.com | +| **Estado** | ⚠️ STOPPED | + +**Stack**: +- Assets HTTP: puerto 80 +- gRPC h2c: puerto 443 + +**Notas**: +- Requiere inicio manual: `qm start 100` +- Usa h2c (HTTP/2 sin TLS) en 443, Caddy maneja TLS termination + +--- + +### LXC 101 — OpenWebUI + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.135 | +| **RAM** | 40 GB | +| **CPU** | 8 cores | +| **Disco** | 200 GB | +| **Función** | Interfaz web para Ollama | +| **URL** | http://192.168.10.135:8080 | +| **Puerto** | 8080 | + +**Configuración**: +- Conexión Ollama: `http://192.168.10.144:11434` +- TTS: Kokoro en `http://192.168.10.144:8880/v1` + +--- + +### VM 102 — CraneGOO + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.140 | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Proyecto CraneGOO | +| **URL** | http://192.168.10.140 | +| **Estado** | ✅ running | + +**⚠️ CONFLICTO**: Comparte IP 192.168.10.140 con VT210 (TYAN LXC 202). + +--- + +### VM 103 — vm-dbo + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | DHCP | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Base de datos | +| **Estado** | ⚠️ STOPPED | + +--- + +### VM 105 — EstradaApp + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | DHCP | +| **RAM** | 16 GB | +| **CPU** | 4 cores | +| **Disco** | 150 GB | +| **Función** | Proyecto Estrada | +| **Estado** | ✅ running | + +--- + +### VM 106 — AfterlifeProject + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.84 | +| **RAM** | 41 GB | +| **CPU** | 8 cores | +| **Disco** | 500 GB | +| **Función** | Preservación de videojuegos | +| **URL Web** | https://afterlife.consultoria-as.com | +| **Estado** | ✅ running | + +**Arquitectura**: +| Componente | Puerto | URL | +|---|---|---| +| Web (Next.js) | 3000 | https://afterlife.consultoria-as.com | +| CMS (Strapi) | 1337 | http://192.168.10.84:1337 (local) | +| MinIO Console | 9001 | http://192.168.10.84:9001 (local) | + +--- + +### VM 107 — SocialAutomationX + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | DHCP | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Automatización social | +| **Estado** | ✅ running | + +--- + +### VM 108 — GimTracker + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | DHCP | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Gym tracker | +| **Estado** | ✅ running | + +--- + +## Mantenimiento + +```bash +# Acceso +ssh root@192.168.10.185 + +# Estado VMs +qm list +pct list +``` + +--- + +*Documentación del nodo Cisco1 - Consultoria-AS* diff --git a/servidores/dellt430-2/README.md b/servidores/dellt430-2/README.md new file mode 100644 index 0000000..4121e74 --- /dev/null +++ b/servidores/dellt430-2/README.md @@ -0,0 +1,217 @@ +# Servidor Dell T430 #2 — DellT430-2 + +> **IP**: 192.168.10.187 +> **Hostname**: DellT430-2 +> **PVE Version**: 9.1.2 +> **Rol**: Producción — ERP, e-commerce, foros, MSP + +--- + +## Hardware + +| Componente | Especificación | +|---|---| +| **Chassis** | Dell PowerEdge T430 | +| **CPU** | Intel Xeon E5-2620 v4 @ 2.10GHz | +| **Núcleos** | 8 físicos / 16 hilos | +| **RAM** | 126 GB ECC | +| **Disco Root** | 94 GB | +| **Storage** | local-lvm | +| **Red** | Dual 1GbE (vmbr0) | + +--- + +## VMs y Containers + +### VM 100 — SKEEN.MX + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.100 | +| **RAM** | 16 GB | +| **CPU** | 4 cores | +| **Disco** | 200 GB | +| **Función** | Proyecto SKEEN | +| **Estado** | ✅ running | + +--- + +### VM 101 — CocinaConAlma (Tandoor) + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.156 | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Recetas - Negocio de comida | +| **URL** | https://recetas.consultoria-as.com | +| **Puerto** | 8080 | +| **Estado** | ✅ running | + +--- + +### LXC 102 — Odoo + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.81 | +| **RAM** | 16 GB | +| **CPU** | 4 cores | +| **Disco** | 200 GB | +| **Función** | ERP (Enterprise Resource Planning) | +| **URL** | https://odoo.consultoria-as.com | +| **Puerto** | 8069 | +| **Estado** | ✅ running | + +--- + +### LXC 103 — NodeBB + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.73 | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Foro (NodeBB) | +| **URL** | https://foro.consultoria-as.com | +| **Puerto** | 4567 | +| **Estado** | ✅ running | + +--- + +### VM 104 — Autopartes (Nexus) + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.91 | +| **RAM** | 50 GB | +| **CPU** | 8 cores | +| **Disco** | 500 GB | +| **Función** | Sistema de autopartes (Nexus) | +| **URLs** | https://nexus.consultoria-as.com, https://nexusautoparts.com.mx | +| **Puerto** | 5000 / 80 | +| **Estado** | ✅ running | + +**Dominios**: +- https://nexus.consultoria-as.com (Cloudflare) +- https://nexusautoparts.com.mx (Hostinger) +- https://www.nexusautoparts.com.mx (Hostinger) +- https://admin.nexusautoparts.com.mx (Hostinger) +- https://pos.nexusautoparts.com.mx (Hostinger) + +--- + +### VM 105 — 3D (STL Manager) + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.104 | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 200 GB | +| **Función** | Gestor de archivos 3D STL | +| **URL** | https://3d.consultoria-as.com | +| **Puerto** | 8000 | +| **Estado** | ✅ running | + +--- + +### VM 106 — CAS-PaginasWeb + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.92 | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Páginas web CAS | +| **URLs** | https://cronicas.consultoria-as.com, https://pagoda.consultoria-as.com | +| **Puertos** | 3000, 3001 | +| **Estado** | ✅ running | + +--- + +### VM 107 — CrawlAI + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | DHCP | +| **RAM** | 16 GB | +| **CPU** | 4 cores | +| **Disco** | 200 GB | +| **Función** | Crawler con IA | +| **Estado** | ✅ running | + +--- + +### VM 108 — Horux 360 + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.90 | +| **RAM** | 24 GB | +| **CPU** | 8 cores | +| **Disco** | 500 GB | +| **Función** | Gestión financiera Horux 360 | +| **URL** | https://horuxfin.com | +| **Puerto** | 3000 | +| **DNS** | AWS Route 53 | +| **Estado** | ✅ running | + +--- + +### VM 109 — VOIP + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | DHCP | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Telefonía IP | +| **Estado** | ⚠️ STOPPED | + +--- + +### VM 113 — MSP (MeshCentral) + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.97 | +| **RAM** | 20 GB | +| **CPU** | 4 cores | +| **Disco** | 200 GB | +| **Función** | MSP / Remote Management (MeshCentral) | +| **URL** | https://mesh.consultoria-as.com | +| **Puerto** | 4443 (HTTPS) | +| **Estado** | ✅ running | + +--- + +## Mantenimiento + +```bash +# Acceso +ssh root@192.168.10.187 + +# Estado VMs +qm list +pct list +``` + +--- + +*Documentación del nodo DellT430-2 - Consultoria-AS* diff --git a/servidores/tyan/README.md b/servidores/tyan/README.md new file mode 100644 index 0000000..0d538be --- /dev/null +++ b/servidores/tyan/README.md @@ -0,0 +1,348 @@ +# Servidor TYAN — Nodo Principal Proxmox + +> **IP**: 192.168.10.3 +> **Hostname**: Consultoria-AS +> **PVE Version**: 8.4.14 +> **Rol**: Nodo principal de virtualización, NAS, multimedia, automatización + +--- + +## Hardware + +| Componente | Especificación | +|---|---| +| **Chassis** | TYAN server platform | +| **CPU** | Intel Xeon Gold 5120 @ 2.20GHz | +| **Núcleos** | 14 físicos / 28 hilos | +| **RAM** | 755 GB ECC | +| **Disco Root** | 64 GB SSD | +| **Storage** | ZFS pool "Multimedia" (capacidad extendida) | +| **Red** | Dual 1GbE (vmbr0) | + +--- + +## Proxmox Configuration + +### Almacenamiento + +```bash +# Pools ZFS +zpool list +zfs list + +# Almacenamientos configurados en Proxmox +pvesm status +``` + +| Storage | Tipo | Uso | Pool ZFS | +|---|---|---|---| +| local | directory | ISOs, templates | — | +| local-lvm | lvmthin | VMs pequeñas | — | +| Multimedia | zfs | VMs grandes, backups | Multimedia | + +### Network + +```bash +# Configuración de red en /etc/network/interfaces +auto lo +iface lo inet loopback + +iface eno1 inet manual + +auto vmbr0 +iface vmbr0 inet static + address 192.168.10.3/24 + gateway 192.168.10.254 + bridge-ports eno1 + bridge-stp off + bridge-fd 0 +``` + +### Recursos Totales + +| Recurso | Total | Asignado | Disponible | +|---|---|---|---| +| CPU | 28 cores | ~45 cores (overcommit) | variable | +| RAM | 755 GB | ~150 GB | ~600 GB | +| Storage | > 4 TB | ~2 TB | ~2 TB | + +--- + +## VMs y Containers (Detalle) + +### VM 100 — OMV (OpenMediaVault) + +| Parámetro | Valor | +|---|---| +| **Tipo** | VM (KVM) | +| **IP** | 192.168.10.75 | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 4 TB (passthrough o ZFS vol) | +| **OS** | Debian / OMV | +| **Función** | NAS, SMB, backups | + +**SMB Shares**: +- `\\192.168.10.75\VAULT-OMV` — Almacenamiento principal + +**Acceso**: +- Web: http://192.168.10.75 +- SMB: `\\192.168.10.75` + +--- + +### LXC 102 — Dashy + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.86 | +| **RAM** | 2 GB | +| **CPU** | 2 cores | +| **Disco** | 16 GB | +| **Función** | Dashboard de servicios | + +**Notas**: +- No expuesto externamente (acceso solo local) + +--- + +### LXC 104 — Immich + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.78 | +| **RAM** | 6 GB | +| **CPU** | 4 cores | +| **Disco** | 200 GB | +| **Función** | Gestión de fotos/videos | +| **URL** | https://immich.consultoria-as.com | + +**Stack**: +- Immich server +- PostgreSQL (interno o externo) +- Redis (interno) + +--- + +### LXC 105 — Hotel Hacienda + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.167 | +| **RAM** | 16 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Sistema de gestión hotelera | +| **URL Frontend** | https://hacienda.consultoria-as.com | +| **URL API** | https://api-hacienda.consultoria-as.com | + +**Inicio Manual tras Reboot**: +```bash +pct enter 105 +cd /home/HotelEntregaNoTocar/backend/hotel_hacienda +nohup node server.js > /tmp/hotel-backend.log 2>&1 & +disown +cd /home/HotelEntregaNoTocar/frontend/Frontend-Hotel +nohup npx vite --host > /tmp/hotel-frontend.log 2>&1 & +disown +exit +``` + +**Nota**: Considerar convertir a servicio systemd para inicio automático. + +--- + +### LXC 106 — Dockge + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.74 | +| **RAM** | 40 GB | +| **CPU** | 8 cores | +| **Disco** | 500 GB | +| **Función** | Docker stack manager + Caddy reverse proxy | +| **URL** | http://192.168.10.74:5001 | + +**Containers Docker** (dentro de Dockge): +| Servicio | Puerto | Función | +|---|---|---| +| Caddy | 80/443 | Reverse proxy | +| Jellyfin | 8096 | Streaming video | +| Jellyseerr | 5055 | Peticiones multimedia | +| Sonarr | 8989 | Gestión series | +| Radarr | 7878 | Gestión películas | +| Prowlarr | 9696 | Indexadores | +| Bazarr | 6767 | Subtítulos | +| qBittorrent | 8080 | Descargas | + +**Volumen Caddyfile**: +- Host: `/opt/caddy/Caddyfile` +- Container: `/etc/caddy/Caddyfile` + +--- + +### LXC 108 — n8n + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.83 | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Automatización de workflows | +| **URL** | https://n8n.consultoria-as.com | +| **Puerto** | 5678 | + +**Base de Datos**: +- PostgreSQL interno o externo + +--- + +### LXC 109 — Navidrome + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.85 | +| **RAM** | 10 GB | +| **CPU** | 4 cores | +| **Disco** | 500 GB | +| **Función** | Servidor de música (Subsonic API) | +| **URL** | https://navidrome.consultoria-as.com | +| **Puerto** | 4533 | + +--- + +### LXC 110 — UptimeKuma + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.87 | +| **RAM** | 1 GB | +| **CPU** | 1 core | +| **Disco** | 16 GB | +| **Función** | Monitoreo de uptime | +| **URL** | https://status.consultoria-as.com | +| **Puerto** | 3001 | + +--- + +### LXC 111 — Metabase + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.170 | +| **RAM** | 20 GB | +| **CPU** | 4 cores | +| **Disco** | 100 GB | +| **Función** | Business Intelligence / Analytics | +| **URL** | https://metabase.consultoria-as.com | +| **Puerto** | 3000 | + +--- + +### LXC 112 — Gitea + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.69 | +| **RAM** | 10 GB | +| **CPU** | 4 cores | +| **Disco** | 200 GB | +| **Función** | Git server | +| **URL** | https://git.consultoria-as.com | +| **Puerto** | 3000 | + +--- + +### LXC 200 — NexusManager + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.138 (DHCP) | +| **RAM** | 32 GB | +| **CPU** | 8 cores | +| **Disco** | 150 GB | +| **OS** | Ubuntu 24.04 | +| **Función** | VM de propósito general | +| **SSH** | `ssh root@192.168.10.138` | +| **Password** | Aasi940812 | + +--- + +### LXC 201 — VisasChinas + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | 192.168.10.139 (DHCP) | +| **RAM** | 8 GB | +| **CPU** | 4 cores | +| **Disco** | 50 GB | +| **OS** | Ubuntu 24.04 | +| **Función** | Proyecto Visas Chinas | +| **SSH** | `ssh root@192.168.10.139` | +| **Password** | Aasi940812 | + +--- + +### LXC 202 — VT210 + +| Parámetro | Valor | +|---|---| +| **Tipo** | LXC | +| **IP** | DHCP (solicitar estática) | +| **RAM** | 16 GB | +| **CPU** | 8 cores | +| **Disco** | 75 GB | +| **OS** | Ubuntu 24.04 | +| **Función** | Proyecto VT210 | +| **SSH** | `ssh root@` | +| **Password** | Aasi940812 | + +**⚠️ CONFLICTO CRÍTICO**: VT210 y CraneGOO (Cisco1 VM 102) comparten 192.168.10.140. Asignar IP estática diferente inmediatamente. + +--- + +## Mantenimiento + +### Comandos Útiles + +```bash +# Acceso al nodo +ssh root@192.168.10.3 + +# Listar VMs +qm list +pct list + +# Estado de recursos +pveperf +free -h +df -h + +# Backups +vzdump --dumpdir /path/to/backup +``` + +### Backups Recomendados + +| VM | Frecuencia | Destino | +|---|---|---| +| Gitea (112) | Diario | OMV / Multimedia | +| n8n (108) | Diario | OMV / Multimedia | +| Hotel Hacienda (105) | Semanal | OMV / Multimedia | +| OMV (100) | Config only | — | + +--- + +*Documentación del nodo TYAN - Consultoria-AS*