《Cursor文档》-连接到私有网络

Grok Bot 电脑运行在 Cursor 云中,并通过共享静态出站 IP 地址访问互联网。如果机器人需要访问的系统 (例如内部 API、源代码控制、数据库或预发布环境) 位于私有网络中,你可以通过 Team Setup 在每台团队计算机上安装组织的网络客户端来建立连接。Tailscale 和 Cloudflare Tunnel 是常见选择,本页分别提供了这两者的实操示例。其他可在 Linux 上运行的 VPN、零信任或网状网络客户端同理。这样一来,你的服务无需暴露在公共互联网上,访问权限仍由你现有的访问控制和身份提供商管理。

Team Setup 仅限企业版。 其他方案中不提供该功能。
Network Controls 同样仅限企业版。
网络策略是另一个独立层级,同样依然生效;
能够连通私有网络并不代表可以省去导出目标允许列表。

你可以做什么

  • 通过一份由管理员管理的清单,自动为每台团队计算机安装网络客户端,无需逐台设置。
  • 让机器人访问私有网络中的服务,无需把这些服务暴露到公网,也无需将共享出站 IP 加入允许列表。
  • 控制权始终在你手中。 你的网络、你的访问规则、你的身份提供商。你随时可以在自己的管理控制台中撤销某台计算机的权限。

由你自行运维的模式

这是一种由你自行运行的模式,而非 Cursor 托管的网络模式。Cursor 只提供接入钩子:Team Setup 会在每台团队计算机上运行你的安装脚本。其余工作都由你负责:安装客户端、完成配置、为计算机进行认证、维护访问规则,以及跟进供应商的变更。Cursor 默认不安装任何内容,既不运维也不监控你的网络客户端,仪表盘中同样不会显示客户端状态。安装和配置其软件时,请以供应商的文档为准;本页只介绍 Cursor 这一侧的内容。

开始之前

  • 你是企业版方案的团队管理员。Team Setup 仅限企业版,其他方案不会显示。
  • 你的网络客户端运行在基于 Debian 的 Linux 上,且可通过 shell 脚本安装和启动。团队计算机运行 Linux,脚本以计算机用户身份运行,可使用 sudo
  • 你的网络为该客户端提供了接入通道:按照厂商的架构,在你要访问的 VPC 或内网中部署网关、出口节点或隧道连接器。
  • 你已确定计算机以何种方式向网络进行认证。请勿将凭据写入设置脚本。

Team Setup 如何运行你的脚本

Team Setup 位于 Cursor 仪表盘Grok Bot 页面:其中是在每台团队计算机上运行的安装脚本清单。每份清单包含一个或多个脚本条目,每个条目都有 IDSetup Script 和可选的 Check Script

  • 脚本在每台团队计算机上以计算机用户的身份运行;如需特权安装,请使用 sudo
  • 脚本在计算机启动时运行,并在计算机运行期间定期刷新 (大约每天一次) 时运行。
  • 如果存在 Check Script 且退出码为 0,则跳过 Setup Script;可借此避免每轮都重新安装。Setup Script 运行结束后,会再次运行 Check Script 以验证是否成功。
  • 条目按顺序逐个运行。每个脚本的超时时间为 30 分钟。脚本失败不会阻塞计算机,会在后续刷新时重试。

创建清单

打开 Team Setup

前往 Cursor 仪表盘中的 Grok Bot
并打开 Team Setup

创建清单

Manifests 旁点击 + 创建 New Manifest,然后
输入 Manifest ID,例如 private-network

编写设置脚本

在脚本条目中设置 ID (例如
install-network-client) ,并编写 Setup Script:按照提供方的
Linux 安装文档安装客户端,然后启动它,并按照你的配置要求将其接入网络。

添加检查脚本

可选择添加 Check Script (例如
command -v <your-client>) ,让已安装客户端的计算机
跳过安装步骤。

保存

点击 Save

更习惯直接编辑 JSON?在编辑器顶部将 Form 切换为 JSON。清单结构如下:

{
  "manifestId": "private-network",
  "entries": [
    {
      "id": "install-network-client",
      "setup": "#!/usr/bin/env bash\nset -euo pipefail\n# 1) Install your networking client per your provider's Linux install docs\n# 2) Start the client and connect it to your network per your configuration",
      "check": "command -v <your-client>"
    }
  ]
}

