连接到您的实例

本页面介绍了访问 Google Distributed Cloud (GDC) 沙盒 (GDC 沙盒) 环境的方法。

您的 GDC 沙盒实例是 Google Distributed Cloud 经过网闸隔离的环境的模拟,托管在 Google Cloud上。与真实的 Google Distributed Cloud 气隙环境一样,在 GDC 沙盒实例中运行的服务和虚拟机不会直接连接到互联网。如需与实例互动,您必须通过 GDC 沙盒网关进行连接:该网关是一个虚拟机 (VM),可访问互联网以及在 GDC 沙盒实例中运行的服务和虚拟机。

该网关是一个 Linux 虚拟机,支持 GUI,可替代私有网络上能够访问实际 Google Distributed Cloud 气隙环境的机器。您可以使用该服务来执行以下操作:

  • 访问 Google Distributed Cloud 气隙环境的基于 Web 的管理界面,即 GDC 控制台
  • 使用基于浏览器的工具或命令行工具管理和使用实例
  • 从互联网下载软件和资源,以将工作负载部署到实例

网关并非开发机器;它未预配所需的资源,并且是非持久性的。

本页介绍了访问实例的 Web 管理界面的三种方法。

  1. 在本地 Windows、macOS 或 Linux 机器上使用远程桌面 (RDP) 客户端访问网关 GUI 环境。
  2. 使用名为 sshuttle 的工具在您的机器与网关之间创建安全的 VPN 类似隧道,使您能够使用自己的 Web 浏览器和其他本地安装的工具直接访问实例中的资源。
  3. 创建 Compute Engine 虚拟机,并将其用作客户端机器,以使用此列表中的其他两种方法之一连接到网关 GUI 环境。

网关虚拟机会预安装一组固定的用户账号(称为网关账号),您和实例的其他用户可以在连接到网关时使用这些账号。这些账号共有 25 个,具有一组固定的用户名,从 sandboxuser1sandboxuser25。这些用户名无法更改,并且无法在网关虚拟机中创建新用户。这些账号的主要用途是建立与网关的远程桌面连接,并为登录到虚拟机的不同用户维护单独的桌面和 shell 环境。网关账号与有权访问 GDC 沙盒实例的 Google Cloud 用户账号之间没有明确的关联;这些账号与 GDC 沙盒环境本身内的用户账号之间也没有明确的关联,这一点我们将在下文中介绍。如果多个用户将使用您的实例,我们建议您创建一个跟踪电子表格,为每个用户分配一个网关账号。

如果您通过远程桌面访问环境,请从以下选项中选择操作系统和受支持的远程桌面客户端:

操作系统名称 操作系统版本 支持的远程桌面客户端
Windows 11
  • Microsoft 远程桌面
  • IAP 桌面
Ubuntu 22.04 Remmina,版本 1.4.32
Debian 10 Rodete Remmina,版本 1.4.32
macOS 支持 Microsoft 远程桌面的任何版本 Microsoft 远程桌面,最新版本

准备工作

如需开始连接到实例,您需要 GDC 沙盒优惠电子邮件中包含的连接信息,如获取访问权限中所述。如果您不是该电子邮件中指定的主要管理员,则必须添加到用于访问控制的 Google 群组

在访问 GDC 沙盒环境之前,请根据您的访问方法完成以下操作:

访问环境

如需访问 GDC 沙盒环境,请根据您的访问方法完成以下部分:

Linux

  1. 确保您已安装 Remmina:

    sudo apt-get install remmina
    
  2. 启动通向 GDC 沙盒实例的隧道:

    gcloud compute start-iap-tunnel GDC_SANDBOX_INSTANCE_NAME 3389 --project=PROJECT_NAME \
    --zone=ZONE --local-host-port=localhost:PORT_NUMBER
    

    替换以下内容:

    • GDC_SANDBOX_INSTANCE_NAME:GDC 沙盒实例的名称。此名称由 GDC 沙盒团队提供。
    • PORT_NUMBER:您定义的端口号。例如 8888
    • PROJECT_NAME:您的项目的名称。
    • ZONE:您的环境所在的可用区。您会从 GDC Sandbox 团队收到此名称。
  3. 在本地环境中,打开 Remmina。

  4. 点击左上角的 New Connection Profile(新建连接配置文件),开始创建新配置文件。

  5. 服务器字段中,输入您的网址,格式为 localhost:PORT_NUMBER

  6. 用户名字段中,输入本页简介中介绍的某个网关账号的名称。这些遵循从 sandboxuser1sandboxuser20 的模式。

  7. 密码中,输入与您的初始密码相同的用户名。

  8. 前往分辨率字段,然后选择使用客户端分辨率

  9. 点击保存并连接

