An open API service indexing awesome lists of open source software.

https://github.com/irnova/nova-server

Self-hosted, censorship-resistant proxy server with an all-in-one admin panel for Xray-core, sing-box, Hysteria2, and AmneziaWG.
https://github.com/irnova/nova-server

amneziawg censorship-circumvention cloudflare docker hysteria2 nova-server proxy-server self-hosted sing-box vpn vps xray-core

Last synced: about 22 hours ago
JSON representation

Self-hosted, censorship-resistant proxy server with an all-in-one admin panel for Xray-core, sing-box, Hysteria2, and AmneziaWG.

Awesome Lists containing this project

README

          


🇬🇧 English

Nova Server: سرور پروکسی خودمیزبان و مقاوم در برابر فیلترینگ همراه با پنل مدیریت کامل روی هر VPS.

**سرور پروکسی اختصاصی و مقاوم در برابر فیلترینگ شما، همراه با یک پنل مدیریت کامل، روی هر VPS.**

VLESS، VMess، Trojan، Shadowsocks، Reality، Hysteria2، TUIC، NaiveProxy و WireGuard، همراه با یک پنل مدرن
سه‌زبانه (English، فارسی، Русский)، حساب‌های چندکاربره، ناوگان چندنودی، تونل‌های پل ایران،
SSL یک‌کلیکی، ربات تلگرام با Mini App و احراز هویت دومرحله‌ای.

