Skip to content
loopy-iri edited this page Jun 25, 2026 · 4 revisions

🇬🇧 English · 🇮🇷 فارسی

راهنمای کامل سیستم فروش نود (NodeAgent + NodePanel)

این ویکی توضیح می‌دهد سیستم چطور کار می‌کند، هر نقش چه کاری انجام می‌دهد، و گام‌به‌گام چطور نصب/اتصال/استفاده شود.

این سیستم چیست؟

یک سامانه‌ی فروش نود بر پایه‌ی فورک PasarGuard/node:

  • NodeAgent (repo): نودِ چند-مستأجری. یک Xray مشترک، چند مشتری (tenant) را با کاربرهایشان سرویس می‌دهد؛ سهمیه‌ی حجم/انقضا را محلی enforce می‌کند.
  • NodePanel (repo): پنل کنترل مرکزی که چند نود، مشتری، پلن و اشتراک را مدیریت می‌کند و مصرف را برای ربات فروش expose می‌کند.

معماری در یک نگاه

┌────────────┐      Bearer API        ┌──────────────┐   master key (HTTPS :8090)   ┌───────────────┐
│ ربات فروش   │ ───────────────────▶ │  NodePanel    │ ───────────────────────────▶ │   NodeAgent    │
│ (پول/کیف‌پول)│ ◀─ webhook (HMAC) ── │ (نود/مشتری/پلن)│                              │ (Xray مشترک)   │
└────────────┘                        └──────────────┘                              └───────┬───────┘
                                                                                            │ customer key
                                       پنلِ PasarGuard مشتری ──── gRPC (:62050) ─────────────┘
                                       (کاربرهای نهایی را می‌سازد)
  • پنل پول ندارد. کیف‌پول/قیمت/پرداخت در ربات فروشِ بیرونی است؛ پنل فقط بایت/زمان/وضعیت را مدیریت و مصرف/overage را گزارش می‌کند.
  • جداسازی مستأجرها بر اساس کاربر؛ یکتایی credential در کل نود enforce می‌شود.
  • اتمام حجم/انقضا → کاربرهای آن مشتری از هسته حذف و کلیدش رد می‌شود (suspend ≠ delete؛ تمدید داده‌ها را برمی‌گرداند).

نقش‌ها

نقش کیست چه می‌کند
اپراتور تو (صاحب سرویس) پنل و نودها را نصب و مدیریت می‌کند، پلن می‌سازد، اشتراک تحویل می‌دهد.
مشتری خریدار نود با پنل PasarGuard خودش و کلید مشتری به نود وصل می‌شود و کاربر نهایی می‌سازد.
کاربر نهایی مشتریِ مشتری لینک اشتراک (vless/...) را از مشتری می‌گیرد و وصل می‌شود.
ربات فروش سرویس بیرونی از API پنل برای ساخت اشتراک و از webhook برای مصرف/overage استفاده می‌کند.

از کجا شروع کنم؟

Clone this wiki locally