您现在已连接到网关上运行的虚拟桌面。 在网关环境中执行以下步骤:

  1. 如果您是首次连接到网关,请将密码更改为新密码:
    1. 打开一个终端窗口。
    2. 输入 passwd 并按 Enter 键。
    3. 如果系统提示,请输入当前密码。
    4. 输入新密码,然后再次输入以确认。
    5. 终端窗口会显示 Password updated successfully
  2. 在网关中打开 Chrome 浏览器。
  3. 将证书安装到 Chrome 浏览器中(一次性设置):
    1. 依次前往 Chrome > 设置 > 隐私权和安全 > 安全
    2. 前往管理证书
    3. 切换到授权标签页,然后点击导入
    4. 找到 /usr/local/share/ca-certificates/web-tls-certs.crt 中的证书,然后点击选择
    5. 勾选所有复选框,然后点击确定
    6. 证书现在应已添加到受信任证书存储区。
  4. 在地址栏中,输入网址 https://console.org-1.zone1.google.gdch.test 以访问 GDC 沙盒实例的 GDC 控制台。

Windows

  1. 打开 PowerShell 窗口。
  2. 启动通向 GDC 沙盒实例的隧道:

    gcloud compute start-iap-tunnel GDC_SANDBOX_INSTANCE_NAME 3389 --project=PROJECT_NAME \
    --zone=ZONE --local-host-port=localhost:PORT_NUMBER
    

    替换以下内容:

    • GDC_SANDBOX_INSTANCE_NAME:GDC 沙盒实例的名称。此名称由 GDC 沙盒团队提供。
    • PORT_NUMBER:您定义的端口号。例如 8888
    • PROJECT_NAME:您的项目的名称。
    • ZONE:环境所在的可用区。
  3. 在本地环境中,打开 Microsoft 远程桌面。

  4. 计算机输入字段中,输入格式为 localhost:PORT_NUMBER 的网址。

  5. 点击连接。如果成功,系统会显示登录对话框。

  6. 用户名字段中,输入本页简介中介绍的某个网关账号的名称。这些遵循从 sandboxuser1sandboxuser20 的模式。

  7. 密码中,输入与您的初始密码相同的用户名。

  8. 点击确定

您现在已连接到网关上运行的虚拟桌面。 在网关环境中执行以下步骤:

  1. 如果您是首次连接到网关,请将密码更改为新密码:
    1. 打开一个终端窗口。
    2. 输入 passwd 并按 Enter 键。
    3. 如果系统提示,请输入当前密码。
    4. 输入新密码,然后再次输入以确认。
    5. 终端窗口会显示 Password updated successfully
  2. 在网关中打开 Chrome 浏览器。
  3. 将证书安装到 Chrome 浏览器中(一次性设置):
    1. 依次前往 Chrome > 设置 > 隐私权和安全 > 安全
    2. 前往管理证书
    3. 切换到授权标签页,然后点击导入
    4. 找到 /usr/local/share/ca-certificates/web-tls-certs.crt 中的证书,然后点击选择
    5. 勾选所有复选框,然后点击确定
    6. 证书现在应已添加到受信任证书存储区。
  4. 在地址栏中,输入网址 https://console.org-1.zone1.google.gdch.test 以访问 GDC 沙盒实例的 GDC 控制台。

macOS

  1. 打开一个终端窗口。
  2. 启动通向 GDC 沙盒实例的隧道:

    gcloud compute start-iap-tunnel GDC_SANDBOX_INSTANCE_NAME 3389 --project=PROJECT_NAME \
    --zone=ZONE --local-host-port=localhost:PORT_NUMBER
    

    替换以下内容:

    • GDC_SANDBOX_INSTANCE_NAME:GDC 沙盒实例的名称。此名称由 GDC 沙盒团队提供。
    • PORT_NUMBER:您定义的端口号。例如 8888
    • PROJECT_NAME:您的项目的名称。
    • ZONE:环境所在的可用区。
  3. 打开 Microsoft 远程桌面。

  4. 点击添加 PC

  5. PC name(PC 名称)输入字段中,输入格式为 localhost:PORT_NUMBER 的网址。

  6. 点击添加。如果成功,系统会显示登录对话框。

  7. 用户名字段中,输入本页简介中介绍的某个网关账号的名称。这些遵循从 sandboxuser1sandboxuser20 的模式。

  8. 密码中,输入与您的初始密码相同的用户名。

  9. 点击确定

