Apache Guacamole no GKE e no Cloud SQL

Last reviewed 2023-11-15 UTC

O Apache Guacamole oferece uma maneira totalmente baseada em navegador para acessar áreas de trabalho remotas usando o protocolo de área de trabalho remota (RDP), computação de rede virtual (VNC) e Secure Shell Protocol (SSH) em máquinas virtuais (VMs) do Compute Engine. O Identity-Aware Proxy (IAP) fornece acesso ao Guacamole com segurança aprimorada.

Este documento de arquitetura de referência é destinado a administradores e engenheiros de servidores que querem hospedar o Apache Guacamole no Google Kubernetes Engine (GKE) e no Cloud SQL. Neste documento, pressupomos que você esteja familiarizado com a implantação de cargas de trabalho no Kubernetes e no Cloud SQL para MySQL. Neste documento também presumimos que você conheça o Identity and Access Management e o Google Compute Engine.

Arquitetura

O diagrama a seguir mostra como um balanceador de carga do Google Cloud é configurado com o IAP para proteger uma instância do cliente Guacamole em execução no GKE:

Arquitetura para o balanceador de carga do Google Cloud configurado com o IAP.

Essa arquitetura inclui os seguintes componentes:

  • Balanceador de carga do Google Cloud: distribui o tráfego em várias instâncias, o que reduz o risco de problemas de desempenho.
  • IAP: fornece segurança aprimorada por meio de uma extensão de autenticação personalizada.
  • Cliente Guacamole: é executado no GKE e se conecta ao serviço de back-end guacd.
  • Serviço de back-end guacd: intermedia as conexões da área de trabalho remota a uma ou mais VMs do Compute Engine.
  • Banco de dados do Guacamole no Cloud SQL: gerencia dados de configuração do Guacamole.
  • Instâncias do Compute Engine: VMs hospedadas na infraestrutura do Google.

Considerações sobre o design

As diretrizes a seguir podem ajudar você a desenvolver uma arquitetura que atenda aos requisitos da sua organização para segurança, custo e desempenho.

Segurança e compliance

Essa arquitetura usa o IAP para ajudar a proteger o acesso ao serviço Guacamole. Os usuários autorizados fazem login na instância do Guacamole por meio de uma extensão de autenticação personalizada do IAP. Para saber mais, consulte a extensão personalizada no GitHub.

Quando você adiciona outros usuários (por meio da interface do usuário do Guacamole), eles precisam ter permissões por meio do IAM com o papel IAP-secured Web App User.

A configuração do OAuth criada por essa implantação é definida como interna. Por causa dessa configuração, você precisa usar uma conta do Google na mesma organização usada para implantar o Guacamole. Se você usar uma Conta do Google fora da organização, receberá um erro HTTP/403 org_internal.

Desempenho

O balanceador de carga do Google Cloud e o GKE distribuem o tráfego em várias instâncias, o que ajuda a reduzir o risco de problemas de desempenho.

Implantação

Para implantar essa arquitetura, consulte Implantar o Apache Guacamole no GKE e no Cloud SQL.

A seguir