
MasterHttpRelayVPN-RUST v1.9.37
Rust port von @masterking32's MasterHttpRelayVPN — alle Anerkennung gebührt @masterking32 für die ursprüngliche Idee und die Python-Implementierung. Kostenlose DPI-Umgehung über ein Google Apps Script Relay mit TLS-SNI-Verschleierung. CLI + plattformübergreifende Desktop-Benutzeroberfläche, HTTP + SOCKS5 Proxy, keine Laufzeitabhängigkeiten.
mhrv-rs — Umgehe Zensur kostenlos mit deinem eigenen Google-Konto
Ein kleines Programm, das auf deinem Computer läuft und dir ermöglicht, blockierte Websites kostenlos zu besuchen, indem es ein Google Apps Script verwendet, das du in deinem eigenen kostenlosen Google-Konto bereitstellst. Dein ISP sieht nur verschlüsselten Datenverkehr zu www.google.com — er kann nicht erkennen, was du wirklich besuchst.
🇬🇧 Englischer Schnellstart · Vollständige Anleitung (fortgeschrittene Themen) 🇮🇷 راهاندازی سریع فارسی · راهنمای کامل (مباحث پیشرفته)
۱. راهنمای تصویری راه اندازی به زبان فارسی (YouTube)
۲. راهنمای جامع متنی راه اندازی به زبان فارسی با تشکر از Kian Irani
Was du bekommst
- 🌐 Umgeht DPI / SNI-Blockierung durch Nutzung von Googles Edge als Relay
- 💯 Völlig kostenlos — läuft in der kostenlosen Stufe deines eigenen Google-Kontos
- ⚡ Eine kleine Datei (~3 MB), kein Python, kein Node.js, keine Abhängigkeiten
- 🖥️ Funktioniert auf Mac, Windows, Linux, Android, OpenWRT-Routern
- 🦊 Jeder Browser oder jede App, die HTTP-Proxy oder SOCKS5 unterstützt
Wie es funktioniert (das einfache Bild)
Du → Browser → mhrv-rs ──┐
│ ISP sieht nur: www.google.com
▼
Googles Netzwerk
│
▼
dein kostenloses Apps Script ruft die echte Seite ab
│
▼
Twitter / ChatGPT / blockierte Seite deiner Wahl
ISPs können nicht in verschlüsseltes HTTPS hineinlesen. Sie sehen nur die Adresse — www.google.com. Die eigentliche Seitenabfrage findet in Googles Netzwerk statt, versteckt im verschlüsselten Tunnel.
Schnellstart
Etwa 5 Minuten. Du benötigst:
- Ein kostenloses Google-Konto (jede Gmail-Adresse funktioniert)
- Einen Computer (Mac, Windows oder Linux)
- Firefox oder Chrome
Schritt 1 — Das Google Apps Script erstellen (einmalig)
- Gehe zu script.google.com und melde dich mit deinem Google-Konto an
- Klicke oben links auf Neues Projekt
- Lösche den Standardcode im Editor
- Öffne die Datei
assets/apps_script/Code.gsin diesem Repository, kopiere den gesamten Inhalt und füge ihn in den Apps Script-Editor ein (ersetze den vorhandenen Code) - Finde diese Zeile in der Nähe des Anfangs:
Ersetze
const AUTH_KEY = "CHANGE_ME_TO_A_STRONG_SECRET";CHANGE_ME_TO_A_STRONG_SECRETdurch einen eigenen langen, zufälligen String. Behalte diesen String — du wirst ihn in Schritt 3 in die App einfügen. Behandle ihn wie ein Passwort. - Klicke auf 💾 Speichern (oder
Ctrl/Cmd+S) - Klicke auf Bereitstellen (oben rechts) → Neue Bereitstellung
- Klicke auf das Zahnradsymbol ⚙ neben „Typ auswählen" → wähle Web-App
- Stelle ein:
- Ausführen als: Ich (dein Google-Konto)
- Zugriff für: Jeder
- Klicke auf Bereitstellen. Google fragt möglicherweise nach Berechtigungen — klicke auf Zugriff autorisieren und bestätige
- Google zeigt eine Bereitstellungs-ID (einen langen zufälligen String). Kopiere sie — du wirst sie in Schritt 3 benötigen.
Tipp: Wenn du später
Code.gsaktualisierst, erstelle keine neue Bereitstellung. Bearbeite den Code, gehe dann zu Bereitstellen → Bereitstellungen verwalten → ✏️ → Version: Neue Version → Bereitstellen. Die Bereitstellungs-ID bleibt gleich.
Schritt 2 — mhrv-rs herunterladen
Gehe zur letzten Release-Seite und lade die Datei für deinen Computer herunter:
| Dein System | Lade dies herunter |
|---|---|
| Mac mit Apple Silicon (M1 / M2 / M3 / M4-Chip) | mhrv-rs-macos-arm64-app.zip |
| Mac mit Intel-Chip | mhrv-rs-macos-amd64-app.zip |
| Windows | mhrv-rs-windows-amd64.zip |
| Linux (Ubuntu / Mint / Fedora / Debian / Arch) | mhrv-rs-linux-amd64.tar.gz |
| Android-Smartphone oder -Tablet | mhrv-rs-android-universal-v*.apk |
| OpenWRT-Router oder Alpine | mhrv-rs-linux-musl-amd64.tar.gz |
Mac: Nicht sicher, ob Apple Silicon oder Intel? Klicke auf → Über diesen Mac. Wenn bei „Chip" Apple steht, nimm arm64. Wenn Intel, nimm amd64.
Linux: Du erhältst einen
GLIBC-Fehler? Verwende stattdessen die Dateilinux-musl-amd64— sie funktioniert auf jedem Linux ohne Abhängigkeiten.
Entpacke die Datei.
Schritt 3 — Erster Start
Doppelklicke auf den Starter:
| Mac | run.command |
| Windows | run.bat |
| Linux | ./run.sh (im Terminal) |
Beim ersten Mal fragt es nach deinem Computer-Passwort. Dies dient dazu, ein kleines Zertifikat zu installieren, damit dein Browser mhrv-rs vertraut. Das Zertifikat wird auf deinem Computer generiert und verlässt ihn nie — keine Cloud, kein Google, nichts Fernes kann es nutzen.
Das mhrv-rs-Fenster öffnet sich. Fülle aus:
- Apps Script-ID(s) → füge die Bereitstellungs-ID aus Schritt 1 ein
- Auth-Key → füge den zufälligen String ein, den du in
Code.gsgesetzt hast - Lasse alles andere auf den Standardwerten
Klicke auf Konfiguration speichern, dann auf Starten. Der Statuskreis wird grün, wenn es funktioniert.
Teste es: Klicke auf die Schaltfläche Test. Es sendet eine Anfrage durch das Relay und teilt dir mit, ob es funktioniert hat.
Schritt 4 — Deinem Browser mitteilen, mhrv-rs zu verwenden
Firefox (empfohlen — am einfachsten)
- Firefox → ☰-Menü → Einstellungen
- Suche im Suchfeld nach „Proxy"
- Klicke unter Netzwerkeinstellungen auf Einstellungen…
- Wähle Manuelle Proxy-Konfiguration
- HTTP-Proxy:
127.0.0.1Port:8085 - ☑ Aktiviere „Diesen Proxy auch für HTTPS verwenden"
- Klicke auf OK
Chrome / Edge
Installiere die Erweiterung Proxy SwitchyOmega und setze den Proxy auf 127.0.0.1:8085.
macOS (systemweit)
Systemeinstellungen → Netzwerk → Wi-Fi → Details → Proxies → aktiviere sowohl Web-Proxy (HTTP) als auch Sicherer Web-Proxy (HTTPS), beide mit 127.0.0.1:8085.
Schritt 5 — Ausprobieren
Öffne eine blockierte Website in deinem Browser. Sie sollte geladen werden.
Wenn etwas nicht funktioniert:
- Klicke im mhrv-rs-Fenster auf Test — es zeigt an, bei welchem Schritt es hakt
- Sieh dir das Bedienfeld Letzte Logs am unteren Rand des Fensters an
- Siehe die Häufigen Fragen unten
Häufige Fragen
Ist das wirklich kostenlos? Ja. Google gewährt jedem Konto 20.000 ausgehende URL-Abrufe pro Tag in der kostenlosen Stufe. Das ist reichlich für das normale Surfen einer Person. Für eine Familie mit 3–4 Personen, die das gleiche Setup teilt, erstelle 2–3 Bereitstellungen in verschiedenen Google-Konten und füge alle IDs hinzu.
Ist es sicher? Das Zertifikat bleibt auf deinem Computer — niemand anders hat den privaten Schlüssel. Dein auth_key ist dein Geheimnis. Google sieht die Websites, die du über das Relay besuchst (weil Apps Script sie in deinem Auftrag abruft) — genauso wie bei jedem gehosteten Proxy. Wenn dir das nicht recht ist, verwende den Full-Tunnel-Modus mit einem eigenen VPS — siehe die vollständige Anleitung.
YouTube-Videos werden nicht abgespielt. Die Videosegmente von YouTube kommen von googlevideo.com, das Apps Script nicht erreichen kann (Google blockiert den Zugriff von Apps Script auf das eigene Video-CDN). Die Seite selbst wird normal geladen; nur die Videowiedergabe ist betroffen. Lösung: Full Tunnel + VPS, oder füge .googlevideo.com zu passthrough_hosts in deiner Konfiguration hinzu (der Browser greift direkt darauf zu, aber bei iranischen ISPs ist es immer noch gedrosselt).
ChatGPT / Claude / Grok zeigt ein Cloudflare-CAPTCHA. Cloudflare markiert Google-Rechenzentrums-IPs als Bots. Lösung: Richte einen Exit-Node ein — einen kleinen TypeScript-Handler, den du auf einem serverlosen Host (Deno Deploy, fly.io, deinem eigenen VPS) bereitstellst und der Apps Script → deinen Exit-Node → claude.ai verbindet. Siehe assets/exit_node/README.md.
Telegram ist instabil. Telegram verwendet MTProto, das Apps Script nicht spricht. Kombiniere es mit xray auf deinem Rechner — siehe Telegram via xray in der vollständigen Anleitung.
Der ISP blockiert script.google.com selbst. mhrv-rs hat einen direct-Modus, der nur den SNI-Umschreibungstunnel verwendet (ohne Apps Script). Verwende ihn einmal, um auf script.google.com zuzugreifen und dein Skript bereitzustellen, wechsle dann in den apps_script-Modus. Siehe direct-Modus.
Meine Google-Suche erscheint ohne JavaScript. Der User-Agent von Apps Script ist fest auf Google-Apps-Script eingestellt (Google erlaubt Skripten nicht, ihn zu ändern), daher liefern einige Websites einen JavaScript-freien Fallback. Workaround: Füge die betroffene Domain zu deiner hosts-Map hinzu, damit sie mit deinem echten Browser-User-Agent durch den SNI-Umschreibungstunnel geht. google.com, youtube.com, fonts.googleapis.com sind standardmäßig bereits in dieser Liste.
Weitere Fragen: Vollständige FAQ in der ausführlichen Anleitung.
Hilfe benötigt?
- Suche in offenen und geschlossenen Issues — dein Problem könnte bereits beantwortet sein
- Erstelle ein neues Issue mit: deiner Konfiguration (
auth_keymaskieren!), genau dem, was du versucht hast, und genau dem, was du im Log gesehen hast
Danksagungen
Originalprojekt: @masterking32/MasterHttpRelayVPN. Die Idee, das Apps Script-Protokoll, die Proxy-Architektur — alles von ihm. Dieser Rust-Port existiert, um die clientseitige Verteilung zu vereinfachen (einzelne Binärdatei, keine Python-Installation).
Der Großteil des Rust-Codes in diesem Port wurde mit Anthropics Claude geschrieben und bei jedem Commit von einem Menschen überprüft.
Unterstütze dieses Projekt
❤️ Spende auf sh1n.org — deckt Hosting- und CI-Runner-Kosten. Das Sternen des Repos hilft auch zu signalisieren, dass das Projekt es wert ist, am Leben erhalten zu werden.
mhrv-rs — دور زدن سانسور بهرایگان، با حساب گوگل خودت
یک برنامهٔ کوچک که روی کامپیوترت اجرا میشود و کمک میکند سایتهای مسدودشده را با یک اسکریپت رایگان که توی حساب گوگل خودت میسازی، باز کنی. ISP فقط میبیند که داری به www.google.com وصل میشوی — نمیفهمد در واقع چه سایتی را باز کردهای.
🇬🇧 English Quick Start · Full Guide (advanced) 🇮🇷 راهاندازی سریع · راهنمای کامل (پیشرفته)
چی به دست میآوری
- 🌐 عبور از DPI / مسدودسازی SNI با لبهٔ گوگل بهعنوان رله
- 💯 کاملاً رایگان — روی سهمیهٔ رایگان حساب گوگل خودت
- ⚡ یک فایل کوچک (~۳ مگابایت)، بدون پایتون، بدون Node.js، بدون وابستگی
- 🖥️ روی مک، ویندوز، لینوکس، اندروید، روتر OpenWRT کار میکند
- 🦊 هر مرورگر یا برنامهای که از HTTP proxy یا SOCKS5 پشتیبانی کند
چطور کار میکند (تصویر ساده)
تو ← مرورگر ← mhrv-rs ──┐
│ ISP فقط میبیند: www.google.com
▼
شبکهٔ گوگل
│
▼
اسکریپت رایگان گوگل تو سایت اصلی را باز میکند
│
▼
توییتر / ChatGPT / هر سایت مسدودی
ISP داخل HTTPS رمزشده را نمیتواند بخواند. فقط آدرس را میبیند — www.google.com. جستوجوی واقعی صفحه داخل شبکهٔ گوگل، در تونل رمزشده اتفاق میافتد.
راهاندازی سریع
حدود ۵ دقیقه. نیاز داری به:
- یک حساب گوگل رایگان (هر Gmailای کار میکند)
- یک کامپیوتر (مک، ویندوز یا لینوکس)
- فایرفاکس یا کروم
مرحلهٔ ۱ — ساخت اسکریپت گوگل (یکبار)
۱. به script.google.com برو، با حساب گوگل خودت وارد شو
۲. روی New project بالا سمت چپ کلیک کن
۳. کد پیشفرض ویرایشگر را پاک کن
۴. فایل assets/apps_script/Code.gs را در همین ریپو باز کن، همهاش را کپی کن، در ویرایشگر Apps Script پیست کن (جایگزین متن قبلی)
۵. این خط را نزدیک بالای کد پیدا کن:
const AUTH_KEY = "CHANGE_ME_TO_A_STRONG_SECRET";
مقدار CHANGE_ME_TO_A_STRONG_SECRET را با یک رشتهٔ تصادفی طولانیِ خودت عوض کن. این رشته را نگه دار — در مرحلهٔ ۳ داخل برنامه پیست میکنی. مثل پسورد محرمانه نگهاش دار.
۶. روی 💾 Save کلیک کن (یا Ctrl/Cmd+S)
۷. روی Deploy (بالا سمت راست) → New deployment
۸. روی آیکون چرخدندهٔ ⚙ کنار "Select type" کلیک کن → Web app را انتخاب کن
۹. تنظیم کن:
- Execute as: Me (حساب گوگل خودت)
- Who has access: Anyone ۱۰. Deploy را بزن. ممکن است گوگل برای دادن دسترسی سؤال کند — Authorize access را بزن و تأیید کن ۱۱. گوگل یک Deployment ID نشانت میدهد (یک رشتهٔ تصادفی طولانی). کپیاش کن — در مرحلهٔ ۳ لازم داری.
نکته: اگر بعداً
Code.gsرا بهروزرسانی کنی، Deployment جدید نساز. کد را ویرایش کن، بعد Deploy → Manage deployments → ✏️ → Version: New version → Deploy. Deployment ID همان قبلی میماند.
مرحلهٔ ۲ — دانلود mhrv-rs
به صفحهٔ آخرین release برو و فایل مناسب کامپیوترت را دانلود کن:
| سیستم تو | فایل دانلود |
|---|---|
| مک با تراشهٔ Apple Silicon (M1 / M2 / M3 / M4) | mhrv-rs-macos-arm64-app.zip |
| مک با تراشهٔ Intel | mhrv-rs-macos-amd64-app.zip |
| ویندوز | mhrv-rs-windows-amd64.zip |
| لینوکس (Ubuntu / Mint / Fedora / Debian / Arch) | mhrv-rs-linux-amd64.tar.gz |
| گوشی یا تبلت اندروید | mhrv-rs-android-universal-v*.apk |
| روتر OpenWRT یا Alpine | mhrv-rs-linux-musl-amd64.tar.gz |
مک: مطمئن نیستی Apple Silicon است یا Intel؟ کلیک کن → About This Mac. اگر "Chip" نوشت Apple، arm64 بگیر. اگر Intel بود، amd64.
لینوکس: خطای
GLIBCمیگیری؟ بهجای آن ازlinux-musl-amd64استفاده کن — روی هر لینوکسی بدون وابستگی کار میکند.
از حالت فشرده دربیار.
مرحلهٔ ۳ — اجرای اول
روی فایل اجرا دو بار کلیک کن:
| مک | run.command |
| ویندوز | run.bat |
| لینوکس | ./run.sh (در ترمینال) |
اولین بار رمز کامپیوترت را میخواهد. این برای نصب یک گواهی کوچک است تا مرورگرت به mhrv-rs اعتماد کند. گواهی روی کامپیوتر خودت ساخته میشود و هیچوقت جایی ارسال نمیشود — نه روی ابر، نه به گوگل، هیچ منبع راهدوری نمیتواند ازش استفاده کند.
پنجرهٔ mhrv-rs باز میشود. این فیلدها را پر کن:
- Apps Script ID(s) ← Deployment ID از مرحلهٔ ۱ را پیست کن
- Auth key ← همان رشتهٔ تصادفی که در
Code.gsگذاشتی - بقیه را پیشفرض ول کن
روی Save config و بعد Start بزن. اگر کار کند، دایرهٔ وضعیت سبز میشود.
تستش کن: دکمهٔ Test را بزن. یک درخواست از طریق رله میفرستد و میگوید کار کرد یا نه.
مرحلهٔ ۴ — مرورگر را روی mhrv-rs تنظیم کن
فایرفاکس (پیشنهادی — سادهترین)
۱. فایرفاکس → منوی ☰ → Settings
۲. در کادر جستوجو "proxy" تایپ کن
۳. زیر Network Settings روی Settings… کلیک کن
۴. Manual proxy configuration را انتخاب کن
۵. HTTP Proxy: 127.0.0.1 پورت: 8085
۶. ☑ "Also use this proxy for HTTPS" را تیک بزن
۷. OK
کروم / Edge
افزونهٔ Proxy SwitchyOmega را نصب کن و پروکسی را روی 127.0.0.1:8085 تنظیم کن.
مک (سراسری)
System Settings → Network → Wi-Fi → Details → Proxies → هر دو Web Proxy (HTTP) و Secure Web Proxy (HTTPS) را روشن کن، هر دو روی 127.0.0.1:8085.
مرحلهٔ ۵ — امتحان کن
در مرورگرت یک سایت مسدود را باز کن. باید لود شود.
اگر چیزی کار نکرد:
- در پنجرهٔ mhrv-rs دکمهٔ Test را بزن — میگوید کجا گیر کرده
- پنل Recent log پایین پنجره را نگاه کن
- بخش سؤالات رایج پایین را ببین
سؤالات رایج
واقعاً رایگانه؟ بله. گوگل به هر حساب روزانه ۲۰٬۰۰۰ درخواست خروجی URL در سهمیهٔ رایگان میدهد. برای مرور عادی یک نفر کاملاً کافی است. برای خانوادهٔ ۳-۴ نفره که از یک سرویس استفاده میکنند، در ۲-۳ حساب گوگل مختلف Deployment بساز و همهٔ IDها را اضافه کن.
امنه؟ گواهی روی کامپیوتر خودت میماند — کسی کلید خصوصی را ندارد. auth_key رمز محرمانهٔ توست. گوگل سایتهایی که از طریق رله باز میکنی را میبیند (چون Apps Script برای تو fetch میکند) — مثل هر پروکسی میزبانیشدهٔ دیگری. اگر این برایت قابل قبول نیست، از Full Tunnel با VPS شخصی استفاده کن — در راهنمای کامل.
ویدیوی یوتیوب پخش نمیشود. chunkهای ویدیوی یوتیوب از googlevideo.com میآیند و Apps Script نمیتواند به آن برسد (گوگل اجازهٔ دسترسی Apps Script به CDN ویدیوی خودش را نمیدهد). صفحهٔ خود یوتیوب لود میشود، فقط پخش ویدیو تحت تأثیر است. راهحل: Full Tunnel + VPS، یا .googlevideo.com را به passthrough_hosts در کانفیگت اضافه کن (مرورگر مستقیم میرود اما روی ISP ایران throttle میخورد).
ChatGPT / Claude / Grok کپچای Cloudflare نشان میدهد. Cloudflare آیپیهای دیتاسنتر گوگل را بهعنوان bot شناسایی میکند. راهحل: یک exit node راهاندازی کن — یک handler کوچک TypeScript که روی یک host serverless (Deno Deploy، fly.io، VPS شخصی) deploy میکنی و پل میسازه از Apps Script به سایت Cloudflare. assets/exit_node/README.fa.md.
تلگرام پایدار نیست. تلگرام از MTProto استفاده میکند که Apps Script نمیفهمد. روی کامپیوترت با xray جفتش کن — بخش تلگرام در راهنمای کامل.
ISP خود script.google.com را مسدود کرده. mhrv-rs یک حالت direct دارد که فقط از تونل بازنویسی SNI استفاده میکند (بدون Apps Script). یکبار از این حالت استفاده کن تا به script.google.com برسی و اسکریپت را دیپلوی کنی، بعد به حالت apps_script سوئیچ کن. حالت direct.
جستوجوی گوگلم بدون JavaScript ظاهر میشود. User-Agent Apps Script ثابت روی Google-Apps-Script است (گوگل نمیگذارد اسکریپتها عوضش کنند)، پس بعضی سایتها نسخهٔ بدون JS برمیگردانند. راهحل: دامنهٔ مورد نظر را به hosts اضافه کن تا از تونل بازنویسی SNI با User-Agent واقعی مرورگرت برود. google.com، youtube.com، fonts.googleapis.com بهطور پیشفرض در این لیستاند.
سؤالات بیشتر: FAQ کامل در راهنمای بلند.
کمک میخواهی؟
- در issueهای باز و بسته جستوجو کن — احتمالاً مشکلت قبلاً جواب داده شده
- یک issue جدید باز کن با: کانفیگت (حتماً
auth_keyرا پنهان کن!)، دقیقاً چه کاری کردی، دقیقاً چه دیدی در log
اعتبار
پروژهٔ اصلی: @masterking32/MasterHttpRelayVPN. ایده، پروتکل Apps Script، معماری پروکسی — همه از اوست. این پورت Rust برای سادهتر کردن توزیع سمت کلاینت است (یک فایل اجرایی، بدون نصب پایتون).
بیشتر کد Rust این پورت با کمک Claude شرکت Anthropic نوشته شده، روی هر commit انسانی بازبینی شده.
حمایت از پروژه
❤️ کمک مالی در sh1n.org — برای پوشش هزینهٔ هاستینگ و runner CI. ستاره دادن به ریپو هم نشان میدهد پروژه ارزش ادامه دادن دارد.