您现在已连接到网关上运行的虚拟桌面。 在网关环境中执行以下步骤:

  1. 如果您是首次连接到网关,请将密码更改为新密码:
    1. 打开一个终端窗口。
    2. 输入 passwd 并按 Enter 键。
    3. 如果系统提示,请输入当前密码。
    4. 输入新密码,然后再次输入以确认。
    5. 终端窗口会显示 Password updated successfully
  2. 在网关中打开 Chrome 浏览器。
  3. 将证书安装到 Chrome 浏览器中(一次性设置):
    1. 依次前往 Chrome > 设置 > 隐私权和安全 > 安全
    2. 前往管理证书
    3. 切换到授权标签页,然后点击导入
    4. 找到 /usr/local/share/ca-certificates/web-tls-certs.crt 中的证书,然后点击选择
    5. 勾选所有复选框,然后点击确定
    6. 证书现在应已添加到受信任证书存储区。
  4. 在地址栏中,输入网址 https://console.org-1.zone1.google.gdch.test 以访问 GDC 沙盒实例的 GDC 控制台。

sshuttle

如需完成此流程,您需要使用 GDC 沙盒团队在您注册服务时提供的一些值:

  • GDC_SANDBOX_INSTANCE_NAME:您的 GDC 沙盒实例的名称。
  • PROJECT_NAME:托管您的实例的项目。
  • ZONE:包含实例的可用区。

请执行以下步骤,使用 sshuttle 连接到您的实例。

  1. 安装证书(一次性设置):

    如需使用 sshuttle,您必须安装证书。您只需在用于访问服务的每台机器上执行一次此操作。

    1. 使用 gcloud CLI 下载证书:
    gcloud compute scp \
    GDC_SANDBOX_INSTANCE_NAME:/usr/local/share/ca-certificates/web-tls-certs.crt \
    LOCAL_FILE_PATH --tunnel-through-iap \
    --project PROJECT_NAME \
    --zone ZONE
    

    替换以下内容:

    • GDC_SANDBOX_INSTANCE_NAME:您的 GDC 沙盒实例的名称。
    • LOCAL_FILE_PATH:用于下载证书的本地路径。
    • PROJECT_NAME:您的项目的名称。
    • ZONE:实例所在的可用区。
  2. 将 CA 证书添加到 Linux 信任库:

    1. 设置一个变量来保存您下载的 CA 证书的路径:

      export CERT_PATH=LOCAL_FILE_PATH
      
    2. 如果证书文件不存在换行符,请添加一个,然后将其复制到 ca-certificates 目录:

      sed -i '$a\' ${CERT_PATH}
      sudo cp ${CERT_PATH} /usr/local/share/ca-certificates
      
    3. 将证书添加到信任库:

      sudo update-ca-certificates
      
  3. 将 CA 证书添加到 Cloudtop Chrome 信任库:

    1. 依次前往 Chrome > 设置 > 隐私权和安全 > 安全
    2. 前往管理证书
    3. 切换到授权标签页,然后点击导入
    4. 找到您在上一个部分中下载的证书,然后点击选择
    5. 勾选所有复选框,然后点击确定
    6. 证书已添加到信任库。
  4. 打开终端并运行相应命令,以启动通往 GDC 沙盒实例的隧道:

    sshuttle -r GDC_SANDBOX_INSTANCE_NAME --no-latency-control \
    --ssh-cmd 'gcloud compute ssh --project PROJECT_NAME --zone ZONE --tunnel-through-iap' \
    10.200.0.0/16 --dns
    

    将以下内容替换为 GDC 沙盒团队提供给您的值:

    • GDC_SANDBOX_INSTANCE_NAME:您的 GDC 沙盒实例的名称。
    • PROJECT_NAME:您的项目的名称。
    • ZONE:包含您的 GDC 沙盒环境的可用区。

    此命令运行期间,从本地机器到 10.200.0.0/16 的所有网络请求都会通过安全隧道路由到您的 GDC 沙盒实例。

  5. 打开 Chrome 浏览器。

  6. 在地址栏中,输入网址 https://console.org-1.zone1.google.gdch.test 以访问 GDC 沙盒实例的 GDC 控制台。 在 sshuttle 运行期间,此网址将通过网关定向到您的 GDC 沙盒环境。

  7. 您可以按照下一部分中的登录说明继续操作。完成实例操作后,在运行 sshuttle 命令的终端中输入 Ctrl+C,以终止 sshuttle 进程。

