1. 首页
  2. 可自定义云端托管配置 – Cloud Profile

可自定义云端托管配置 – Cloud Profile

在使用基于规则(Rule-Based)的代理客户端软件时,不同的用户会存在不同的需求,传统的托管配置(Managed Profile)为了保障可靠性和减少新手用户的学习成本的考虑下,不可能添加过于复杂的规则,但专业用户又需要更加强大和完善的规则来提高使用体验。为了解决这种问题,Cloud Profile 系统就应运而生。


演示

此演示意在尽可能短的时间内展示 Cloud Profile 的交互逻辑的操作方式,演示中创建的配置文件实际上不能在 Surge 客户端中使用。

用户在使用时也应注意,Cloud Profile 没有检查用户编写的配置文件语法和声明是否正确的功能,即使 Cloud Profile 保存了配置,也可能无法在客户端上使用,用户有责任自行确保配置文件内容的有效性。

Cloud Profile 功能

Cloud Profile 提供以下功能:

  1. 随 rixCloud 接入点数据更新的可自定义云端配置
  2. 自定义 MitM 证书管理
  3. 规则集(Ruleset)和 JavaScript 脚本托管功能(即将提供)

随 rixCoud 接入点数据更新的可自定义云端配置

我们深刻明白,rixCloud 提供的通用型托管型配置并不满足所有用户的需求,部分 Power User 会尝试编写更加复杂的规则来使得自己的上网体验更加流畅和清爽(广告屏蔽)。

但我们不可能直接在托管配置中提供这些功能,一方面是维护庞大的规则对我们的支持团队而言是一个沉重的负担,另一方面,某些规则不具有通用性,可能大部分客户都不需要,另一部分规则则是非常的个人化,与特定用户网络内的设备和网络情况息息相关。

自行编写本地配置完全可行,但这会失去同步 rixCloud 接入点更新的能力,虽然我们一般不会移除接入点,但无法使用到最新添加的接入点仍然是令人不快的;而 rixCloud 出于安全性和实际体验的考虑并无计划提供 Proxy List 功能(原因下详)

通过 rixCloud API 功能来获取接入点信息然后自行便携程序或脚本来输出规则肯定没问题,但是这需要一定的计算机专业知识,并需要长期开机的计算机或云服务器(包括 SaaS 和 Serverless)才能实现。

为了让尽可能多的用户能够享受到 Power User 的能力,我们提供了 Cloud Profile。尽管如此,你还是需要对你正在使用的客户端有足够的了解,包括其规则文件的语法,才能正常使用 Cloud Profile 功能。

自定义 MitM 证书管理

为了实现 Surge 的 Rewrite 和 Script 功能,需要引入 MitM。这是因为目前大部分的网站和 API 都使用了 HTTPS 进行保护。rixCloud 为所有用户提供了简单易上手的通用 CA 证书,但由于必须在规则文件中公开声明证书的私钥和公钥,这就带来了一定的风险。

为了解决此风险,我们在 Cloud Profile 中提供了自定义 MitM 证书管理功能。用户可以让 rixCloud 生成一个专属于你的 MitM CA 证书,或者自行生成证书并上传到我们的系统中。无论采用何种方法,你的证书只有你可以使用,其他人将无从得知你使用的 MitM CA 证书。

规则集(Ruleset)和 JavaScript 脚本托管功能

在编写规则时,尤其是对于 Surge 用户,将不可避免地会使用到 Ruleset 和 JavaScript 脚本。一般用户会储存在 GitHub Gist。但 GitHub 的储存使用 AWS 美东,对于部分区域和部分接入点而言,访问速度将不那么理想。

我们希望用户可以在全球都能高速访问到他们储存的规则集文件和脚本文件,并且不希望用户需要在多个网站和服务之间切换。因此我们将在 Cloud Profile 中提供一站式的服务,允许用户将 Ruleset 和 JavaScript 脚本储存在我们服务中,并且依托 Cloudflare Enterprise 全球 194 个 PoPs 和 rixCloud 网络的储存服务提供全球高可用和高速访问,降低用户在更新外部资源时所需要耗费的时间。

