Files
Den Piligrim 26f3bb2934 v2.2.0
2026-05-21 22:58:29 +03:00

13 KiB

Русский | English | 中文 | Türkmençe

3dp-manager preview

Version Downloads License Telegram YouTube Channel Subscribers

3DP-MANAGER

ابزاری برای تولید خودکار inbound برای پنل 3x-ui، ساخت اشتراک‌های یکپارچه، مدیریت چندین نود 3x-ui و پیکربندی relay forwarding از سرورهای واسط به سرورهای اصلی. از نسخه 2.0.0 به بعد، پروژه دارای رابط گرافیکی و تنظیمات ساده کاربری است.

حمایت از پروژه

  • انتقال بانکی:
    • 💳 کارت MIR: 2204320436318077
    • 💳 کارت MasterCard: 5395452209474530
  • کیف پول الکترونیکی:
    • 💰 YooMoney: 4100116897060652
    • 💰 PayPal: vasiljevdenisx@gmail.com
  • رمزارز:
    • 🪙 USDT | ETH (ERC20 | BEP20): 0x6fe140040f6Cdc1E1Ff2136cd1d60C0165809463
    • 🪙 USDT | TRX (TRC20): TEWxXmJxvkAmhshp7E61XJGHB3VyM9hNAb
    • 🪙 Bitcoin: bc1qctntwncsv2yn02x2vgnkrqm00c4h04c0afkgpl
    • 🪙 TON: UQCZ3MiwyYHXftPItMMzJRYRiKHugr16jFMq2nfOQOOoemLy
    • 🪙 Bybit ID: 165292278

توضیحات

هدف اصلی ابزار این است که ترافیک شما یکسان به نظر نرسد. 3DP-MANAGER در بازه زمانی تعیین‌شده، مجموعه‌ای از اتصال‌ها با پارامترهای متفاوت تولید می‌کند:

  • پروتکل‌ها: vless, vmess, shadowsocks, hysteria2, trojan;
  • پورت‌ها: 443 و 8443 به‌صورت ثابت، و پورت‌های تصادفی از بازه 10000-60000;
  • transport: tcp, websocket, grpc, xhttp;
  • SNI از whitelist دامنه‌ها انتخاب می‌شود یا به‌صورت دستی تنظیم می‌گردد؛
  • نود، relay server، پورت و پرچم را می‌توان برای هر inbound جداگانه تنظیم کرد.

همه اتصال‌ها در یک اشتراک با URL ثابت ترکیب می‌شوند. 3DP-MANAGER با پنل 3x-ui از طریق API عمومی آن کار می‌کند و مستقیماً در بخش داخلی پنل دخالت نمی‌کند.

هدف دوم پایداری اتصال است: کلاینت چند گزینه اتصال دریافت می‌کند و می‌تواند هرکدام را انتخاب کند. در یک اشتراک می‌توان inboundهای مربوط به نودهای مختلف، relay serverها و لینک‌های خارجی آماده را به‌عنوان اتصال custom قرار داد.

همچنین 3DP-MANAGER را می‌توان در سناریوی زنجیره‌ای استفاده کرد. سرویس forwarding، هدایت اشتراک و ترافیک را به نود انتخاب‌شده پیکربندی می‌کند.

توصیه‌ها:

  • برای اشتراک از HTTPS استفاده کنید (دامنه + گواهی SSL).
  • فاصله تولید را حداقل 10 دقیقه تنظیم کنید؛ برای پایداری، یک‌بار در روز (1440 دقیقه) توصیه می‌شود.
  • در کلاینت، به‌روزرسانی خودکار را دفعات بیشتری تنظیم کنید، مثلاً هر ساعت، تا با سرور همگام بماند.

