
あなたのコンピュータ上で動作し、自身の無料GoogleアカウントにデプロイしたGoogle Apps Scriptを使って、ブロックされたWebサイトを無料で訪問できる小さなプログラムです。ISPからはwww.google.comへの暗号化トラフィックにしか見えません — 実際に何を訪れているかはわかりません。
🇬🇧 English Quick Start · Full Guide (advanced topics) 🇮🇷 راهاندازی سریع فارسی · راهنمای کامل (مباحث پیشرفته)
۱. راهنمای تصویری راه اندازی به زبان فارسی (YouTube)
۲. راهنمای جامع متنی راه اندازی به زبان فارسی با تشکر از Kian Irani
あなた → ブラウザ → mhrv-rs ──┐
│ ISPからは次のようにしか見えない: www.google.com
▼
Googleのネットワーク
│
▼
あなたの無料Apps Scriptが実際のサイトを取得
│
▼
Twitter / ChatGPT / お好みのブロックサイト
ISPは暗号化されたHTTPSの中身を読めません。見えるのはアドレス — www.google.com だけです。実際のページ検索はGoogleのネットワーク内で、暗号化トンネルの中で行われます。
約5分。 必要なもの:
assets/apps_script/Code.gs を開き、すべてコピーしてApps Scriptエディタに貼り付け(既存のコードを置き換え)const AUTH_KEY = "CHANGE_ME_TO_A_STRONG_SECRET";
CHANGE_ME_TO_A_STRONG_SECRET を自分だけの長くランダムな文字列に変更します。この文字列は保管しておいてください — ステップ3でアプリに貼り付けます。パスワードとして扱ってください。Ctrl/Cmd+S)をクリックヒント: 後で
Code.gsを更新する場合、新しいデプロイメントを作らないでください。コードを編集したら、Deploy → Manage deployments → ✏️ → Version: New version → Deploy に進みます。Deployment IDは同じままです。
最新リリースページ にアクセスし、お使いのコンピュータに合ったファイルをダウンロードします:
Mac: Apple SiliconかIntelかわからない場合? アップルメニュー → このMacについて をクリック。「チップ」に Apple と表示されていればarm64を、Intel と表示されていればamd64を入手してください。
Linux:
GLIBCエラーが出る場合? 代わりにlinux-musl-amd64ファイルを使用してください — 依存関係なしでどのLinuxでも動作します。
解凍します。
ランチャーをダブルクリック:
| Mac | run.command |
| Windows | run.bat |
| Linux | ./run.sh(ターミナルで) |
初回起動時に、コンピュータのパスワードを求められます。これは、ブラウザがmhrv-rsを信頼するように小さな証明書をインストールするためです。この証明書はお使いのコンピュータ上で生成され、外部に出ることはありません — クラウドもGoogleもリモートも使用できません。
mhrv-rsのウィンドウが開きます。次の項目を入力します:
Code.gs に設定したランダムな文字列を貼り付けSave config をクリックし、次に Start をクリックします。正常に動作すればステータスサークルが緑色になります。
テストする: Test ボタンをクリックします。リレーを通して1つのリクエストを送信し、動作したかどうかを通知します。
127.0.0.1 ポート: 8085Proxy SwitchyOmega 拡張機能をインストールし、プロキシを 127.0.0.1:8085 に設定します。
システム設定 → ネットワーク → Wi-Fi → 詳細 → プロキシ → Web プロキシ(HTTP) と セキュア Web プロキシ(HTTPS) の両方を有効にし、両方とも 127.0.0.1:8085 を指定します。
ブラウザでブロックされたサイトを開きます。読み込まれるはずです。
何かがうまくいかない場合:
本当に無料ですか? はい。Googleはすべてのアカウントに無料枠で1日20,000回の外部URLフェッチを許可しています。これは一人の通常のブラウジングには十分です。同じ設定を共有する3〜4人家族の場合は、異なるGoogleアカウントで2〜3のデプロイメントを作成し、すべてのIDを追加してください。
安全ですか? 証明書はお使いのコンピュータ上に残ります — 他の誰も秘密鍵を持ちません。auth_key はあなたの秘密です。Googleはリレーを通じてアクセスしたWebサイトを確認します(Apps Scriptがあなたの代わりにフェッチするため)— これはホスト型プロキシと同じです。これが許容できない場合は、独自のVPSを使用したFull Tunnelモードを使用してください — 完全ガイドを参照。
YouTube動画が再生されない。 YouTubeの動画チャンクは googlevideo.com から送信されますが、Apps Scriptはそこにアクセスできません(GoogleはApps Scriptが自社のビデオCDNにアクセスするのをブロックします)。ページ自体は問題なく読み込まれますが、動画の再生のみ影響を受けます。修正方法:Full Tunnel + VPS、または passthrough_hosts に .googlevideo.com を追加(ブラウザは直接アクセスしますが、イランのISPでは依然として帯域制限の対象となります)。
ChatGPT / Claude / Grok でCloudflare CAPTCHAが表示される。 CloudflareはGoogleのデータセンターIPをボットとしてフラグ付けします。修正方法:exit node を設定します — サーバーレスホスト(Deno Deploy、fly.io、独自のVPS)にデプロイする小さなTypeScriptハンドラで、Apps Script → exit node → claude.ai をブリッジします。assets/exit_node/README.md を参照。
Telegramが不安定。 TelegramはMTProtoを使用しており、Apps Scriptは対応していません。お使いのマシンで xray と組み合わせてください — 完全ガイドのTelegram via xray を参照。
ISPが script.google.com自体をブロックしている。 mhrv-rsには、SNI書き換えトンネル(Apps Scriptなし)のみを使用する direct モードがあります。これを使用して script.google.com にアクセスしスクリプトをデプロイした後、apps_scriptモードに切り替えます。direct モード を参照。
Google検索がJavaScriptなしで表示される。 Apps Scriptの User-Agent は Google-Apps-Script に固定されています(Googleはスクリプトが変更することを許可しません)。そのため、一部のサイトではJavaScriptなしのフォールバックが提供されます。回避策:影響を受けるドメインを hosts マップに追加して、実際のブラウザのUser-AgentでSNI書き換えトンネルを通過するようにします。google.com、youtube.com、fonts.googleapis.com はデフォルトでこのリストに含まれています。
その他の質問: 詳細ガイドのFAQ を参照。
auth_key を必ず隠してください!)、試した内容の正確な手順、ログに表示された内容オリジナルプロジェクト:@masterking32/MasterHttpRelayVPN。アイデア、Apps Scriptプロトコル、プロキシアーキテクチャ — すべて彼のものです。このRustポートは、クライアント側の配布を容易にするために存在します(単一バイナリ、Pythonのインストール不要)。
このポートのRustコードの大部分は AnthropicのClaude を使用して作成され、すべてのコミットで人間によるレビューが行われています。
❤️ sh1n.org で寄付 — ホスティングとCIランナーの費用を賄います。リポジトリにスターを付けることも、プロジェクトを存続させる価値があることを示すのに役立ちます。
یک برنامهٔ کوچک که روی کامپیوترت اجرا میشود و کمک میکند سایتهای مسدودشده را با یک اسکریپت رایگان که توی حساب گوگل خودت میسازی، باز کنی. ISP فقط میبیند که داری به www.google.com وصل میشوی — نمیفهمد در واقع چه سایتی را باز کردهای.
🇬🇧 English Quick Start · Full Guide (advanced) 🇮🇷 راهاندازی سریع · راهنمای کامل (پیشرفته)
تو ← مرورگر ← mhrv-rs ──┐
│ ISP فقط میبیند: www.google.com
▼
شبکهٔ گوگل
│
▼
اسکریپت رایگان گوگل تو سایت اصلی را باز میکند
│
▼
توییتر / ChatGPT / هر سایت مسدودی
| お使いの環境 | ダウンロードするファイル |
|---|
| Apple Silicon搭載Mac(M1 / M2 / M3 / M4チップ) | mhrv-rs-macos-arm64-app.zip |
| Intelチップ搭載Mac | 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スマートフォンまたはタブレット | mhrv-rs-android-universal-v*.apk |
| OpenWRTルーターまたはAlpine | mhrv-rs-linux-musl-amd64.tar.gz |
ISP داخل HTTPS رمزشده را نمیتواند بخواند. فقط آدرس را میبیند — www.google.com. جستوجوی واقعی صفحه داخل شبکهٔ گوگل، در تونل رمزشده اتفاق میافتد.
حدود ۵ دقیقه. نیاز داری به:
۱. به 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 را انتخاب کن
۹. تنظیم کن:
نکته: اگر بعداً
Code.gsرا بهروزرسانی کنی، Deployment جدید نساز. کد را ویرایش کن، بعد Deploy → Manage deployments → ✏️ → Version: New version → Deploy. Deployment ID همان قبلی میماند.
به صفحهٔ آخرین 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 باز میشود. این فیلدها را پر کن:
Code.gs گذاشتیروی Save config و بعد Start بزن. اگر کار کند، دایرهٔ وضعیت سبز میشود.
تستش کن: دکمهٔ Test را بزن. یک درخواست از طریق رله میفرستد و میگوید کار کرد یا نه.
۱. فایرفاکس → منوی ☰ → Settings
۲. در کادر جستوجو "proxy" تایپ کن
۳. زیر Network Settings روی Settings… کلیک کن
۴. Manual proxy configuration را انتخاب کن
۵. HTTP Proxy: 127.0.0.1 پورت: 8085
۶. ☑ "Also use this proxy for HTTPS" را تیک بزن
۷. OK
افزونهٔ 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.
در مرورگرت یک سایت مسدود را باز کن. باید لود شود.
اگر چیزی کار نکرد:
واقعاً رایگانه؟ بله. گوگل به هر حساب روزانه ۲۰٬۰۰۰ درخواست خروجی 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 کامل در راهنمای بلند.
auth_key را پنهان کن!)، دقیقاً چه کاری کردی، دقیقاً چه دیدی در logپروژهٔ اصلی: @masterking32/MasterHttpRelayVPN. ایده، پروتکل Apps Script، معماری پروکسی — همه از اوست. این پورت Rust برای سادهتر کردن توزیع سمت کلاینت است (یک فایل اجرایی، بدون نصب پایتون).
بیشتر کد Rust این پورت با کمک Claude شرکت Anthropic نوشته شده، روی هر commit انسانی بازبینی شده.
❤️ کمک مالی در sh1n.org — برای پوشش هزینهٔ هاستینگ و runner CI. ستاره دادن به ریپو هم نشان میدهد پروژه ارزش ادامه دادن دارد.