Compute Engine 虚拟机

如需在 Compute Engine 虚拟机中访问 GDC 沙盒环境,请使用启动脚本创建虚拟机,并使用 Chrome 远程桌面。如需创建虚拟机并访问环境,请执行以下操作:

  1. 打开 Cloud Shell 终端。
  2. 查看可用映像的列表:

    gcloud compute images list
    

    记下 Debian-10 映像和映像所在的项目名称。

  3. 创建文本文件。例如 startup-script.txt

  4. 在文件中,添加以下启动脚本:

    sudo apt-get upgrade
    curl https://dl.google.com/linux/linux_signing_key.pub \
        | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/chrome-remote-desktop.gpg
    echo "deb [arch=amd64] https://dl.google.com/linux/chrome-remote-desktop/deb stable main" \
        | sudo tee /etc/apt/sources.list.d/chrome-remote-desktop.list
    sudo apt-get update
    sudo DEBIAN_FRONTEND=noninteractive \
        apt-get install --assume-yes chrome-remote-desktop
    sudo DEBIAN_FRONTEND=noninteractive \
        apt install --assume-yes xfce4 desktop-base dbus-x11 xscreensaver
    sudo bash -c 'echo "exec /etc/X11/Xsession /usr/bin/xfce4-session" > /etc/chrome-remote-desktop-session'
    sudo systemctl disable lightdm.service
    sudo apt install --assume-yes task-xfce-desktop
    curl -L -o google-chrome-stable_current_amd64.deb \
    https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
    sudo apt install --assume-yes --fix-broken ./google-chrome-stable_current_amd64.deb
    sudo apt install --assume-yes remmina
    
  5. 创建 Compute Engine 虚拟机:

    gcloud compute instances create VM_NAME \
    --image-project=PROJECT_NAME \
    --image-family=debian-10 \
    --metadata=startup-script-from-file=SCRIPT_FILENAME
    

    替换以下内容:

    • VM_NAME:您为虚拟机指定的名称。例如,test-vm。
    • PROJECT_NAME:包含映像的项目的名称。
    • SCRIPT_FILENAME:包含启动脚本的文件的名称。例如 startup-script.txt
  6. 按照在虚拟机实例上安装 Chrome 远程桌面中的说明安装 Chrome 远程桌面。

  7. 按照连接到虚拟机实例中的说明激活 Chrome 远程桌面。

连接到 Compute Engine 虚拟机后,您可以选择以下任一选项来连接到实例:

  • 按照 Linux 标签页中的说明使用 Remmina 连接到网关桌面 GUI,或者
  • 按照 sshuttle 标签页中的说明,创建从 Compute Engine 虚拟机到网关的隧道,并使用虚拟机中的浏览器和终端连接到 GDC 沙盒实例。

登录 GDC 控制台

  1. 访问 https://console.org-1.zone1.google.gdch.test/ 后,系统会显示 GDC 控制台的登录页面。
  2. 点击 Continue with fake-oidc-provider。系统会显示 Fake OIDC Provider 页面。
  3. 选择用户列表中,点击平台管理员

  4. 点击提交

您现已登录 GDC 控制台。按照创建项目中的步骤设置管理员账号和您的第一个项目。

提示

如果您遇到任何浏览器问题,请关闭浏览器窗口,重新打开新的浏览器页面,然后在地址栏中输入 https://console.org-1.zone1.google.gdch.test/

将登录页面添加为浏览器中的首页(可选)

为方便起见,您可以将 GDC 控制台配置为浏览器中的首页地址。如果您使用远程桌面访问网关上运行的 GUI,此功能尤其有用。

  1. 在地址栏中输入 https://console.org-1.zone1.google.gdch.test/。 系统会显示登录页面。

  2. 如需将此网页添加到浏览器的主页按钮,请选择浏览器

  3. 在 Chrome 菜单中,选择 自定义和控制 Google Chrome

  4. 依次选择用户名  > 自定义 Chrome

  5. 在导航菜单中,选择外观

  6. 点击显示“主页”按钮切换开关,将其切换为开启状态,然后输入 https://console.org-1.zone1.google.gdch.test/ 网址。

  7. 在导航菜单中,选择启动时

  8. 选择打开特定网页或一组网页,然后输入 https://console.org-1.zone1.google.gdch.test/ 的网站网址。点击添加

每次打开浏览器或点击“主页”按钮时,GDC Sandbox 界面都会打开。