mirror of
https://github.com/masterking32/MasterHttpRelayVPN.git
synced 2026-05-17 21:24:37 +03:00
Major refactor on codes (no feature is new, just code refactor)
Co-authored-by: Copilot <copilot@github.com>
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
# Exit Node Deployment Guide (Val Town / Cloudflare / Deno)
|
||||
|
||||
This guide explains how to deploy an exit node for MasterHttpRelayVPN on free platforms.
|
||||
|
||||
Traffic path:
|
||||
|
||||
Browser -> Local Proxy -> Apps Script -> Exit Node -> Target Website
|
||||
|
||||
Use this when destinations block Google datacenter egress.
|
||||
|
||||
## 1) Choose One Provider
|
||||
|
||||
- Val Town
|
||||
- Cloudflare Workers
|
||||
- Deno Deploy
|
||||
|
||||
You only need one provider.
|
||||
|
||||
## 2) Set PSK In Code
|
||||
|
||||
Each template includes:
|
||||
|
||||
const PSK = "CHANGE_ME_TO_A_STRONG_SECRET";
|
||||
|
||||
Replace that value with a long random secret.
|
||||
|
||||
Important:
|
||||
- Use the same PSK in your local config under exit_node.psk.
|
||||
- Never share your deployed URL together with a valid PSK.
|
||||
|
||||
## 3) Deploy On Val Town
|
||||
|
||||
Source file: apps_script/valtown.ts
|
||||
|
||||
Steps:
|
||||
1. Sign in at https://www.val.town
|
||||
2. Create a new Val (TypeScript HTTP endpoint).
|
||||
3. Paste content from apps_script/valtown.ts.
|
||||
4. Set the PSK constant in the code.
|
||||
5. Save and Add HTTP trigger.
|
||||
6. Copy your public URL, usually like https://YOUR-NAME.web.val.run
|
||||
|
||||
## 4) Deploy On Cloudflare Workers
|
||||
|
||||
Source file: apps_script/cloudflare_worker.js
|
||||
|
||||
Steps:
|
||||
1. Sign in at https://dash.cloudflare.com
|
||||
2. Go to Compute -> Workers & Pages.
|
||||
3. Create Application -> Start with Hello World -> Deploy -> Edit Code.
|
||||
4. Replace code with apps_script/cloudflare_worker.js content.
|
||||
5. Set PSK constant in code.
|
||||
6. Deploy.
|
||||
7. Copy URL, usually like https://YOUR-WORKER.YOUR-SUBDOMAIN.workers.dev
|
||||
|
||||
## 5) Deploy On Deno Deploy (It's not tested Yet)
|
||||
|
||||
Source file: apps_script/deno_deploy.ts
|
||||
|
||||
Steps:
|
||||
1. Sign in at https://dash.deno.com
|
||||
2. Select new playground.
|
||||
3. Paste apps_script/deno_deploy.ts.
|
||||
4. Set PSK constant in code.
|
||||
5. Deploy.
|
||||
6. Copy URL, usually like https://YOUR-PROJECT.deno.net
|
||||
|
||||
## 6) Configure MasterHttpRelayVPN
|
||||
|
||||
Update `config.json`:
|
||||
|
||||
```json
|
||||
"exit_node": {
|
||||
"enabled": true,
|
||||
"provider": "valtown",
|
||||
"url": "https://YOUR-NAME.web.val.run",
|
||||
"psk": "CHANGE_ME_TO_A_STRONG_SECRET",
|
||||
"mode": "full",
|
||||
"hosts": [
|
||||
"chatgpt.com",
|
||||
"openai.com",
|
||||
"claude.ai",
|
||||
"anthropic.com"
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
Provider values:
|
||||
- `valtown`
|
||||
- `cloudflare`
|
||||
- `deno`
|
||||
|
||||
If `mode` is `selective`, only hosts listed in `hosts` use the exit node.
|
||||
If `mode` is `full`, all relayed traffic uses the exit node.
|
||||
@@ -0,0 +1,99 @@
|
||||
# راهنمای نصب نود خروجی (Val Town / Cloudflare / Deno)
|
||||
|
||||
این راهنما توضیح میدهد چطور یک نود خروجی رایگان برای MasterHttpRelayVPN راهاندازی کنید.
|
||||
|
||||
مسیر ترافیک:
|
||||
|
||||
```
|
||||
مرورگر -> پراکسی محلی -> Apps Script -> نود خروجی -> سایت مقصد
|
||||
```
|
||||
|
||||
از این قابلیت زمانی استفاده کنید که سایتهای مقصد آیپیهای دیتاسنتر Google را مسدود میکنند.
|
||||
|
||||
## ۱) یک Provider انتخاب کنید
|
||||
|
||||
- Val Town
|
||||
- Cloudflare Workers
|
||||
- Deno Deploy
|
||||
|
||||
فقط به یکی از اینها نیاز دارید.
|
||||
|
||||
## ۲) PSK را در کد تنظیم کنید
|
||||
|
||||
هر template شامل این خط است:
|
||||
|
||||
```js
|
||||
const PSK = "CHANGE_ME_TO_A_STRONG_SECRET";
|
||||
```
|
||||
|
||||
آن مقدار را با یک secret قوی و تصادفی جایگزین کنید.
|
||||
|
||||
نکته مهم:
|
||||
- همین PSK را در `config.json` زیر `exit_node.psk` وارد کنید.
|
||||
- URL عمومی را هرگز همراه با PSK معتبر به اشتراک نگذارید.
|
||||
|
||||
## ۳) نصب روی Val Town
|
||||
|
||||
فایل: `apps_script/valtown.ts`
|
||||
|
||||
مراحل:
|
||||
1. در [https://www.val.town](https://www.val.town) ثبتنام کنید.
|
||||
2. یک Val جدید بسازید (TypeScript HTTP endpoint).
|
||||
3. محتوای `apps_script/valtown.ts` را paste کنید.
|
||||
4. مقدار ثابت PSK را در کد تنظیم کنید.
|
||||
5. ذخیره و deploy کنید. (Add HTTP trigger را فراموش نکنید)
|
||||
6. URL عمومی خود را کپی کنید؛ معمولاً به شکل `https://YOUR-NAME.web.val.run`
|
||||
|
||||
## ۴) نصب روی Cloudflare Workers
|
||||
|
||||
فایل: `apps_script/cloudflare_worker.js`
|
||||
|
||||
مراحل:
|
||||
1. در [https://dash.cloudflare.com](https://dash.cloudflare.com) وارد شوید.
|
||||
2. به Compute -> Workers & Pages بروید.
|
||||
3. گزینه Create Application -> Start with Hello World -> Deploy -> Edit Code را انتخاب کنید.
|
||||
4. کد را با محتوای `apps_script/cloudflare_worker.js` جایگزین کنید.
|
||||
5. مقدار PSK را در کد تنظیم کنید.
|
||||
6. Deploy کنید.
|
||||
7. URL را کپی کنید؛ معمولاً به شکل `https://YOUR-WORKER.YOUR-SUBDOMAIN.workers.dev`
|
||||
|
||||
## ۵) نصب روی Deno Deploy (هنوز تست نشده)
|
||||
|
||||
فایل: `apps_script/deno_deploy.ts`
|
||||
|
||||
مراحل:
|
||||
1. در [https://dash.deno.com](https://dash.deno.com) وارد شوید.
|
||||
2. یک app جدید بسازید.
|
||||
3. گزینه Basic HTML -> Clone Repository را انتخاب کنید.
|
||||
4. محتوای `apps_script/deno_deploy.ts` را آپلود یا paste کنید.
|
||||
5. مقدار PSK را در کد تنظیم کنید.
|
||||
6. Deploy کنید.
|
||||
7. URL را کپی کنید؛ معمولاً به شکل `https://YOUR-PROJECT.deno.dev`
|
||||
|
||||
## ۶) تنظیم MasterHttpRelayVPN
|
||||
|
||||
فایل `config.json` را ویرایش کنید:
|
||||
|
||||
```json
|
||||
"exit_node": {
|
||||
"enabled": true,
|
||||
"provider": "valtown",
|
||||
"url": "https://YOUR-NAME.web.val.run",
|
||||
"psk": "CHANGE_ME_TO_A_STRONG_SECRET",
|
||||
"mode": "full",
|
||||
"hosts": [
|
||||
"chatgpt.com",
|
||||
"openai.com",
|
||||
"claude.ai",
|
||||
"anthropic.com"
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
مقادیر provider:
|
||||
- `valtown`
|
||||
- `cloudflare`
|
||||
- `deno`
|
||||
|
||||
اگر `mode` برابر `selective` باشد، فقط دامنههای داخل `hosts` از نود خروجی عبور میکنند.
|
||||
اگر `mode` برابر `full` باشد، تمام ترافیک relayشده از نود خروجی عبور میکند.
|
||||
Reference in New Issue
Block a user