请勿包含机密信息。设置脚本会以计算机用户身份在每台团队计算机上运行,
清单是纯文本,并会应用到你的整个计算机群组。
不要嵌入认证密钥、token 或其他凭据。请让成员在计算机的浏览器中
以交互方式完成认证,这样你的身份提供商策略才能生效;或采用供应商文档中
提供的、可避免将长期凭据写入脚本的机制。

配置网络客户端

无论使用哪种工具,最后一步都是相同的:每台计算机向你的网络进行认证,你在供应商的控制台中确认该连接,然后让 Bot 访问此前无法访问的内部主机名来进行验证。交互式登录在计算机的浏览器中完成,与成员平时在那里登录公司工具的方式一致。先用一两台计算机试点,再推广到整个团队。

Tailscale

在每台 computer 上运行 Tailscale,并通过你网络内部的出口节点进行路由。这正是该 pattern 经过实践验证的配置方式。Tailscale 还提供子网路由器,用于暴露特定的私有网段;在正式采用该方案前,请先在一台试点 computer 上验证。

开始之前: 你已运营一个 tailnet,并在需要访问的 VPC 或内网中部署了出口节点。

Team Setup 清单:

  • Setup Script: 参照 Tailscale 的安装文档安装 Linux 版 Tailscale,然后按你的配置将该 computer 接入 tailnet。
  • Check Script: command -v tailscale

连接并验证:

  1. 对每台 computer 进行认证。Tailscale 会输出一个登录 URL,在 computer 的浏览器中打开,此时会应用你的身份提供商策略。不要把 auth key 写进脚本。
  2. 确认该 computer 出现在你的 Tailscale 管理控制台中,并已被允许使用出口节点。
  3. 让 Bot 尝试访问一个内部 hostname。

如果无法正常工作:

  • 客户端已安装,但没有人完成认证。登录这一步是刻意保留为手动的,因为脚本无法保存机密信息。请在 Tailscale 管理控制台中查看机器列表。
  • 你的团队网络策略为仅允许列表模式,拦截了 Tailscale 的协调服务器或中继。请放行 Tailscale 文档中列出的端点,然后重新创建该 computer。
  • 出口节点未在 tailnet 中通告或未获批准。请在管理控制台中检查路由设置。
  • computer 被重新创建 (例如镜像更新或重置之后) ,会话未能保留。请重新认证。

Cloudflare Tunnel

同样的 Team Setup 机制也适用于 Cloudflare Tunnel:网络内部的 cloudflared 连接器通过 Cloudflare 边缘发布私有服务,并由 Cloudflare Access 保护,computer 则通过 hostname 访问这些服务。该方案尚未像 Tailscale 方案那样在团队 computer 上经过充分验证,因此在全面推广前请先在一台试点 computer 上验证。

开始之前: 你已在私有网络内运行 Cloudflare Tunnel 连接器,并将所需服务经其路由,同时选定了 Cloudflare Access 策略。基于身份的策略很契合这一 pattern,因为成员会通过浏览器登录。Access 服务令牌属于机密信息,不要写进 setup 脚本。

Team Setup 清单:

  • Setup Script: 参照 Cloudflare 的下载文档安装 cloudflared。computer 上只安装客户端;连接器仍留在你的网络中。
  • Check Script: command -v cloudflared

连接并验证:

  1. 私有 HTTP 服务:通过你经隧道路由的 hostname 访问。Cloudflare Access 会执行你的策略;采用基于身份的策略时,成员通过 computer 的浏览器登录。
  2. 私有 TCP 服务 (如数据库或 SSH) :在 computer 上运行 cloudflared access tcp 打开一个本地监听端口,并让工具指向它。Cloudflare 的文档介绍了完整流程。Bot 需要该服务时,可以在自己的 shell 中启动监听。
  3. 让 Bot 尝试访问该私有 hostname 或服务。

如果无法正常工作:

  • 你网络中的连接器已下线。请在 Cloudflare 控制面板中查看隧道健康状况;这是你这一侧的问题,而非 computer 的问题。
  • Cloudflare Access 拒绝了请求。请查看 Access 日志,并确认该成员已完成认证。
  • 你的团队网络策略为仅允许列表模式,拦截了隧道 hostname 或 Cloudflare 的端点。请放行它们,然后重新创建该 computer。
  • 服务令牌被嵌入到了 setup 脚本中。请不要这样做;清单是纯文本。改用基于身份的 Access,或在使用时再提供令牌。
  • Bot 需要时,cloudflared access tcp 监听未在运行。监听不会跨会话保留,需要时再启动。