قابلیت‌ها

  • تولید اتصال‌های متنوع برای یک یا چند اشتراک
  • ساخت اشتراک یکپارچه با URL ثابت
  • مدیریت چندین نود 3x-ui
  • پشتیبانی از احراز هویت نود با login/password یا token
  • تشخیص خودکار IP، کشور و پرچم نود از URL پنل
  • انتخاب نود، relay server، پرچم، SNI و پورت برای هر inbound
  • پشتیبانی از پورت ثابت یا مقدار random
  • پشتیبانی از اتصال‌های custom: افزودن لینک خارجی آماده به اشتراک
  • امکان تعیین مسیرهای جداگانه fullchain.pem و privkey.pem برای Hysteria2 UDP
  • پشتیبانی از whitelist دامنه سفارشی
  • تنظیم خودکار relay forwarding به‌صورت اختیاری
  • نصب Web UI از طریق HTTP یا HTTPS: Let's Encrypt، self-signed یا گواهی‌های خودتان

نیازمندی‌ها

  • Ubuntu 20.04 یا جدیدتر، Debian 12.11 یا جدیدتر
  • پنل 3x-ui نسخه v2.8.4 یا جدیدتر
  • دسترسی root روی سرور
  • Docker و Docker Compose؛ اگر نصب نباشند، اسکریپت نصب تلاش می‌کند آن‌ها را خودکار نصب کند
  • دامنه + گواهی SSL (اختیاری)

نصب

پنل مدیریتی 3x-ui باید از قبل نصب شده باشد. می‌توانید آن را با این دستور نصب کنید: bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

پروژه را روی سرور نصب کنید:

bash <(curl -fsSL https://raw.githubusercontent.com/denpiligrim/3dp-manager/main/install.sh)

در زمان نصب، اسکریپت:

  • سیستم‌عامل، دسترسی root، Docker و Docker Compose را بررسی می‌کند؛
  • اگر RAM کم باشد و swap وجود نداشته باشد، یک فایل swap با حجم 2 GB می‌سازد؛
  • حالت دسترسی Web UI را می‌پرسد:
    • HTTPS با Let's Encrypt؛
    • HTTPS با گواهی self-signed؛
    • HTTPS با گواهی‌های خودتان؛
    • HTTP بدون رمزنگاری؛
  • یک پورت تصادفی برای Web UI ایجاد می‌کند؛
  • login و password مدیر را ایجاد می‌کند؛
  • کانتینرهای postgres, backend و frontend را اجرا می‌کند.

پس از پایان نصب، URL، login و password در ترمینال نمایش داده می‌شود. بلافاصله password را در تنظیمات 3DP-MANAGER تغییر دهید.

توضیح کوتاه: اسکریپت نصب تعاملی را اجرا می‌کند، محیط را آماده می‌سازد و کانتینرهای پروژه را راه‌اندازی می‌کند.

به‌روزرسانی

به‌روزرسانی به آخرین نسخه:

bash <(curl -fsSL https://raw.githubusercontent.com/denpiligrim/3dp-manager/main/update.sh)

توضیح کوتاه: آخرین تغییرات را دریافت می‌کند، اصلاحات سازگار پیکربندی را اعمال می‌کند، کانتینرها را به‌روزرسانی کرده و سرویس را راه‌اندازی مجدد می‌کند.

حذف

حذف کامل سرویس:

bash <(curl -fsSL https://raw.githubusercontent.com/denpiligrim/3dp-manager/main/delete.sh)

توضیح کوتاه: کانتینرها و فایل‌های پیکربندی را حذف می‌کند و سیستم را به وضعیت پیش از نصب بازمی‌گرداند.


اولین ورود

login و password مدیر در پایان نصب نمایش داده می‌شود. برای مشاهده دوباره:

grep -E "ADMIN_LOGIN|ADMIN_PASSWORD" /opt/3dp-manager/docker-compose.yml | sed 's/^[ \t]*//; s/^- //'

Web UI در آدرسی که نصب‌کننده نمایش داده قابل دسترسی است، برای مثال:

  • https://example.com:PORT برای HTTPS؛
  • http://SERVER_IP:PORT برای HTTP.

اگر ufw فعال باشد، نصب‌کننده بازه‌های پورت کاری inbound را برای TCP/UDP باز می‌کند: 443, 8443 و 10000-60000.


نودها

بخش نودها امکان اتصال یک یا چند پنل 3x-ui را فراهم می‌کند.

برای هر نود مشخص می‌شود:

  • نام؛
  • URL پنل 3x-ui؛
  • IP نود؛
  • پرچم/کشور؛
  • نوع احراز هویت: password یا token؛
  • اینکه نود اصلی است یا خیر.

پس از وارد کردن URL، برنامه تلاش می‌کند IP و کشور نود را خودکار تشخیص دهد. پرچم در نام اتصال‌ها داخل اشتراک استفاده می‌شود تا تشخیص سرورها در کلاینت ساده‌تر باشد.

Note

نود اصلی به‌عنوان مقدار پیش‌فرض برای اشتراک‌ها، inboundها و relay serverها استفاده می‌شود.


اشتراک‌ها

بخش اشتراک‌ها URLهای ثابت اشتراک و ترکیب inboundها را مدیریت می‌کند.

برای هر inbound می‌توانید تنظیم کنید:

  • نوع اتصال؛
  • نود؛
  • relay server؛
  • پرچم؛
  • پورت: عدد مشخص از 1-65535 یا random؛
  • SNI: دامنه مشخص یا random؛
  • لینک خارجی آماده برای نوع custom.

برای hysteria2-udp می‌توانید مسیرهای جداگانه گواهی و کلید را مشخص کنید:

  • certificateFile، برای مثال /root/cert/example.com/fullchain.pem;
  • keyFile، برای مثال /root/cert/example.com/privkey.pem.

اگر پورت یا SNI برابر random باشد، مقدار هنگام روتیشن از بازه موجود یا whitelist دامنه‌ها انتخاب می‌شود.


نصب سرویس forwarding

Warning

سرویس forwarding روی سرور واسط اجرا می‌شود

سرویس forwarding پورت‌های ورودی سرور واسط را به نود انتخاب‌شده proxy می‌کند. در Web UI این سرورها در بخش Relay serverها تنظیم می‌شوند و می‌توانند به یک نود مشخص متصل شوند.

Relay server را می‌توان با IP یا دامنه اضافه کرد. اگر دامنه وارد شود، backend تلاش می‌کند IP آن را خودکار resolve کند.

برای نصب دستی forwarding روی سرور واسط، IP_ADDRESS را با IP نود اصلی جایگزین کنید:

sudo ORIGIN_IP="IP_ADDRESS" bash -c "$(curl -sSL https://raw.githubusercontent.com/denpiligrim/3dp-manager/main/forwarding_install.sh)"

توضیح کوتاه: قوانین forwarding را اضافه می‌کند.

حذف forwarding

bash <(curl -fsSL https://raw.githubusercontent.com/denpiligrim/3dp-manager/main/forwarding_delete.sh)

توضیح کوتاه: قوانین forwarding را حذف می‌کند. پس از حذف، برای اعمال تغییرات firewall را با ufw reload بارگذاری مجدد کنید و سیستم را با reboot ری‌استارت کنید.


جمع‌آوری دامنه‌ها از چند اشتراک

این ابزار دامنه‌ها را از اشتراک‌ها استخراج می‌کند و برای generator یک whitelist می‌سازد.

node get_domains.js

توضیح کوتاه: لینک چند اشتراک را در اسکریپت اضافه کنید و دستور را اجرا کنید. خروجی، فهرست دامنه‌ها خواهد بود. برای اجرای اسکریپت به Node.js نیاز است.


نکات و محدودیت‌های فعلی

  • فهرست عمومی دامنه‌ها با همه ارائه‌دهندگان کار نمی‌کند، بنابراین توصیه می‌شود whitelist خودتان را بسازید و استفاده کنید.

مشارکت

از هرگونه مشارکت در توسعه پروژه استقبال می‌شود! روند ساده برای مشارکت‌کنندگان:

  1. مخزن را در GitHub fork کنید.
  2. شاخه‌ای با نام معنادار بسازید، مثل feature/add-README یا fix/whitelist-load.
  3. تغییرات را اعمال کنید و توضیح کوتاهی در commit بنویسید.
  4. در صورت وجود، بررسی‌های محلی را اجرا کنید.
  5. شاخه را به fork خود push کنید و در مخزن اصلی Pull Request بسازید.

نکته: تغییرات، هدف و مراحل تست را در PR توضیح دهید. اگر تغییرات بزرگ هستند، آن‌ها را به commitهای کوچک تقسیم کنید.


گفتگو