此功能预计将在 Cloud Profile 公共测试版可用。


Cloud Profile 问答

这是先前(Cloud Profile Alpha 2 测试时)编写的内容,主要解答一些关于 Cloud Profile 功能的常见问题。

什么是 Cloud Profile?

Cloud Profile 是 rixCloud 提供的,基于 rixCloud API 的用户配置管理系统。此系统允许用户创建自定义的配置文件,但又不会损失托管配置(Managed Profile)可以自动更新接入点信息的优势。

当用户创建了一个自定义配置后,rixCloud API 就会将原有的 Managed Profile 替换为用户创建的 Cloud Profile,只需要在客户端执行订阅更新操作,无需任何其他更改,就可以立即获取新的自定义配置。

创建的配置出错需要尽快恢复正常使用?我们深刻明白创建规则时可能因为疏忽而出错,但这时需要立即恢复国际网络访问?只需要在 Cloud Profile 控制面板中删除对应的自定义规则,然后在客户端执行订阅更新操作,rixCloud API 就会下发 Managed Profile 到客户端。

此外,Cloud Profile 还支持用户设置独立的 MitM CA 证书,这包含由 rixCloud CA 生成或自行上传的选项。此功能会极大提高使用 MitM 时的安全性(尽管 rixCloud 从未监视用户传输的数据,但由于通用的 CA 证书在网络上公开私钥,因此有极小的可能被其他人利用)。

为什么不使用 GitHub ?

由于几乎所有客户端都不支持额外的鉴权功能,使用 GitHub Repo 来保存配置就意味着必须使用公开 Repo 来存放配置文件,这使得你的所有信息都被直接公开,并可能导致你的订阅被封禁(违反 rixCloud 条款和条件)。

使用 GitHub Gist 的情况稍好,但这需要手动更新接入点信息。出于安全考虑,rixCloud 不支持也没有计划支持 Surge 的 Proxy List 功能。且使用此功能的客户端仅包含 Surge 3 及更高版本,Clash 和 Surfboard 目前都不支持这样的功能。

此外,在几乎所有基于规则的代理客户端中,Proxy(代理)<–> Policy Group(策略组)<–> Rules(规则)都是强相关,系统可以提供的 Proxy List 直接决定了可以如何编写策略组,而策略组直接决定了规则的可用性,如果仅仅提供一个全节点的 Proxy List,其实并不能对编写规则有任何的提升。

我现在可以使用 Cloud Profile 吗?

很遗憾,对于大多数用户,这个答案是否定的。

目前,rixCloud 通过早期访问者计划向部分受邀请用户提供了 Cloud Profile 的测试权限。这意味着,目前 Cloud Profile 还处于封闭测试/内部测试阶段,因此 Cloud Profile 的控制面板受到 Cloudflare Access 的保护,仅有早期访问者计划的用户可以收取到验证码进行访问。

Cloud Profile 支持哪些客户端?

目前,我们支持 Surge 2 / Surge 3 / Surge 4 / Surfboard / Clash。

为什么我在 Cloud Profile 创建的规则在客户端中报错?

Cloud Profile 系统只进行基本的配置文件语法检查,你需要自行确保你创建的规则正确无误,因为我们无法模拟客户端对规则文件进行检查。

仅建议对相关客户端有足够了解的用户使用此功能,如果你不知道你正在做什么,请使用 rixCloud 提供的 Managed Profile。

使用 Cloud Profile 有哪些弊端?

一旦你为某个订阅创建了自定义的配置文件,那么你将被视同自动放弃了相关订阅的支持服务和服务水平保障,除非你删除自定义配置文件来恢复到 Managed Profile。

基于规则的客户端中,任何一条规则都可能影响到整体的使用,由于我们提供的服务并不是配置文件编写和检查服务,因此你需要自行对创建的配置文件负责。特别是提供了正则表达式匹配的客户端,一条错误的正则表达式可能耗尽整个系统的资源

如果你遇到了连接问题或是其他问题,我们无法判断这些问题是由于接入点导致的还是规则导致的,你所支付的费用中也不包含为你解读规则的服务。综上所述,请务必对自己创建的配置文件负责。