如何选择:Tailscale 让计算机获得网络层面的可达性,若配合出口节点,还能从你的网络出站。Cloudflare Tunnel 则通过 Cloudflare 边缘、在 Access 之后发布特定服务:粒度是单个服务而非整个网络,且其他服务看到的出站地址不会变化。

其他可在基于 Debian 的 Linux 上安装并运行的客户端同样遵循上述 Team Setup 步骤;在全面推广前,请先在一台试点计算机上验证。

向现有 computer 推送

  • 新建 computer 会在创建时应用清单。
  • 运行中的 computer 会在周期性刷新时获取清单更改,最长可能需要约一天。
  • 如需立即生效, 请重新启动或重新创建该 computer。成员可在桌面端应用中重置自己的 computer,组织管理员可在仪表盘中终止某个成员的 computer。durable disk 会保留,下一个 session 会启动一台全新的 computer,并在启动时应用当前清单。
  • 镜像更新会自动重新创建 computer,你的脚本也会重新应用。computer 重新创建后,包括网络客户端登录在内的登录 session 可能需要重新建立。

配合网络策略使用

Grok Bot 的网络策略是一个独立层,用于控制团队计算机可访问哪些导出目标。如果你的团队使用仅团队允许列表,请参照供应商文档,添加网络客户端所需的导出目标,例如协调服务器、中继和网关。网络策略的更改会在计算机创建或重新创建时生效。

局限性

  • 这是一种由你自行运维的方案,而非 Cursor 托管的网络模式。Cursor 不会安装、运行或监控你的网络客户端,客户端本身的支持由其供应商提供。
  • 除非你将流量路由到自己的网络,否则常规互联网流量仍会通过 Cursor 的共享静态 IP 段出站。暂不提供按客户专属的出站 IP。
  • 目前还没有可查看整个设备群脚本结果的视图。在全团队推广前,请先在一台试点电脑上验证。
  • 这与云端代理的设置无关。云端代理文档面向的是另一种产品形态,有各自的 TailscaleCloudflare Tunnel 方案;Grok Bot 电脑则按本文所述通过 Team Setup 进行配置。如果 Grok Bot 将工作委派给云端代理,这些 agents 会在云端代理的网络设置下运行,而不受你电脑上网络客户端的影响。

常见问题

我可以把认证密钥或凭据放进设置脚本里吗?

不可以。设置脚本并非机密信息存储,仪表盘也会提示不要在其中包含机密信息。请以交互方式为电脑完成认证,或采用供应商文档中无需在脚本内嵌入长期凭据的机制。

我可以使用哪些网络工具?

只要是您的团队能通过 shell 脚本在基于 Debian 的 Linux 上安装并运行的客户端均可。本页以 Tailscale 和 Cloudflare Tunnel 为例。建议先在一台试点计算机上验证您的客户端。

已有的电脑会获得新的清单吗?

会,大约一天内生效。运行中的电脑会定期刷新清单。重启或重新创建电脑可立即应用更改。

这会改变我的服务看到的 IP 地址吗?

对于经由您的网络路由的流量,会。发往您私有网络的流量来自您的网络内部,经由您的出口节点、网关或隧道连接器。其余流量仍从 Cursor 的共享静态地址段出站。

我们使用严格的网络允许列表。我们的客户端能正常工作吗?

只有在您放行其端点后才可以。请将客户端所需的导出目标添加到团队允许列表,然后重新创建电脑以应用策略更改。

这和云端代理文档中的 Tailscale 与 Cloudflare Tunnel 分区是一回事吗?

不是。那些方案专用于云端代理 VMs;其中的 Tailscale 需要 userspace networking 和代理变量。而 Grok Bot 电脑使用 Team Setup 以及您自己的网关或连接器,即本页所述方式。

哪些套餐包含 Team Setup?

Team Setup 仅限企业版。 清单由团队管理员管理。如果您在仪表盘的 Grok Bot 页面上看不到它,说明您使用的不是企业版,或者需要您的账户团队为该组织启用 Grok Bot。

如果设置脚本在某些电脑上失败会怎样?

电脑仍会启动。失败的条目会在后续刷新时重试。请保持脚本可重复运行,并使用 Check Script,让状态正常的电脑跳过安装。

相关页面

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