PrivX Home Lab - Enterprise High Availability Setup

Questo repository contiene la documentazione, le configurazioni e gli script per implementare un ambiente SSH PrivX v42 in configurazione High Availability (HA), replicando l'architettura Enterprise del Polo Strategico Nazionale (PSN).

🏛️ Architettura Target

L'obiettivo è simulare un'infrastruttura critica resilient, distribuita su più nodi per garantire continuità operativa e scalabilità.

Componenti

  • Load Balancer (LB): Entry point unico (VIP). Gestisce il traffico HTTPS verso i Core e i Web Proxy. Richiede Sticky Sessions.
  • PrivX Core (2 Nodi): Il cuore della gestione accessi, policy e audit. In configurazione Active/Active.
  • PrivX Carrier + Web Proxy (2 Nodi): Gestiscono le sessioni web isolate (browser-in-browser). Scalano orizzontalmente.
  • Database (PostgreSQL): Backend centrale per configurazioni, log e sessioni.
  • Storage (NFS/S3): Per la registrazione delle sessioni (audit trail).

Diagramma Logico

graph TD
    User((User)) -->|HTTPS/443| LB[Load Balancer HAProxy/Nginx]
    
    subgraph "PrivX Core Cluster"
        LB -->|Sticky| Core1[PrivX Core 01]
        LB -->|Sticky| Core2[PrivX Core 02]
    end
    
    subgraph "PrivX Web Access Cluster"
        LB -->|WSS/443| Web1[Carrier + Web Proxy 01]
        LB -->|WSS/443| Web2[Carrier + Web Proxy 02]
    end
    
    Core1 & Core2 -->|Persistenza| DB[(PostgreSQL 15)]
    Web1 & Web2 -->|Config| Core1 & Core2
    Core1 & Core2 -->|Audit Logs| NAS[NFS Storage]

🛠️ Risorse Richieste (Proxmox)

Ruolo Hostname vCPU RAM Disk OS Note
Load Balancer privx-lb 2 4GB 20GB Rocky 9 / Debian Entry point SSL
Core Node 1 privx-core-01 4 8GB 50GB Rocky Linux 9 Master 1
Core Node 2 privx-core-02 4 8GB 50GB Rocky Linux 9 Master 2
Web/Carrier 1 privx-web-01 4 16GB 80GB Rocky Linux 9 Docker nested
Web/Carrier 2 privx-web-02 4 16GB 80GB Rocky Linux 9 Docker nested
Database privx-db 4 8GB 100GB Rocky Linux 9 PostgreSQL 15

Totale Stimato: ~22 vCPU, ~56GB RAM (Rientra nel budget del lab: 16 core fisici / 64GB RAM).

🚀 Roadmap Implementazione

  1. [Database]: Setup PostgreSQL 15 con SSL e ottimizzazioni per audit log (pg_trigram).
  2. [Core]: Installazione dei due nodi Core e configurazione Cluster via DB condiviso.
  3. [Load Balancer]: Configurazione HAProxy/Nginx per sticky sessions e SSL termination.
  4. [Web/Carrier]: Deployment dei container Docker per il browser isolation e link ai Core.
  5. [Hardening]: Chiusura porte, firewalling interno (simil-PSN).

Progetto basato su PrivX v42 Architecture & PSN Low Level Design.

Description
No description provided
Readme 32 KiB
Languages
Markdown 100%