Apache Guacamole su GKE e Cloud SQL

Last reviewed 2023-11-15 UTC

Apache Guacamole offre un modo completamente basato su browser per accedere ai desktop remoti tramite Remote Desktop Protocol (RDP), Virtual Network Computing (VNC) e Secure Shell Protocol (SSH) su macchine virtuali (VM) di Compute Engine. Identity-Aware Proxy (IAP) consente di accedere a Guacamole con una sicurezza migliorata.

Questo documento sull'architettura di riferimento è destinato agli amministratori e agli ingegneri dei server che vogliono ospitare Apache Guacamole su Google Kubernetes Engine (GKE) e Cloud SQL. Questo documento presuppone che tu conosca la procedura di deployment dei carichi di lavoro in Kubernetes e Cloud SQL per MySQL. Questo documento presuppone inoltre che tu abbia familiarità con Identity and Access Management e Google Compute Engine.

Architettura

Il seguente diagramma mostra come un bilanciatore del carico Google Cloud è configurato con IAP per proteggere un'istanza del client Guacamole in esecuzione in GKE:

Architettura per il bilanciatore del carico Google Cloud configurata con IAP.

Questa architettura include i seguenti componenti:

  • Bilanciatore del carico di Google Cloud: distribuisce il traffico su più istanze, riducendo il rischio di problemi di prestazioni.
  • IAP: fornisce una maggiore sicurezza grazie a un'estensione di autenticazione personalizzata.
  • Client Guacamole: viene eseguito in GKE e si connette al servizio di backend guacd.
  • Servizio di backend Guacd: connessioni desktop remoto dei broker a una o più VM di Compute Engine.
  • Database Guacamole in Cloud SQL: gestisce i dati di configurazione per Guacamole.
  • Istanze Compute Engine: VM ospitate nell'infrastruttura Google.

Note sul layout

Le seguenti linee guida possono aiutarti a sviluppare un'architettura che soddisfi i requisiti della tua organizzazione in termini di sicurezza, costi e prestazioni.

Sicurezza e conformità

Questa architettura utilizza IAP per proteggere l'accesso al servizio Guacamole. Gli utenti autorizzati accedono all'istanza Guacamole tramite un'estensione di autenticazione IAP personalizzata. Per maggiori dettagli, consulta l'estensione personalizzata in GitHub.

Quando aggiungi altri utenti (tramite l'interfaccia utente Guacamole), questi devono disporre delle autorizzazioni tramite IAM con il ruolo IAP-secured Web App User.

La configurazione OAuth creata da questo deployment è impostata su interna. Per questa impostazione, devi utilizzare un Account Google all'interno della stessa organizzazione che utilizzi per eseguire il deployment di Guacamole. Se utilizzi un Account Google esterno all'organizzazione, ricevi un errore HTTP/403 org_internal.

Prestazioni

Il bilanciatore del carico Google Cloud e GKE distribuiscono il traffico in più istanze, riducendo così il rischio di problemi di prestazioni.

Deployment

Per eseguire il deployment di questa architettura, vedi Eseguire il deployment di Apache Guacamole su GKE e Cloud SQL.

Passaggi successivi