This is the (control plane) code behind FreeSocks a service that provides free, open & uncensored Outline (Shadowsocks) proxies to people in countries experiencing a high level of Internet censorship.
The FreeSocks Control Plane (FCP) utilizes Cloudflare Workers and is written in JavaScript. This repository allows you to stand up your own FreeSocks-like Outline access key distribution platform, and provides insight into how FreeSocks works.
The FreeSocks Control Plane consists of 2 components:
wrangler.toml
environment variables.Check wrangler-example.toml
for example variables.
Make a copy of wrangler-example.toml
to wrangler.toml
then edit them depending on your requirements.
Set sensitive variables with wrangler secret
.
Set required secrets:
# For get.js
wrangler secret put TURNSTILE_SITE_KEY
wrangler secret put TURNSTILE_SECRET_KEY
# For delete.js
wrangler secret put SECRET_AUTH_TOKEN
wrangler secret put VAR_CF_ACCESS_CLIENT_ID
wrangler secret put VAR_CF_ACCESS_CLIENT_SECRET
To deploy the FCP, you can run:
wrangler deploy
git pull
Deploy the Worker:
wrangler deploy