مستندات

راهنمای کامل گذرگاه

از صفر تا اشتراک فعال — پیش‌نیازها، نصب، ورود اولیه، تنظیمات، امنیت و رفع اشکال؛ همه در یک صفحه.

متناسب با نسخه ۱٫۱٫۰زمان مطالعه: ۵ دقیقهگیت‌هاب

معرفی

#

گذرگاه یک پنل پروکسی کامل روی Cloudflare Workers است که با تمرکز بر معماری ماژولار، امنیت واقعی و حسابداری دقیق بایت طراحی شده و هیچ‌کدام از آنتی‌پترن‌های رایج این حوزه را تکرار نمی‌کند. کل پروژه با TypeScript ماژولار نوشته شده و خروجی آن یک فایل تک‌Worker است.

استقرار روی پلن رایگان Cloudflare انجام می‌شود؛ بدون سرور، بدون VPS و بدون هیچ وابستگی رانتایمی. رابط پنل با دیزاین‌سیستم اختصاصی Gozargah Nexus UI ساخته شده و به‌صورت کامل دوزبانه (فارسی/انگلیسی) است.

پیش‌نیازها

#
  • یک اکانت Cloudflare — پلن رایگان کاملاً کافی است
  • Node.js نسخه ۱۸ به بالا — فقط برای روش نصب با wrangler
  • یک مرورگر برای کار با داشبورد Cloudflare

نصب و استقرار

#

دو روش رسمی نصب وجود دارد؛ روش Paste بدون هیچ ابزاری انجام می‌شود و برای اکثر کاربران انتخاب اول است.

روش ۱ — Paste در داشبورد

  1. ۱فایل آمادهٔ dist/gozargah-worker.js را از بخش Releases ریپو بردارید (یا با npm run build بسازید).
  2. ۲در داشبورد Cloudflare: Workers & Pages ← Create ← Worker — نام دلخواه (مثلاً gozargah) و Create.
  3. ۳دکمهٔ Edit code را بزنید، محتوای فایل را جایگزین کنید و Deploy بزنید.
  4. ۴دیتابیس بسازید: Storage & Databases ← D1 ← Create — نام: gozargah
  5. ۵در Worker: Settings ← Bindings ← Add ← D1 Database — Variable name دقیقاً GZ_DB و انتخاب دیتابیس gozargah، سپس Deploy.
  6. ۶آدرس https://<worker>.workers.dev/gozargah را باز کنید — تمام! ورود با رمز پیش‌فرض admin

تا قبل از اتصال D1، پنل «راهنمای اتصال دیتابیس» را نشان می‌دهد و Worker در حالت بی‌دیتابیس هم پروکسی می‌کند (UUID قطعی از روی هاست).

روش ۲ — wrangler

ترمینال — bash
git clone https://github.com/panelgozargah/gozargah.git
cd gozargah
npm install
npx wrangler d1 create gozargah   # database_id را در wrangler.toml جای‌گذاری کنید
npm run deploy

به‌روزرسانی خودکار با GitHub Actions: در ریپو دو Secret تعریف کنید — CLOUDFLARE_API_TOKEN و CLOUDFLARE_ACCOUNT_ID — سپس هر push به main دیپلوی می‌شود.

ورود اولیه

#
آدرس پنل
https://<worker>.workers.dev/gozargah
رمز عبور پیش‌فرض
admin

پنل تا تغییر رمز پیش‌فرض نوار هشدار زرد نشان می‌دهد. اولین کار پس از ورود: تنظیمات ← رمز جدید. مسیر پنل و مسیر اشتراک هم از همان‌جا قابل تغییر است.

کاربران و اشتراک

#

هر کاربر در گذرگاه این‌ها را دارد:

  • UUID اختصاصی + رمز Trojan مخصوص خودش
  • سهمیهٔ بایت (GB) و تاریخ انقضا
  • وضعیت فعال/غیرفعال و چرخش اعتبار یک‌کلیکه
  • مصرف واقعی up/down زنده روی کارت کاربر

مسیرهای اشتراک و پنل

  • /{subPath}/{token}اشتراک خودکار (تشخیص با User-Agent)
  • /{subPath}/{token}/clashپروفایل Clash-Meta
  • /{subPath}/{token}/singboxپروفایل Sing-box
  • /{subPath}/{token}/v2rayBase64 لینک‌ها
  • /gozargahپنل (قابل تغییر)
  • /healthzسلامت Worker

تنظیمات و مسیرها

#

همه‌چیز از داخل پنل قابل تنظیم است؛ جدول زیر مقادیر پیش‌فرض را نشان می‌دهد.

  • ProxyIPsproxyip.cmliussss.net

    اتصال به سایت‌های پشت کلادفلر؛ هر خط یک مورد، انتخاب IP برای هر کاربر پایدار است

  • مسیر اشتراکsub

    پیشوند لینک اشتراک

  • مسیر پنلgozargah

    مسیر مخفی پنل

  • رمز عبورadmin

    حداقل ۸ کاراکتر

