unredacted/freesocks-control-plane

GitHub: unredacted/freesocks-control-plane

基于 Cloudflare Workers 的 Shadowsocks/Outline 代理密钥自动化分发与管理平台,专为审查环境下的无障碍上网而设计。

Stars: 41 | Forks: 2

# FreeSocks Control Plane (FCP) 这是 [FreeSocks](https://freesocks.org) 背后的(控制平面)代码。FreeSocks 是一项为处于高度互联网审查国家的人们提供免费、开放且无审查的 Outline (Shadowsocks) 代理的服务。 FreeSocks Control Plane (FCP) 使用了 [Cloudflare Workers](https://workers.cloudflare.com/),并用 JavaScript 编写。此仓库允许您搭建自己的类 FreeSocks Outline 访问密钥分发平台,并让您了解 FreeSocks 的运作方式。 FreeSocks Control Plane 由几个核心组件组成: - GET 脚本 - 向用户分发 Outline 访问密钥。 - DELETE 脚本 - 删除在指定天数后仍未使用的访问密钥。 - UPDATE 脚本 - 更新 KV JSON 数据,以跟踪访问密钥的状态(创建、删除、上次使用时间以及密钥当前是否正在使用)。 - LIST 脚本 - 从 KV 中为管理员列出访问密钥数据。 ## 前置条件 - 一个拥有 Workers 平台访问权限的 Cloudflare 账户。 - 创建数个 Workers KV 命名空间,并在 `wrangler.toml` 环境变量中进行定义。 - Cloudflare 上的一个用于 FreeSocks Control Plane 的区域。 - Cloudflare [wrangler](https://developers.cloudflare.com/workers/wrangler/install-and-update/)。 - 确保您已使用 [wrangler](https://developers.cloudflare.com/workers/wrangler/commands/#login) 登录到 Cloudflare。 ## 定义环境变量 查看 `wrangler-example.toml` 以获取示例变量。 将 `wrangler-example.toml` 复制到 `wrangler.toml`,然后根据您的需求对其进行编辑。 使用 `wrangler secret` 设置敏感变量。 设置所需的密钥: ``` # 关于 get.js wrangler secret put TURNSTILE_SITE_KEY wrangler secret put TURNSTILE_SECRET_KEY # 关于 delete.js wrangler secret put SECRET_AUTH_TOKEN wrangler secret put VAR_CF_ACCESS_CLIENT_ID wrangler secret put VAR_CF_ACCESS_CLIENT_SECRET ``` ## 如何部署 要部署 FCP,您可以运行: ``` wrangler deploy ``` ## 更新您的 FCP 代码 1. 检查自上次部署 Worker 以来的重大更改,并根据需要进行修复。 2. 从您系统上的仓库目录中拉取最新代码: ``` git pull ``` 部署 Worker: ``` wrangler deploy ```
标签:API服务, Cloudflare KV, CMS安全, JavaScript, Outline VPN, Serverless, Shadowsocks, Wrangler, 代理分发平台, 代理控制平面, 免费VPN, 反审查, 开源代理, 抗封锁工具, 数据可视化, 无边界网络, 程序员工具, 系统运维, 网络审查绕过, 网络自由, 自定义脚本, 访问密钥管理, 高对比度