Files
2026-05-06 22:58:28 +03:30

161 lines
6.2 KiB
Markdown

# [MHR-CFW](https://github.com/denuitt1/mhr-cfw) Rewritten in Go with YouTube Support Fix and Speed Improvements
[![GitHub](https://img.shields.io/badge/GitHub-ThisIsDara-blue?logo=github)](https://github.com/ThisIsDara/mhr-cfw-go)
**[English](README.md)**
## 🚀 بهبودها نسبت به نسخه Python
## **✅ 1. رفع مشکل پشتیبانی YouTube**
* مدیریت درست CORS — اضافه شدن هندل کردن preflight OPTIONS و تزریق هدرهای CORS برای درخواست‌های cross-origin
* رفع مشکل Content-Encoding — دیکود بهتر برای پاسخ‌های brotli/gzip
* پشتیبانی از Range request — استریم ویدیو نیاز به مدیریت درست هدر Range دارد
## **✅ 2. بهبود سرعت**
* استفاده از HTTP/2 به جای HTTP/1.1 (multiplexing سریع‌تر)
* Connection pooling — استفاده مجدد از اتصال‌های TLS به جای ساختن اتصال جدید
* Request coalescing — چند درخواست GET برای یک URL مشترک، یک تماس relay را به اشتراک می‌گذارند
* Response caching — کش LRU با TTL مناسب برای assetهای استاتیک
## **✅ 3. امنیت**
* ارتقا از 2048 بیت به کلید های RSA با طول 4096 بیت برای گواهی‌های MITM
## **✅ 4. کیفیت کد**
* بازنویسی با Go — تایپ استاتیک، مدیریت حافظه بهتر
* بدون وابستگی خارجی — استفاده از کتابخانه استاندارد در صورت امکان
---
## نحوه کار
این برنامه روی سیستم شما اجرا می‌شود و درخواست‌های شما را از طریق زیرساخت Google ارسال می‌کند. فیلترهای شبکه این ترافیک را به عنوان ترافیک عادی Google می‌بینند و اجازه عبور می‌دهند. در همین حین، Apps Script رایگان Google سایت واقعی مورد نظر شما را دریافت می‌کند.
---
## شروع سریع
### 1 - کلون و بیلد
```bash
git clone https://github.com/ThisIsDara/mhr-cfw-go.git
cd mhr-cfw-go
```
یا آخرین نسخه را از [GitHub Releases](https://github.com/ThisIsDara/mhr-cfw-go/releases) دانلود کنید
**💡 نکته:** اگر در نصب وابستگی‌های Go مشکل دارید، از میرور ایرانی رانفلر استفاده کنید:
```bash
GOPROXY=https://mirror-go.runflare.com go mod download
```
### 2 - اجرای build.bat
روی `build.bat` دوبار کلیک کنید یا اجرا کنید:
```powershell
.\build.bat
```
این کار فایل `mhr-cfw-go.exe` را می‌سازد
### 3 - تنظیمات
فایل `config.json` را با تنظیمات خود ویرایش کنید یا ترجیحاً Setup Wizard را در TUI اجرا کنید:
```json
{
"auth_key": "your-secret-password-here",
"script_id": "YOUR_DEPLOYMENT_ID"
}
```
### 4 - اجرا
روی `mhr-cfw-go.exe` دوبار کلیک کنید یا اجرا کنید:
```powershell
.\mhr-cfw-go.exe
```
برنامه یک منو باز می‌کند. گزینه `1) Start proxy` را انتخاب کنید تا پراکسی شروع شود.
---
### 5 - نصب CA Certificate (برای HTTPS)
برنامه را اجرا کنید، سپس از منو گزینه `3) Install CA certificate` را انتخاب کنید.
این کار Certificate Authority محلی را نصب می‌کند تا پراکسی بتواند ترافیک HTTPs را رهگیری کند.
---
# 🛠️ نحوه راه‌اندازی
1. فایل [mhr-cfw README](https://github.com/denuitt1/mhr-cfw/blob/main/README.md#how-to-use) را باز کنید و مراحل ارائه‌شده توسط [denuitt1](https://github.com/denuitt1) را دنبال کنید تا Deployment ID رو بگیرید.
---
## ساخت از سورس
پیش‌نیازها:
* [Go 1.22+](https://go.dev/dl/)
```bash
go build -ldflags "-s -w" -o mhr-cfw-go.exe ./cmd/mhr-cfw
```
---
## در حال توسعه...
### `📊 آمار`
* شمارنده درخواست — مجموع درخواست‌های پردازش‌شده
* میزان مصرف پهنای باند — بایت‌های ارسال/دریافت‌شده
### `🖥️ مانیتورینگ`
* وضعیت اتصال
### `✏️ تجربه کاربری`
* تعویض پروفایل — پروفایل‌های مختلف تنظیمات
* خروجی/ورودی گرفتن از config — بکاپ تنظیمات
---
## گزینه‌های خط فرمان
| Option | Description |
| ------------------ | ---------------------------------------- |
| `--no-menu` | اجرا بدون منوی TUI |
| `--port` | تغییر پورت پراکسی |
| `--host` | تغییر هاست listen |
| `--socks5-port` | تغییر پورت SOCKS5 |
| `--disable-socks5` | غیرفعال کردن پراکسی SOCKS5 |
| `--log-level` | تنظیم سطح لاگ (DEBUG, INFO, WARN, ERROR) |
| `--install-cert` | نصب CA certificate |
| `--uninstall-cert` | حذف CA certificate |
| `--scan` | اسکن IPهای Google |
| `--setup` | اجرای setup wizard |
| `--version` | نمایش نسخه |
#### سلب مسئولیت
* **رعایت قوانین سرویس‌های Google:** اگر از Google Apps Script یا سایر سرویس‌های Google با این پروژه استفاده می‌کنید، مسئول رعایت Terms of Service، قوانین استفاده مجاز، quotaها و سیاست‌های پلتفرم هستید. استفاده نادرست ممکن است باعث تعلیق یا حذف اکانت Google یا deploymentهای شما شود.
---
## پروژه‌های اصلی
### بر پایه [mhr-cfw](https://github.com/denuitt1/mhr-cfw)، پیاده‌سازی Python که این پروژه از روی آن بازنویسی شده است.
## License
MIT