[![License](https://img.shields.io/badge/license-Proprietary-8b5cf6?style=for-the-badge)](LICENSE)
[![Version](https://img.shields.io/badge/version-1.33.1-blueviolet?style=for-the-badge)](https://github.com/IRNova/Nova-Server)
[![Stars](https://img.shields.io/github/stars/IRNova/Nova-Server?style=for-the-badge&color=0ea5e9)](https://github.com/IRNova/Nova-Server)

---

## 🌐 پیوندها

[![Website](https://img.shields.io/badge/🌐%20Website-novaproxy.online-0ea5e9?style=for-the-badge)](https://novaproxy.online/)
[![Telegram Channel](https://img.shields.io/badge/✈️%20Telegram%20Channel-@irnova__proxy-0ea5e9?style=for-the-badge&logo=telegram)](https://t.me/irnova_proxy)
[![Telegram Group](https://img.shields.io/badge/👥%20Telegram%20Group-@irnovaproxy__group-0ea5e9?style=for-the-badge&logo=telegram)](https://t.me/irnovaproxy_group)
[![YouTube](https://img.shields.io/badge/▶️%20YouTube-@novaproxyir-ff0000?style=for-the-badge&logo=youtube)](https://www.youtube.com/@novaproxyir)
[![X (Twitter)](https://img.shields.io/badge/𝕏%20X-@irNovaProxy-000000?style=for-the-badge&logo=x)](https://x.com/irNovaProxy)
[![Instagram](https://img.shields.io/badge/📸%20Instagram-@irnova__proxy-E4405F?style=for-the-badge&logo=instagram)](https://www.instagram.com/irnova_proxy)
[![Donate](https://img.shields.io/badge/💜%20حمایت%20مالی-donate.novaproxy.online-8b5cf6?style=for-the-badge)](https://donate.novaproxy.online)

---

مرور کلی: Nova Server چیست؟

Nova Server یک VPS ساده لینوکسی را به یک نود پروکسی خصوصی و مقاوم در برابر فیلترینگ همراه با یک **پنل مدیریت کامل** تبدیل می‌کند. این ابزار `Xray-core`، `sing-box` (برای Hysteria2) و `AmneziaWG` را پشت یک پورت اجرا می‌کند و همه را با یک ایجنت خودمیزبان مدیریت می‌کند. جایی که Nova Proxy روی لایه رایگان کلادفلر اجرا می‌شود، Nova Server **نسخه خودمیزبان و قدرتمندتر** است: یک هسته پروکسی واقعی با هر آنچه یک اپراتور جدی نیاز دارد.

**چه چیزی Nova Server را متمایز می‌کند:**
- 🧩 **همه پروتکل‌های مهم**: VLESS، VMess، Trojan، Shadowsocks، Reality، Hysteria2، TUIC، NaiveProxy و WireGuard بومی
- ⚡ **راه‌اندازی با یک اسکن**: نصب تازه یک کاربر آغازین با همهٔ پروتکل‌ها روشن می‌سازد و داشبورد یک کد ⁦QR⁩ «اتصال سریع» نشان می‌دهد، پس اولین کلاینت با یک اسکن آنلاین می‌شود
- 🧭 **پنج پرسش تا یک سرور آماده**: دستیار راه‌اندازی در نخستین ورود به پنل باز
می‌شود و می‌پرسد این نود برای چه کسی است، کاربران از کجا وصل می‌شوند، چطور به
آن برسند، سرور دومی دارید یا نه، و چه کسانی از آن استفاده می‌کنند. بعد کارها را
خودش انجام می‌دهد: اگر دامنه داده باشید گواهی را صادر می‌کند، پل ایران یا نود
اضافه را تنظیم می‌کند و دستور یک‌باره‌اش را به شما می‌دهد، پیکربندی را می‌نویسد،
حساب‌ها را می‌سازد و در پایان برای هر نفر یک لینک اشتراک و کد ⁦QR⁩ تحویل می‌دهد.
هر پرسش قابل رد کردن است، هر رد کردن یک پیش‌فرض کارا دارد که پیش از زدن دکمه
نشان داده می‌شود، و تا صفحهٔ بازبینی را تأیید نکنید چیزی نوشته نمی‌شود
- 🎚️ **حالت ساده به‌صورت پیش‌فرض**: یک پاسخ («کاربران از کجا وصل می‌شوند؟») جای
هفت کلید جداگانهٔ ضدسانسور را می‌گیرد، و یک نود تازه جزئیات داخلی موتور را کلاً
از منو کنار می‌گذارد. یک کلید در تنظیمات، سازندهٔ قوانین مسیریابی، خروجی‌های
سفارشی، تونل‌ها، گزینه‌های موتور ⁦Xray⁩، نمایندگان و توکن‌های ⁦API⁩ را برمی‌گرداند.
چیزی حذف نمی‌شود و نصب‌های موجود همهٔ صفحه‌هایی را که داشتند نگه می‌دارند
- 🐇 **⁦Hysteria2⁩ سخت‌جان**: پرش پورت ⁦UDP⁩ روی بازه‌ای که خودت انتخاب می‌کنی (تا هیچ پورت ثابتی برای مسدودکردن نباشد)، مبهم‌سازی ⁦Salamander⁩ و ⁦ECH⁩ برای پنهان‌کردن ⁦SNI⁩؛ کانفیگ کامل پرش پورت و ⁦ECH⁩ در اشتراک ⁦sing-box⁩ تحویل داده می‌شود، و کلید خصوصی ⁦ECH⁩ هیچ‌وقت از نود بیرون نمی‌رود
- 🇮🇷 **تونل‌های پل ایران با جابه‌جایی خودکار**: قرار دادن یک سرور با آی‌پی تمیز داخل ایران جلوی خروج خارجی (Backhaul، BackPack، rathole، wstunnel)؛ با یک کلیک همهٔ لینک‌های کلاینت را به پل هدایت کنید که روی همهٔ فرمت‌ها (خام، ⁦Clash⁩ و ⁦sing-box⁩) اعمال می‌شود، و فقط پورت‌های فوروارد‌شده از پل عبور می‌کنند؛ چند پل را فهرست کنید تا خروج همه را هم‌زمان بگیرد و اگر یکی بیفتد کلاینت‌ها خودکار به پل زنده بروند؛ بررسی آمادگی پل (⁦nova-bridge.sh --check⁩) پیش از نصب آی‌پی مستقیم و آزاد بودن پورت‌ها را تأیید می‌کند و یک آزمایش پورت، وقتی ایران پورت پیش‌فرض را مسدود کرده باشد، یک پورت کنترل زنده پیدا می‌کند
- 🔐 **SSL یک‌کلیکی**: ⁦Let's Encrypt⁩ یا ⁦Cloudflare⁩ کاملاً خودکار (⁦DNS⁩ خودکار + وایلدکارت)، با پشتیبانی از توکن کاربر و توکن متعلق به حساب، بدون درگیری دستی با پورت ۸۰
- 🩺 **راه‌اندازی بازیابی‌پذیر گواهی**: نوا قانون موردنیاز ⁦UFW⁩ برای اعتبارسنجی ⁦HTTP⁩ را باز و ثبت می‌کند، برای شروع کند ⁦Xray⁩ منتظر می‌ماند، گواهی دقیق ⁦SNI⁩ را محلی بررسی می‌کند، در شکست با ایمنی برمی‌گردد و مشخص می‌کند مشکل از ⁦Xray⁩، ⁦sing-box⁩، اعتبارسنجی پیکربندی، ⁦DNS⁩ یا درگاه ⁦TLS⁩ بوده است
- 🔗 **آدرس اشتراک قابل‌اعتماد**: پنل، ⁦API⁩، ربات تلگرام، نصب‌کننده و ابزارهای بازیابی از یک مدل مشترک ⁦HTTPS⁩ استفاده می‌کنند که پورت سفارشی را نگه می‌دارد و نشانی ⁦IPv6⁩ را درست داخل براکت می‌گذارد
- 🌍 **چند دامنه و زیردامنه**: یک آدرس اصلی برای پنل نگه دارید، تا ۲۰ دامنهٔ معتبر جایگزین برای همان سرور اضافه کنید، گواهی هرکدام را خودکار بگیرید و تمدید کنید و هر آدرس سالم را به‌عنوان مسیر مستقل جایگزین در اشتراک‌ها منتشر کنید؛ فعال‌سازی فقط پس از بررسی سلامت انجام می‌شود و در صورت شکست، گواهی، ⁦DNS⁩، ⁦Xray⁩ و ⁦sing-box⁩ قبلی بازیابی می‌شوند؛ آدرس‌های ابر نارنجی ⁦Cloudflare⁩ به‌صورت امن فقط برای ⁦WebSocket⁩ استفاده می‌شوند
- 👥 **کنترل کامل هر کاربر**: سقف حجم با نمایش و ویرایش یکسان بر پایهٔ ⁦GB⁩، انقضا، محدودیت دستگاه، بازنشانی حجم و دسترسی پروتکل هر کاربر
- 🛰️ **ناوگان چندنودی**: مدیریت چندین سرور از یک پنل؛ افزودن نود جدید فقط با اجرای یک دستور ساخته‌شده توسط پنل روی یک ⁦VPS⁩ تازه
- 🌐 **حالت تاب‌آوری**: یک سوییچ هر کانفیگ را روی سرور اصلی، همهٔ نودها و همهٔ پل‌های ایران پخش می‌کند، پس کلاینت کاربر ⁦url-test⁩ می‌کند و وقتی یک ⁦IP⁩ مسدود شد خودکار جابه‌جا می‌شود
- 🏷️ **دامنهٔ اختصاصی هر پل با گواهی ⁦SNI⁩**: به هر پل ایران دامنهٔ خودش را با گواهی معتبر بده (خودکار روی ⁦DNS⁩ کلادفلر، یا گواهی خودت را بچسبان)؛ خروج گواهی مناسب را بر اساس ⁦SNI⁩ سرو می‌کند و دامنه را خودکار به اشتراک‌ها اضافه می‌کند، پس کلاینت‌ها بدون ⁦allowInsecure⁩ و بدون اتصال کنترل تکراری مستقیم همان دامنه را می‌گیرند؛ فهرست پل‌های جایگزین فقط برای سرورهای جداگانهٔ ایران می‌ماند
- 🔒 **پنل پنهان**: در نصب تازه، پنل پشت یک مسیر مخفی تصادفی قرار می‌گیرد (به‌همراه پورت اختصاصی اختیاری) و بقیه مسیرها فقط یک ۴۰۴ ساده برمی‌گردانند تا اسکنرها چیزی نبینند
- 🛡️ **نگهبان ورود**: سپری به سبک ⁦fail2ban⁩ که پس از تلاش‌های ناموفق زیاد از یک آی‌پی، آن را مسدود می‌کند؛ به‌صورت پیش‌فرض روشن است و فهرست مسدودی‌های فعال را با رفع یک‌کلیکی نشان می‌دهد
- 🔔 **وب‌هوک‌ها**: یک ⁦POST⁩ امضاشده به آدرس خودتان وقتی کاربری ساخته می‌شود، منقضی می‌شود یا به سقف مصرف می‌رسد، وقتی نودی وصل می‌شود، یا وقتی یک آی‌پی مسدود می‌شود
- 📊 **ترافیک هر ورودی**: نمودار ترافیک روزانه برای هر ورودی در صفحهٔ ورودی‌ها، تا ببینید کدام نقاط ورود بار بیشتری دارند
- 🤖 **ربات تلگرام + Mini App**: اجرای کل پنل داخل تلگرام
- 🛡️ **خروج ضد فیلترینگ**: WARP (با لایسنس WARP+ خودتان)، Tor و Psiphon، به‌صورت داخلی
- 🚀 **تنظیم سرعت**: کنترل ازدحام ⁦TCP BBR⁩ به‌صورت پیش‌فرض روشن است و توان عبوری پروتکل‌های ⁦TCP⁩ (⁦VLESS/Reality⁩، ⁦Trojan⁩، ⁦VMess⁩) را روی مسیرهای پرتلفات و پرتأخیر ایران بالا می‌برد
- ⚙️ **خودکارسازی**: پشتیبان‌گیری، هشدارهای سلامت، به‌روزرسانی خودکار و تازه‌سازی آی‌پی تمیز
- 🧹 **بازنشانی کارخانه‌ای و نمایشگر لاگ**: با یک دکمه همه‌چیز را به نصب تازه برگردانید (ورود مدیر شما حفظ می‌شود)، و آخرین خطوط لاگ ⁦agent⁩، ⁦Xray⁩ یا ⁦sing-box⁩ را بدون ⁦SSH⁩ داخل پنل ببینید
- 🌍 **پنل سه‌زبانه**: انگلیسی، فارسی (راست‌به‌چپ) و روسی، همراه با راهنمای کامل داخل پنل

---

راه‌اندازی: نصب سریع

روی یک سرور تازه اوبونتو ۲۰.۰۴ به بالا یا دبیان ۱۱ به بالا (x86_64 یا arm64) این دستور را اجرا کنید:

```bash
bash <(curl -fsSL https://raw.githubusercontent.com/IRNova/Nova-Server/main/nova-node.sh)
```

نصب‌کننده اول چند سؤال کوتاه می‌پرسد:

- **دامنه**: اگر دامنه دارید، به‌صورت خودکار یک گواهی رایگان Let's Encrypt برایش گرفته می‌شود. اگر دامنه ندارید هم مشکلی نیست: نود روی آی‌پی خودش با یک گواهی self-signed کار می‌کند و اپلیکیشن Nova در هر دو حالت به آن وصل می‌شود.
- **مسیر مخفی پنل**: با زدن Enter یک مسیر تصادفی ساخته می‌شود، می‌توانید مسیر دلخواه خودتان را بنویسید، یا با `none` پنل را روی ریشه نگه دارید.
- **پورت اضافی پنل**: در صورت تمایل، یک پورت HTTPS جداگانه برای پنل (مثلاً `2053`). پورت در فایروال به‌صورت خودکار باز می‌شود.

سپس هسته‌های پروکسی، پنل و بک‌اند‌های تونل راه‌اندازی می‌شوند، همهٔ پروتکل‌های استاندارد در دسترس روشن می‌شوند و یک کاربر آغازین با نام ⁦`me`⁩ ساخته می‌شود. آدرس چاپ‌شدهٔ پنل را باز کنید و یک رمز مدیریت بگذارید.

از آنجا **دستیار راه‌اندازی خودش باز می‌شود** و بقیهٔ کار را انجام می‌دهد. پنج پرسش (این سرور برای چه کسی است، کاربران از کجا وصل می‌شوند، چطور به آن برسند، سرور دومی دارید یا نه، و چه کسانی از آن استفاده می‌کنند) و بعد کارها را انجام می‌دهد: اگر دامنه داده باشید گواهی را صادر می‌کند، پل ایران یا نود اضافه را راه می‌اندازد، پیکربندی را می‌نویسد، حساب‌ها را می‌سازد و در پایان برای هر نفر یک لینک اشتراک و کد ⁦QR⁩ می‌دهد. هر پرسش قابل رد کردن است و تا صفحهٔ بازبینی را تأیید نکنید چیزی روی سرور نوشته نمی‌شود.

یک نود تازه در **حالت ساده** شروع می‌کند: صفحه‌های روزمره روی صفحه می‌مانند و جزئیات داخلی موتور کنار گذاشته می‌شوند، چون دستیار آن‌ها را برایتان تنظیم می‌کند. یک کلید در **تنظیمات ← نمایش صفحه‌های پیشرفته** سازندهٔ قوانین مسیریابی، خروجی‌های سفارشی، تونل‌ها، گزینه‌های موتور ⁦Xray⁩، نمایندگان و توکن‌های ⁦API⁩ را برمی‌گرداند. این کلید هیچ تنظیمی را عوض نمی‌کند و فقط تعیین می‌کند چه صفحه‌هایی فهرست شوند، و نودی که پیش از این نسخه وجود داشته همهٔ صفحه‌هایش را نگه می‌دارد.

برای نصب اسکریپتی (بدون سؤال)، همه‌چیز را با متغیرهای محیطی تنظیم کنید: `NOVA_DOMAIN`، `NOVA_DOMAIN_EMAIL`، `NOVA_PANEL_PATH` (یا `none`)، `NOVA_PANEL_PORT`، `NOVA_ADMIN_PASS` و برای رد شدن از همه سؤال‌ها `NOVA_NO_PROMPT=1`.

رمز یا مسیر مخفی پنل را فراموش کرده‌اید؟ رمز را از روی سرور بازنشانی کنید؛ همین دستور آدرس فعلی پنل را هم نمایش می‌دهد:

```bash
nova-passwd 'YourNewPassword' --clear-2fa
```

پنل بعد از تغییر دامنه، Cloudflare یا SSL جواب نمی‌دهد؟ دسترسی را از روی سرور و بدون پنل بازیابی کنید. این دستور آدرس فعلی پنل را چاپ می‌کند و `--reset` نود را به حالت self-signed بدون دامنه برمی‌گرداند (همه‌چیز به آی‌پی سرور برمی‌گردد):

```bash
nova-access # نمایش آدرس فعلی پنل و حالت TLS
nova-access --reset # بازگشت به نود self-signed بدون دامنه
```

### 🔒 پنل پشت مسیر مخفی

پیش از این، پنل مستقیماً روی ریشه (`https://server/`) جواب می‌داد. حالا هر نصب تازه پنل را پشت یک زیرمسیر مخفی تصادفی مثل `https://server/p-a1b2c3/` قرار می‌دهد و هر مسیر دیگری فقط یک ۴۰۴ ساده برمی‌گرداند؛ در نتیجه اسکنرهایی که آی‌پی یا دامنه شما را می‌کاوند چیزی نمی‌بینند (همان ایده «web base path» در ⁦3x-ui⁩ و Marzban). هر وقت خواستید می‌توانید در **تنظیمات > عمومی > دسترسی پنل** مسیر را عوض کنید، آن را پاک کنید تا پنل به ریشه برگردد، یا یک پورت HTTPS جداگانه (مثلاً `2053`) به پنل بدهید؛ پورت فایروال به‌صورت خودکار باز می‌شود.

### 🌍 چند دامنه، زیردامنه، پل و نود

در پنل بخش **دامنه‌ها و آدرس‌ها** را باز کنید. کارت اول یک دامنهٔ اصلی پنل را مدیریت می‌کند. در کارت **دامنه‌های اضافه** می‌توانید تا ۲۰ دامنه یا زیردامنهٔ دیگر برای همان سرور ثبت کنید:

۱. دامنه را به این ⁦VPS⁩ اشاره دهید، یا ⁦Cloudflare⁩ را وصل کنید تا نوا رکورد ⁦DNS⁩ را بسازد.
۲. دریافت خودکار گواهی با ⁦Let's Encrypt⁩، دریافت خودکار با ⁦DNS⁩ کلادفلر، یا واردکردن گواهی موجود را انتخاب کنید.
۳. گزینهٔ **همهٔ پروتکل‌های سازگار** را انتخاب کنید، یا برای آدرس ابر نارنجی کلادفلر از **فقط ⁦WebSocket⁩ اصلی** استفاده کنید.
۴. نوا پیش از افزودن دامنه به اشتراک کاربران، گواهی و بارگذاری امن ⁦Xray⁩ را بررسی می‌کند. دامنهٔ در انتظار یا ناموفق هیچ‌وقت منتشر نمی‌شود.

دامنهٔ اضافهٔ سرور، آدرس پل ایران نیست. دامنهٔ پل باید به ⁦VPS⁩ ایران اشاره کند و در **تونل > دامنه‌های پل** قرار بگیرد. دامنهٔ نود مدیریت‌شده باید به ⁦VPS⁩ نود جدید اشاره کند و پیش از ساخت دستور تک‌خطی در صفحهٔ **نودها** وارد شود.

پروتکل‌های ⁦Xray⁩ می‌توانند گواهی هر دامنه را بر اساس ⁦SNI⁩ انتخاب کنند. ⁦Hysteria2⁩، ⁦TUIC⁩ و ⁦NaiveProxy⁩ از یک گواهی سرور در ⁦sing-box⁩ استفاده می‌کنند، پس نوا فقط وقتی این آدرس‌ها را برای آن پروتکل‌ها اضافه می‌کند که گواهی ⁦wildcard⁩ اصلی کلادفلر زیردامنه را پوشش دهد. در غیر این صورت آن پروتکل‌ها با امنیت کامل روی دامنهٔ اصلی می‌مانند.

---

## 🧭 تازه‌کارید؟ راهنمای گام‌به‌گام

تا حالا سرور راه نینداخته‌اید؟ این کل مسیر است، با گام‌های ساده. هر کلمهٔ فنی، اولین بار که می‌آید توضیح داده می‌شود.

۱. **یک ⁦VPS⁩ بگیرید.** ⁦VPS⁩ یک کامپیوتر کوچک است که روی اینترنت اجاره می‌کنید و همیشه روشن است، تا کاربران بتوانند شبانه‌روز به آن وصل شوند. هر ارائه‌دهنده‌ای کار می‌کند؛ یک ⁦Ubuntu 20.04+⁩ یا ⁦Debian 11+⁩ ساده (حدود ۴ تا ۶ دلار در ماه) کافی است. برای شروع به دامنه **نیاز ندارید**.

۲. **⁦Nova⁩ را نصب کنید (فقط یک راه را انتخاب کنید).**
- **یک دستور:** ترمینال سرورتان را باز کنید (اگر تا حالا از ⁦SSH⁩ استفاده نکرده‌اید، که فقط راهی برای تایپ‌کردن دستور روی سرور است، بیشتر ارائه‌دهنده‌ها یک دکمهٔ ⁦Console⁩ در مرورگر دارند)، دستور بخش «نصب سریع» را بچسبانید و ⁦Enter⁩ بزنید. چند سؤال ساده می‌پرسد؛ زدن ⁦Enter⁩ برای پذیرفتن پیش‌فرض‌ها کافی است.
- **بدون رایانه:** همان دستور را هنگام ساخت سرور در کادر ⁦cloud-init⁩ یا ⁦user data⁩ ارائه‌دهنده بچسبانید.
- **تلگرام:** ربات نصب‌کننده می‌تواند همه‌چیز را برایتان انجام دهد.

۳. **پنل را باز کنید و یک رمز بگذارید.** نصب‌کننده آدرس پنل شما را چاپ می‌کند، شامل یک مسیر مخفی (تا اسکنرها نتوانند پیدایش کنند)، پس آن لینک را ذخیره کنید. بازش کنید و یک رمز مدیریت بگذارید. لینک را گم کردید؟ روی سرور دستور ⁦nova-passwd⁩ را اجرا کنید تا آدرس فعلی را چاپ کند.

۴. **(اختیاری) یک دامنه و ⁦HTTPS⁩ رایگان اضافه کنید.** دامنه (یک نشانی وب مثل ⁦vpn.example.com⁩) و گواهی ⁦SSL⁩ (همان قفلی که اتصال را مطمئن می‌کند) اختیاری‌اند. بدون آن‌ها، نود شما روی ⁦IP⁩ کار می‌کند و اپ ⁦Nova⁩ باز هم وصل می‌شود. با یک دامنه، پنل به‌صورت خودکار یک گواهی رایگان می‌گیرد. می‌توانید این مرحله را رد کنید و بعداً اضافه کنید.

۵. **اسکن کنید و وصل شوید.** ⁦Nova⁩ از قبل کاربر آغازین ⁦`me`⁩ را با دسترسی به همهٔ پروتکل‌های در دسترس و ورودی‌های عمومی ساخته است. در داشبورد اصلی کارت «اتصال سریع» را پیدا کنید و کد ⁦QR⁩ اشتراک شخصی را با ⁦Nova⁩، ⁦Hiddify⁩، ⁦v2rayNG⁩، ⁦sing-box⁩ یا ⁦Clash⁩ اسکن کنید. همان لینک خودبه‌روزرسان را هم می‌توانید کپی کنید. وقتی محدودیت یا دسترسی جداگانه می‌خواهید، بعداً کاربران بیشتری بسازید.

۶. **هر وقت لازم شد، جلوتر بروید.** کاربران بیشتری اضافه کنید و محدودیت حجم یا زمان بگذارید، در صفحهٔ ورودی‌ها نقاط ورود بیشتری اضافه کنید، زیر فیلترینگ سنگین با پل ایران یا تونل ⁦DNS⁩ آنلاین بمانید، و از یک پنل به چند سرور (نود) گسترش دهید.

خودِ پنل یک راهنمای **راه‌اندازی گام‌به‌گام** مفصل‌تر هم به‌صورت داخلی دارد (بالای راهنمای داخل پنل)، به انگلیسی، فارسی و روسی.

---

## 🐳 نصب با Docker

کانتینر را ترجیح می‌دهید؟ ⁦Nova⁩ یک گزینه ⁦Docker⁩ هم دارد که جایگزینی برای نصب‌کننده بومی تک‌خطی است. تکرارپذیر است، توقف و جابه‌جایی و ارتقایش آسان است و داده‌های شما روی والیوم‌های نام‌دار می‌ماند و پس از بازسازی هم باقی می‌ماند. نصب‌کننده و بستهٔ عامل با ⁦checksum⁩ پین‌شده داخل ایمیج قرار دارند و کانتینر بازسازی‌شده محیط اجرا را بدون از دست رفتن پایگاه داده یا گواهی‌های پایدار برمی‌گرداند.

این دستور را روی یک VPS واقعی لینوکس با کاربر root اجرا کنید. اگر Docker نصب نباشد آن را نصب می‌کند، ایمیج را می‌سازد و نود را بالا می‌آورد:

```bash
bash <(curl -fsSL https://raw.githubusercontent.com/IRNova/Nova-Server/main/docker/nova-docker.sh)
```

همان گزینه‌های نصب‌کننده بومی را دارید که با متغیرهای محیطی داده می‌شوند: `NOVA_ADMIN_PASS`، `NOVA_DOMAIN`، `NOVA_PANEL_PATH` و `NOVA_PANEL_PORT`.

بعد از بالا آمدن، رمز ساخته‌شده و آدرس پنل را با این دستور پیدا کنید:

```bash
cd /opt/nova-docker/docker && docker compose logs -f nova-node
```

**مهم:** این روش به یک هاست واقعی لینوکس با شبکه هاست (⁦host networking⁩) نیاز دارد. روی ⁦Docker Desktop⁩ مک یا ویندوز کار **نمی‌کند**، چون آن‌ها نمی‌توانند پورت `443` هاست را آن‌طور که یک نود لازم دارد بگیرند. کانتینر داخل خودش systemd را اجرا می‌کند و از شبکه هاست به‌همراه حالت privileged استفاده می‌کند، چون یک نود Nova یک دستگاه VPN است: پورت `443` (روی TCP و UDP)، و در صورت نیاز `53/udp` و یک پورت UDP برای WireGuard را می‌گیرد و سرویس‌های systemd را مدیریت می‌کند. جزئیات کامل در `docker/README.md` هست.

---

ناوگان چندنودی: افزودن نود با یک دستور

دیگر لازم نیست روی هر سرور یک پنل کامل نصب کنید. پنل را یک بار روی سرور اصلی نصب کنید و ناوگان را از همان‌جا گسترش دهید:

1. در پنل اصلی، صفحه **نودها** را باز کنید و روی **افزودن نود با یک دستور** بزنید. در صورت تمایل دامنه‌ای را که از قبل به ⁦VPS⁩ جدید اشاره می‌کند وارد کنید؛ نوا هنگام اتصال، گواهی ⁦Let's Encrypt⁩ آن را می‌گیرد و تمدید می‌کند.
2. تک‌خطی را که به شما می‌دهد روی یک VPS تازه اجرا کنید:

```bash
NOVA_JOIN_URL='https://your-panel' NOVA_JOIN_TOKEN='njt_...' bash <(curl -fsSL https://raw.githubusercontent.com/IRNova/Nova-Server/main/nova-node.sh)
```

سرور جدید در حالت **نود مدیریت‌شده** نصب می‌شود: پنل مستقلی ندارد (فقط یک صفحه ساده، بدون امکان ورود)، خودش را به‌صورت خودکار به پنل اصلی معرفی می‌کند و از آن به بعد همه‌چیز (کاربران، ترافیک، همه‌چیز) از داخل پنل اصلی و از طریق API نود کنترل می‌شود. توکن اتصال یک‌بارمصرف است و بعد از ۲۴ ساعت منقضی می‌شود. این کار چه نود دامنه داشته باشد و چه روی یک ⁦IP⁩ ساده با گواهی خودامضا اجرا شود، کار می‌کند. هنگام ثبت‌نام، نود توکن دسترسی‌اش را روی یک اتصال ⁦TLS⁩ تأییدشده به پنل می‌فرستد و اگر خودِ پنل گواهی خودامضا داشته باشد، نود کلید پنل را هم پین می‌کند، پس توکن در مسیر قابل‌شنود نیست. (اگر گواهی پنل را عوض یا نو کردید، یک دستور «افزودن نود» تازه بسازید.)

**اگر ثبت‌نام کامل نشود**، چیزی از دست نمی‌رود. اگر پنل اصلی نتواند به نود جدید برسد (معمولاً چون پورت ۴۴۳ روی آن هنوز به‌روی اینترنت باز نیست)، نود در صفحهٔ **نودها** با وضعیت **در انتظار** و همراه دلیلش نمایش داده می‌شود و آن تلاش در گزارش فعالیت ثبت می‌شود. پورت ۴۴۳ را روی آن سرور باز کنید و «تست» را بزنید، یا دستی اضافه‌اش کنید. اگر یک نود در ثبت‌نام ناموفق بماند، **قفل نمی‌شود**: به‌صورت یک پنل مستقل عادی باقی می‌ماند تا بتوانید دوباره تلاش کنید یا مدیریتش کنید، و هرگز بلااستفاده رها نمی‌شود.

**کاربران و پروتکل‌ها مرکزی‌اند و روی نودها قرار می‌گیرند.** شما هیچ‌وقت مستقیم یک نود را مدیریت نمی‌کنید. کاربرها را در صفحهٔ **کاربران** و پروتکل‌ها را در صفحهٔ **ورودی‌ها** مثل همیشه بسازید، و هنگام افزودن یک پروتکل با «اجرا روی» انتخاب کنید: این سرور اصلی، یک نود، یا **همهٔ نودها**. پنل آن پروتکل و کاربران اختصاص‌یافته‌اش را به نود(های) انتخاب‌شده می‌فرستد و کانفیگ اشتراک هر کاربر از **آی‌پی همان نود** استفاده می‌کند تا از طریق آن وصل شود. در صفحهٔ **کاربران** انتخاب می‌کنید هر کاربر کدام نودها را بگیرد: زیر **نودهای این کاربر** نودهای مشخصی را تیک بزنید، یا گزینهٔ **دسترسی به همهٔ نودها** را روشن کنید تا همهٔ نودها در اشتراکش بیایند (یک کانفیگ برای هر لوکیشن). خودِ نود فقط ⁦xray⁩ را با کانفیگی که پنل می‌فرستد اجرا می‌کند و کاربر یا ورودیِ مخصوص خودش برای مدیریت ندارد.

**حذف یا بازیابی یک نود.** در صفحهٔ **نودها** روی **حذف** بزنید تا نود از ناوگان خارج شود. گزینهٔ «**حذف کامل نوا از آن سرور**» را هم بزنید تا نود خودش را به‌طور کامل پاک کند (⁦xray⁩، پنل و همهٔ داده‌ها). برای تبدیل یک نود مدیریت‌شده به پنل مستقل عادی (مثلاً وقتی پنل اصلی‌اش از دست رفته)، روی آن سرور دستور ⁦`nova-unlock 'NewPassword'`⁩ را از طریق ⁦SSH⁩ اجرا کنید. دستور ⁦`nova-uninstall`⁩ هم در هر زمان نوا را از هر سروری حذف می‌کند.

---

## 🛡️ نگهبان ورود و وب‌هوک‌ها

دو ابزار برای اپراتور در **تنظیمات > امنیت** قرار دارد.

**نگهبان ورود** سپری به سبک ⁦fail2ban⁩ برای ورود به پنل است. پس از تعداد زیادی تلاش ناموفق از یک آی‌پی در یک بازه، آن آی‌پی برای مدتی مسدود می‌شود تا حدس‌زدن رمز به جایی نرسد. به‌صورت پیش‌فرض روشن است؛ می‌توانید تعداد تلاش، بازه و مدت مسدودی را تنظیم کنید، و همان صفحه هر مسدودی فعال را با **رفع مسدودی** یک‌کلیکی (و **پاک‌کردن همه**) نشان می‌دهد.

**وب‌هوک‌ها** یک ⁦POST⁩ کوچک ⁦JSON⁩ امضاشده را به آدرس خودتان می‌فرستند وقتی روی نود اتفاقی می‌افتد: کاربری ساخته، ویرایش یا حذف می‌شود، منقضی می‌شود یا به سقف مصرف می‌رسد؛ نودی ثبت می‌شود؛ یا یک آی‌پی مسدود می‌شود. هر تعداد آدرس که خواستید اضافه کنید، برای هرکدام رویدادهای دلخواه را انتخاب کنید (یا روی همه بگذارید) و یک راز اختیاری بگذارید. وقتی رازی تنظیم شود، ⁦Nova⁩ بدنه را با ⁦HMAC-SHA256⁩ امضا می‌کند و آن را در هدر ⁦X-Nova-Signature: sha256=...⁩ می‌فرستد، تا گیرنده مطمئن شود فراخوان واقعاً از نود شما آمده است. دکمهٔ **آزمایش** یک نمونه ارسال می‌کند تا از درستی اتصال مطمئن شوید. ساختار داده ⁦{ event, timestamp, node, data }⁩ است.

---

## 🕳️ تونل DNS (آخرین راه)

Nova یک تونل DNS داخلی و اختیاری دارد که ترافیک را داخل کوئری‌های DNS جابه‌جا می‌کند. چون روی DNS سوار می‌شود، وقتی همه‌چیز مسدود است ولی DNS هنوز جواب می‌دهد باز هم کار می‌کند؛ پس آخرین راه انتقال است، برای وقتی که هیچ روش دیگری رد نمی‌شود.

موتور تونل را در همان کارت انتخاب می‌کنید:

- ⁦MasterDnsVPN⁩ گزینهٔ پیش‌فرض و ساده است.
- ⁦CottenDns⁩ موتور تواناتر است و برای شبکه‌های بسیار پرافت یا به‌شدت پایش‌شده ساخته شده: ترابری resolver از نوع ⁦DNS-over-TLS⁩ و ⁦DNS-over-HTTPS⁩، توزیع بار روی چند resolver و بازیابی از افت بسته را اضافه می‌کند. هیچ‌وقت پورت ۴۴۳ را نمی‌گیرد، پس در کنار پنل کار می‌کند.

هر دو روی پورت ۵۳ گوش می‌دهند، پس هر بار فقط یکی اجرا می‌شود؛ با تعویض موتور، پورت از دیگری گرفته می‌شود. آن را در پنل از بخش **تنظیمات** روشن کنید. به یک زیردامنه نیاز دارد که با یک رکورد `NS` به نود شما واگذار شده باشد. اگر دامنه‌تان روی Cloudflare است، پنل می‌تواند این واگذاری را به‌صورت خودکار برایتان بسازد؛ در غیر این صورت راهنمای داخل پنل، رکوردهای دستی `A` و `NS` را قدم‌به‌قدم نشانتان می‌دهد.

این یک پروتکل جداست: کاربران با کلاینت خودِ موتور وصل می‌شوند ([⁦MasterDnsVPN⁩](https://github.com/masterking32/MasterDnsVPN) یا [⁦CottenDns⁩](https://github.com/TaJirax/CottenDns))، نه با اپلیکیشن Nova. پنل، کانفیگ کلاینت را می‌سازد و خروجی می‌گیرد.

---

همه‌چیز در یک نگاه: امکانات

| بخش | چه چیزی دریافت می‌کنید |
|------|--------------|
| **پروتکل‌ها** | VLESS، VMess، Trojan، Shadowsocks-2022، VLESS-Reality (XTLS-Vision)، Hysteria2، TUIC v5، NaiveProxy، WireGuard بومی، AmneziaWG |
| **ترنسپورت‌ها** | TCP، WebSocket، gRPC، XHTTP، HTTPUpgrade، mKCP، روی TLS یا Reality |
| **کاربران** | سقف حجم (کل یا جدا)، انقضا (ثابت یا از اولین اتصال)، محدودیت دستگاه، بازنشانی روزانه/هفتگی/ماهانه، دسترسی پروتکل و ورودی هر کاربر؛ پلن‌های ذخیره‌شده (مجموعه محدودیت قابل‌استفاده مجدد که روی یک یا چند کاربر اعمال می‌شود، مثلاً ۳۰ روز / ۵۰ گیگ / ۳ دستگاه)، عملیات گروهی (فعال‌سازی، غیرفعال‌سازی، تمدید، بازنشانی، اعمال پلن یا حذف روی چند کاربر انتخاب‌شده) و ورود/خروج CSV کاربران (به‌روزرسانی خودکار بر اساس نام) |
| **اشتراک‌ها** | یک لینک خودبه‌روزرسان برای هر کاربر، کد QR اتصال سریع در داشبورد، صفحه مصرف زنده و فرمت‌های Clash/Mihomo و sing-box |
| **مسیریابی** | قوانین نقطه‌ای geosite/geoip/CIDR/دامنه/پروتکل، دسترسی مستقیم ایران و بایپس داخلی، مسدودسازی تبلیغات/تورنت/QUIC، DNS امن و ضد تحریم |
| **خروج** | مستقیم، مسدود، WARP (با لایسنس WARP+)، Tor، Psiphon، خروجی‌های سفارشی SOCKS/HTTP و اختصاص خروجی به هر ورودی |
| **تونل‌های ایران** | پل به خروج با Backhaul، BackPack، rathole یا wstunnel؛ انتقال TCP و UDP تا Hysteria2 کار کند؛ هدایت یک‌کلیکیِ همهٔ لینک‌ها به پل روی همهٔ فرمت‌ها (خام، ⁦Clash⁩ و ⁦sing-box⁩)؛ فقط پورت‌های فوروارد‌شده از پل عبور می‌کنند (پیشنهادی: فقط ⁦443⁩، تا بقیهٔ ورودی‌ها مستقیم و سریع بمانند و لینکِ از راه پل جایگزین باشد) |
| **تونل DNS** | تونل DNS داخلی و اختیاری که ترافیک را داخل کوئری‌های DNS تونل می‌کند، آخرین راه انتقال برای وقتی که فقط DNS جواب می‌دهد، با انتخاب موتور: ⁦MasterDnsVPN⁩ (پیش‌فرض ساده) یا ⁦CottenDns⁩ (resolverهای ⁦DoT/DoH⁩، توزیع بار روی چند resolver، بازیابی از افت، برای شبکه‌های بسیار خصمانه)؛ واگذاری خودکار `NS` روی Cloudflare یا راه‌اندازی دستی با راهنما، همراه با خروجی‌گرفتن کانفیگ کلاینت از پنل |
| **دامنه‌ها و SSL** | یک دامنهٔ اصلی پنل، تا ۲۰ دامنهٔ اضافه برای همان سرور، دامنه‌های جداگانهٔ پل ایران و دامنهٔ اختیاری نود مدیریت‌شده؛ ⁦Let's Encrypt⁩ یک‌کلیکی، ⁦DNS⁩ خودکار ⁦Cloudflare⁩ با توکن کاربر یا توکن متعلق به حساب، یا گواهی واردشده؛ اعتبارسنجی پیش از انتشار، تمدید خودکار و محدودسازی امن آدرس ابر نارنجی به ⁦WebSocket⁩ |
| **دسترسی پنل** | مسیر مخفی تصادفی برای پنل با ۴۰۴ ساده برای بقیه مسیرها، به‌همراه پورت HTTPS اختصاصی اختیاری؛ هر دو قابل تغییر در تنظیمات > عمومی؛ دستور `nova-passwd` آدرس فعلی پنل را نمایش می‌دهد |
| **ناوگان** | ثبت و مدیریت چندین نود Nova از یک پنل، تجمیع کاربران و مصرف، تخصیص از راه دور؛ اتصال یک VPS تازه به‌عنوان نود مدیریت‌شده با یک دستور ساخته‌شده توسط پنل (توکن یک‌بارمصرف، بدون پنل محلی) |
| **API و ربات** | REST API با احراز توکن (`/api/v1`) و یک ربات کامل تلگرام با Mini App که کل پنل را در تلگرام باز می‌کند |
| **پایش** | نمودارهای ترافیک داشبورد، به‌همراه نمودار ترافیک روزانه برای هر ورودی در صفحهٔ ورودی‌ها تا ببینید کدام نقاط ورود بار را حمل می‌کنند |
| **وب‌هوک‌ها** | وب‌هوک خروجی به آدرس خودتان روی رویدادهای ساخت/ویرایش/حذف کاربر، انقضا، سقف مصرف، ثبت نود و مسدودی ورود؛ هر فراخوان به‌صورت اختیاری با ⁦HMAC⁩ امضا می‌شود (⁦X-Nova-Signature⁩) تا گیرنده صحت آن را تأیید کند |
| **نگهبان ورود** | مسدودسازی هر آی‌پی به سبک ⁦fail2ban⁩ پس از تلاش‌های ناموفق پیاپی (آستانه و مدت مسدودی قابل تنظیم)، فهرست زندهٔ مسدودی‌های فعال و رفع یک‌کلیکی؛ به‌صورت پیش‌فرض روشن |
| **امنیت** | چند مدیر با نقش مالک و نماینده، احراز دومرحله‌ای (Google Authenticator)، بازنشانی رمز از سمت سرور |
| **خودکارسازی** | پشتیبان‌گیری شبانه (دیسک و تلگرام)، هشدارهای پیشگیرانه، به‌روزرسانی خودکار، تازه‌سازی آی‌پی تمیز، بررسی سلامت، بازنشانی کارخانه‌ای (بازگشت به نصب تازه با حفظ ورود مدیر)، نمایشگر لاگ داخل پنل (بدون ⁦SSH⁩) |
| **گرفتن کمک** | بستهٔ پشتیبانی با یک کلیک: نسخه‌ها، سرویس‌ها، پورت‌ها، پروتکل‌ها، بررسی‌های ناموفق و لاگ‌های اخیر در یک فایل، که پیش از آن نشانی شما، کاربران، کلیدها و رمزها با نشانه‌های پایدار جایگزین شده‌اند. کل فایل پیش از هر اقدامی در پنل نشان داده می‌شود. می‌توانید کپی یا دانلودش کنید و خودتان بفرستید، یا از مرورگرتان به پشتیبانی ⁦Nova⁩ بفرستید و یک کد کوتاه بگیرید. خودِ نود هیچ‌چیز آپلود نمی‌کند و اصلاً اعتبارنامه‌ای هم برای این کار ندارد |
| **پنل** | انگلیسی، فارسی (راست‌به‌چپ)، روسی؛ حالت ساده با یک کلید برای رفتن به پنل کامل، دستیار راه‌اندازی پنج‌پرسشی که کار را تا انتها انجام می‌دهد، جستجوی سراسری، راهنمای هر بخش و راهنمای کامل داخل پنل؛ تم روشن و تیره |

---

زیرساخت: معماری

کلاینت‌ها از طریق یک پورت 443 (TCP و UDP) به یک نود Nova وصل می‌شوند. داخل نود، یک ایجنت خودمیزبان چهار مسیر را اجرا می‌کند: Xray-core، sing-box، AmneziaWG و ایجنت Nova.

ایجنت یک پروسه Node.js با یک ذخیره‌ساز محلی SQLite است. پنل، REST API و ربات تلگرام همگی از توابع سرویس داخلی یکسانی استفاده می‌کنند.

---

## 📋 پیش‌نیازها

- یک VPS با **اوبونتو ۲۰.۰۴ به بالا** یا **دبیان ۱۱ به بالا** (x86_64 یا arm64)
- دسترسی **root**
- **دامنه** اختیاری است (فقط برای گواهی معتبر و Mini App تلگرام لازم می‌شود)

---

## 🔄 به‌روزرسانی

پنل نسخه‌های جدید را بررسی می‌کند و با یک کلیک به‌روز می‌شود، یا **به‌روزرسانی خودکار** را روشن کنید. کاربران، ورودی‌ها و تنظیمات حفظ می‌شوند.

---

ساخته‌شده با دقت برای اینترنتی آزاد.

**Nova Server. تمام حقوق محفوظ است.**