نکات امنیتی

#

این لایه‌ها به‌صورت پیش‌فرض و بدون هیچ تنظیم اضافه فعال‌اند.

هش امن رمز

PBKDF2-SHA256 با ۱۰۰٬۰۰۰ دور و salt تصادفی ۱۶ بایتی؛ رمز plaintext هیچ‌جا ذخیره نمی‌شود.

سشن امضاشده

HMAC-SHA256 با انقضا؛ کوکی HttpOnly و Secure و SameSite=Lax.

محافظت از ورود

حداکثر ۵ تلاش در ۱۵ دقیقه؛ ماندگار در D1 و بر اساس هش IP — نه per-isolate فرّار.

چرخش و ابطال

UUID و رمز Trojan هر کاربر یک‌کلیکه قابل چرخش؛ تغییر رمز ادمین همهٔ سشن‌ها را باطل می‌کند.

استتار کامل

پاسخ همهٔ مسیرهای ناشناخته یک صفحهٔ بی‌اثر است؛ robots.txt بسته و مسیر پنل مخفی.

صفر درخواست خارجی

تمام دارایی‌های UI داخل Worker تعبیه شده؛ هیچ درخواست خارجی‌ای برای رندر زده نمی‌شود.

کلاینت‌های سازگار

#
v2rayNGv2rayNStreisandShadowrocketHiddifyClash-Meta / StashSing-boxNekobox

تشخیص خودکار فرمت اشتراک بر اساس User-Agent کلاینت انجام می‌شود (+ امکان override با مسیرهای /clash و /singbox و /v2ray).

پرسش‌ها و نقشهٔ راه

#

پاسخ کوتاه رایج‌ترین پرسش‌ها — صفحهٔ اصلی هم بخش کامل پرسش‌ها را دارد.

آیا گذرگاه رایگان است؟

بله. کد گذرگاه با لایسنس MIT منتشر می‌شود و برای اجرا فقط به یک اکانت رایگان Cloudflare نیاز دارید؛ پلن رایگان Workers و D1 برای شروع کاملاً کافی است و هیچ هزینهٔ پنهانی ندارد.

برای استقرار چه چیزهایی لازم است؟

فقط یک اکانت Cloudflare. روش اول (Paste) بدون هیچ ابزاری در خود داشبورد انجام می‌شود؛ روش دوم به Node.js نیاز دارد. سرور، VPS یا هاست جداگانه‌ای لازم نیست — همه‌چیز روی edge اجرا می‌شود.

اگر D1 را وصل نکنم چه می‌شود؟

Worker همچنان پروکسی می‌کند و UUID به‌صورت قطعی از روی هاست ساخته می‌شود؛ پنل هم «راهنمای اتصال دیتابیس» را نشان می‌دهد تا حسابداری چندکاربره، سهمیه و انقضا فعال شوند.

اولین کار بعد از نصب چیست؟

با رمز پیش‌فرض admin وارد شوید و بلافاصله از بخش تنظیمات رمز جدید بگذارید؛ تا آن زمان نوار هشدار زرد در پنل نمایان است. مسیر مخفی پنل و مسیر اشتراک هم از همان‌جا قابل تغییر است.

اشتراک با کدام کلاینت‌ها کار می‌کند؟

لینک‌های VLESS/Trojan و سه فرمت Base64، Clash-Meta و Sing-box با تشخیص خودکار User-Agent تحویل داده می‌شوند و با v2rayNG، v2rayN، Streisand، Shadowrocket، Hiddify، Nekobox و… تست شده‌اند.

وجود پنل قابل کشف است؟

خیر. هر مسیر ناشناخته یک صفحهٔ بی‌ضرر برمی‌گرداند و robots.txt بسته است؛ پنل فقط از مسیر مخفی انتخابی شما در دسترس است و از رفتار HTTP قابل تشخیص نیست.

چطور گذرگاه را به‌روزرسانی کنم؟

در روش Paste کافی است فایل dist/gozargah-worker.js نسخهٔ جدید را از بخش Releases بردارید و محتوای Worker را جایگزین کنید؛ در روش wrangler با git pull و npm run deploy. داده‌های D1 دست‌نخورده می‌مانند و پس از استقرار همه‌چیز سر جای خودش است.

می‌توانم چند استقرار موازی داشته باشم؟

بله. همان فایل Worker را می‌توانید چند بار مستقر کنید — روی workers.dev یا دامنهٔ اختصاصی خودتان — و هر استقرار دیتابیس D1 جداگانه بگیرد؛ برای تفکیک کاربران، محیط تست یا مناطق مختلف کاربرد دارد.

نقشهٔ راه

برنامه‌ریزی‌شده
Shadowsocks AEADفوروارد UDP-DNS (پورت ۵۳) و NAT64شروع شمارش سهمیه از اولین اتصال + ریست خودکار دوره‌ایECH و fragment پریست‌های اپراتورهای ایرانربات تلگرام با FSM روی D1تست‌های خودکار (vitest + miniflare)