本页面介绍了访问 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 管理界面的三种方法。
- 在本地 Windows、macOS 或 Linux 机器上使用远程桌面 (RDP) 客户端访问网关 GUI 环境。
- 使用名为 sshuttle 的工具在您的机器与网关之间创建安全的 VPN 类似隧道,使您能够使用自己的 Web 浏览器和其他本地安装的工具直接访问实例中的资源。
- 创建 Compute Engine 虚拟机,并将其用作客户端机器,以使用此列表中的其他两种方法之一连接到网关 GUI 环境。
网关虚拟机会预安装一组固定的用户账号(称为网关账号),您和实例的其他用户可以在连接到网关时使用这些账号。这些账号共有 25 个,具有一组固定的用户名,从 sandboxuser1
到 sandboxuser25
。这些用户名无法更改,并且无法在网关虚拟机中创建新用户。这些账号的主要用途是建立与网关的远程桌面连接,并为登录到虚拟机的不同用户维护单独的桌面和 shell 环境。网关账号与有权访问 GDC 沙盒实例的 Google Cloud 用户账号之间没有明确的关联;这些账号与 GDC 沙盒环境本身内的用户账号之间也没有明确的关联,这一点我们将在下文中介绍。如果多个用户将使用您的实例,我们建议您创建一个跟踪电子表格,为每个用户分配一个网关账号。
如果您通过远程桌面访问环境,请从以下选项中选择操作系统和受支持的远程桌面客户端:
操作系统名称 | 操作系统版本 | 支持的远程桌面客户端 |
---|---|---|
Windows | 11 |
|
Ubuntu | 22.04 | Remmina,版本 1.4.32 |
Debian | 10 Rodete | Remmina,版本 1.4.32 |
macOS | 支持 Microsoft 远程桌面的任何版本 | Microsoft 远程桌面,最新版本 |
准备工作
如需开始连接到实例,您需要 GDC 沙盒优惠电子邮件中包含的连接信息,如获取访问权限中所述。如果您不是该电子邮件中指定的主要管理员,则必须添加到用于访问控制的 Google 群组。
在访问 GDC 沙盒环境之前,请根据您的访问方法完成以下操作:
通过本地机器进行远程桌面访问:
- 安装 gcloud CLI。
- 初始化 gcloud CLI。
- 使用您注册 GDC 沙盒时所用的电子邮件地址授权 gcloud CLI。
- 根据您的操作系统设置远程桌面客户端:
- Ubuntu 22.04 和 Debian 10 Rodete:请参阅如何安装 Remmina。
- Windows 11:请按照开始使用适用于 Windows 的远程桌面应用中的说明操作。
- macOS:按照开始使用 macOS 客户端中的步骤操作。
通过
sshuttle
隧道进行访问:sshuttle 是一种工具,可让您通过 SSH 连接建立网络流量隧道,从而在本地机器与 GDC 沙盒实例中运行的服务之间建立类似 VPN 的连接。
- 安装 gcloud CLI。
- 初始化 gcloud CLI。
- 使用您注册 GDC 沙盒时所用的电子邮件地址授权 gcloud CLI。
- 根据您的操作系统安装
sshuttle
。请参阅如何安装 sshuttle
通过 Compute Engine 虚拟机进行访问:
- 启动并设置 Cloud Shell。
- 安装 gcloud CLI。
- 初始化 gcloud CLI。
- 使用您注册 GDC 沙盒时所用的电子邮件地址授权 gcloud CLI。
访问环境
如需访问 GDC 沙盒环境,请根据您的访问方法完成以下部分:
Linux
确保您已安装 Remmina:
sudo apt-get install remmina
启动通向 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 团队收到此名称。
在本地环境中,打开 Remmina。
点击左上角的 add_box New Connection Profile(新建连接配置文件),开始创建新配置文件。
在服务器字段中,输入您的网址,格式为
localhost:PORT_NUMBER
。在用户名字段中,输入本页简介中介绍的某个网关账号的名称。这些遵循从
sandboxuser1
到sandboxuser20
的模式。在密码中,输入与您的初始密码相同的用户名。
前往分辨率字段,然后选择使用客户端分辨率。
点击保存并连接。
您现在已连接到网关上运行的虚拟桌面。 在网关环境中执行以下步骤:
- 如果您是首次连接到网关,请将密码更改为新密码:
- 打开一个终端窗口。
- 输入
passwd
并按 Enter 键。 - 如果系统提示,请输入当前密码。
- 输入新密码,然后再次输入以确认。
- 终端窗口会显示
Password updated successfully
。
- 在网关中打开 Chrome 浏览器。
- 将证书安装到 Chrome 浏览器中(一次性设置):
- 依次前往 Chrome > 设置 > 隐私权和安全 > 安全。
- 前往管理证书。
- 切换到授权标签页,然后点击导入。
- 找到
/usr/local/share/ca-certificates/web-tls-certs.crt
中的证书,然后点击选择。 - 勾选所有复选框,然后点击确定。
- 证书现在应已添加到受信任证书存储区。
- 在地址栏中,输入网址
https://console.org-1.zone1.google.gdch.test
以访问 GDC 沙盒实例的 GDC 控制台。
Windows
- 打开 PowerShell 窗口。
启动通向 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
:环境所在的可用区。
在本地环境中,打开 Microsoft 远程桌面。
在计算机输入字段中,输入格式为
localhost:PORT_NUMBER
的网址。点击连接。如果成功,系统会显示登录对话框。
在用户名字段中,输入本页简介中介绍的某个网关账号的名称。这些遵循从
sandboxuser1
到sandboxuser20
的模式。在密码中,输入与您的初始密码相同的用户名。
点击确定。
您现在已连接到网关上运行的虚拟桌面。 在网关环境中执行以下步骤:
- 如果您是首次连接到网关,请将密码更改为新密码:
- 打开一个终端窗口。
- 输入
passwd
并按 Enter 键。 - 如果系统提示,请输入当前密码。
- 输入新密码,然后再次输入以确认。
- 终端窗口会显示
Password updated successfully
。
- 在网关中打开 Chrome 浏览器。
- 将证书安装到 Chrome 浏览器中(一次性设置):
- 依次前往 Chrome > 设置 > 隐私权和安全 > 安全。
- 前往管理证书。
- 切换到授权标签页,然后点击导入。
- 找到
/usr/local/share/ca-certificates/web-tls-certs.crt
中的证书,然后点击选择。 - 勾选所有复选框,然后点击确定。
- 证书现在应已添加到受信任证书存储区。
- 在地址栏中,输入网址
https://console.org-1.zone1.google.gdch.test
以访问 GDC 沙盒实例的 GDC 控制台。
macOS
- 打开一个终端窗口。
启动通向 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
:环境所在的可用区。
打开 Microsoft 远程桌面。
点击添加 PC。
在 PC name(PC 名称)输入字段中,输入格式为
localhost:PORT_NUMBER
的网址。点击添加。如果成功,系统会显示登录对话框。
在用户名字段中,输入本页简介中介绍的某个网关账号的名称。这些遵循从
sandboxuser1
到sandboxuser20
的模式。在密码中,输入与您的初始密码相同的用户名。
点击确定。
您现在已连接到网关上运行的虚拟桌面。 在网关环境中执行以下步骤:
- 如果您是首次连接到网关,请将密码更改为新密码:
- 打开一个终端窗口。
- 输入
passwd
并按 Enter 键。 - 如果系统提示,请输入当前密码。
- 输入新密码,然后再次输入以确认。
- 终端窗口会显示
Password updated successfully
。
- 在网关中打开 Chrome 浏览器。
- 将证书安装到 Chrome 浏览器中(一次性设置):
- 依次前往 Chrome > 设置 > 隐私权和安全 > 安全。
- 前往管理证书。
- 切换到授权标签页,然后点击导入。
- 找到
/usr/local/share/ca-certificates/web-tls-certs.crt
中的证书,然后点击选择。 - 勾选所有复选框,然后点击确定。
- 证书现在应已添加到受信任证书存储区。
- 在地址栏中,输入网址
https://console.org-1.zone1.google.gdch.test
以访问 GDC 沙盒实例的 GDC 控制台。
sshuttle
如需完成此流程,您需要使用 GDC 沙盒团队在您注册服务时提供的一些值:
GDC_SANDBOX_INSTANCE_NAME
:您的 GDC 沙盒实例的名称。PROJECT_NAME
:托管您的实例的项目。ZONE
:包含实例的可用区。
请执行以下步骤,使用 sshuttle
连接到您的实例。
安装证书(一次性设置):
如需使用
sshuttle
,您必须安装证书。您只需在用于访问服务的每台机器上执行一次此操作。- 使用 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
:实例所在的可用区。
将 CA 证书添加到 Linux 信任库:
设置一个变量来保存您下载的 CA 证书的路径:
export CERT_PATH=LOCAL_FILE_PATH
如果证书文件不存在换行符,请添加一个,然后将其复制到
ca-certificates
目录:sed -i '$a\' ${CERT_PATH} sudo cp ${CERT_PATH} /usr/local/share/ca-certificates
将证书添加到信任库:
sudo update-ca-certificates
将 CA 证书添加到 Cloudtop Chrome 信任库:
- 依次前往 Chrome > 设置 > 隐私权和安全 > 安全。
- 前往管理证书。
- 切换到授权标签页,然后点击导入。
- 找到您在上一个部分中下载的证书,然后点击选择。
- 勾选所有复选框,然后点击确定。
- 证书已添加到信任库。
打开终端并运行相应命令,以启动通往 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 沙盒实例。打开 Chrome 浏览器。
在地址栏中,输入网址
https://console.org-1.zone1.google.gdch.test
以访问 GDC 沙盒实例的 GDC 控制台。 在sshuttle
运行期间,此网址将通过网关定向到您的 GDC 沙盒环境。您可以按照下一部分中的登录说明继续操作。完成实例操作后,在运行
sshuttle
命令的终端中输入 Ctrl+C,以终止sshuttle
进程。
Compute Engine 虚拟机
如需在 Compute Engine 虚拟机中访问 GDC 沙盒环境,请使用启动脚本创建虚拟机,并使用 Chrome 远程桌面。如需创建虚拟机并访问环境,请执行以下操作:
- 打开 Cloud Shell 终端。
查看可用映像的列表:
gcloud compute images list
记下 Debian-10 映像和映像所在的项目名称。
创建文本文件。例如
startup-script.txt
。在文件中,添加以下启动脚本:
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
创建 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
。
按照在虚拟机实例上安装 Chrome 远程桌面中的说明安装 Chrome 远程桌面。
按照连接到虚拟机实例中的说明激活 Chrome 远程桌面。
连接到 Compute Engine 虚拟机后,您可以选择以下任一选项来连接到实例:
- 按照 Linux 标签页中的说明使用 Remmina 连接到网关桌面 GUI,或者
- 按照 sshuttle 标签页中的说明,创建从 Compute Engine 虚拟机到网关的隧道,并使用虚拟机中的浏览器和终端连接到 GDC 沙盒实例。
登录 GDC 控制台
- 访问
https://console.org-1.zone1.google.gdch.test/
后,系统会显示 GDC 控制台的登录页面。 - 点击 Continue with fake-oidc-provider。系统会显示 Fake OIDC Provider 页面。
在选择用户列表中,点击平台管理员。
点击提交。
您现已登录 GDC 控制台。按照创建项目中的步骤设置管理员账号和您的第一个项目。
提示
如果您遇到任何浏览器问题,请关闭浏览器窗口,重新打开新的浏览器页面,然后在地址栏中输入 https://console.org-1.zone1.google.gdch.test/
。
将登录页面添加为浏览器中的首页(可选)
为方便起见,您可以将 GDC 控制台配置为浏览器中的首页地址。如果您使用远程桌面访问网关上运行的 GUI,此功能尤其有用。
在地址栏中输入
https://console.org-1.zone1.google.gdch.test/
。 系统会显示登录页面。如需将此网页添加到浏览器的主页按钮,请选择浏览器。
在 Chrome 菜单中,选择
自定义和控制 Google Chrome。依次选择用户名 > 自定义 Chrome。
在导航菜单中,选择外观。
点击显示“主页”按钮切换开关,将其切换为开启状态,然后输入
https://console.org-1.zone1.google.gdch.test/
网址。在导航菜单中,选择启动时。
选择打开特定网页或一组网页,然后输入
https://console.org-1.zone1.google.gdch.test/
的网站网址。点击添加。
每次打开浏览器或点击“主页”按钮时,GDC Sandbox 界面都会打开。