1
0

README.fa_IR.md 12 KB

English | فارسی | العربية | 中文 | Español | Русский

3x-ui

Release Build GO Version Downloads License Go Reference Go Report Card

3X-UI یک پنل کنترل وب پیشرفته و متن‌باز برای مدیریت سرورهای Xray-core است. این پنل یک رابط کاربری تمیز و چندزبانه برای استقرار، پیکربندی و نظارت بر طیف گسترده‌ای از پروتکل‌های پراکسی و VPN ارائه می‌دهد — از یک VPS تکی تا استقرارهای چندنودی.

‏3X-UI که به‌عنوان یک فورک بهبودیافته از پروژه‌ی اصلی X-UI ساخته شده است، پشتیبانی گسترده‌تر از پروتکل‌ها، پایداری بهتر، حسابداری ترافیک به‌ازای هر کلاینت و بسیاری از ویژگی‌های رفاهی را اضافه می‌کند.

[!IMPORTANT] این پروژه فقط برای استفاده‌ی شخصی در نظر گرفته شده است. لطفاً از آن برای اهداف غیرقانونی یا در محیط تولید (production) استفاده نکنید.

ویژگی‌ها

  • اینباندهای چندپروتکلی — VLESS، VMess، Trojan، Shadowsocks، WireGuard، Hysteria2، HTTP، SOCKS (Mixed)، Dokodemo-door / Tunnel و TUN.
  • ترنسپورت‌ها و امنیت مدرن — TCP (Raw)، mKCP، WebSocket، gRPC، HTTPUpgrade و XHTTP، ایمن‌شده با TLS، XTLS و REALITY.
  • فال‌بک (Fallback) — ارائه‌ی چند پروتکل روی یک پورت واحد (مثلاً VLESS و Trojan روی پورت 443) با استفاده از قابلیت fallback در Xray.
  • مدیریت به‌ازای هر کلاینت — سهمیه‌ی ترافیک، تاریخ انقضا، محدودیت IP، وضعیت آنلاینِ زنده و لینک‌های اشتراک‌گذاری، کدهای QR و سابسکریپشن‌ها با یک کلیک.
  • آمار ترافیک — به‌ازای هر اینباند، هر کلاینت و هر اوتباند، همراه با کنترل بازنشانی (reset).
  • پشتیبانی از چند نود — مدیریت و مقیاس‌دهی روی چندین سرور از یک پنل واحد.
  • اوتباند و مسیریابی — WARP، NordVPN، قوانین مسیریابی سفارشی، متعادل‌کننده‌های بار (load balancer) و زنجیره‌کردن پراکسی اوتباند.
  • سرور سابسکریپشن داخلی با چندین فرمت خروجی.
  • ربات تلگرام برای نظارت و مدیریت از راه دور.
  • ‏RESTful API همراه با مستندات Swagger درون‌پنل.
  • ذخیره‌سازی منعطف — SQLite (پیش‌فرض) یا PostgreSQL.
  • ‏۱۳ زبان رابط کاربری با تم‌های تیره و روشن.
  • یکپارچگی با Fail2ban برای اعمال محدودیت IP به‌ازای هر کلاینت.

اسکرین‌شات‌ها

برای باز شدن کلیک کنید Overview Inbounds Add client Configs

شروع سریع

bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

در حین نصب، یک نام کاربری، رمز عبور و مسیر دسترسی تصادفی تولید می‌شود. پس از نصب، دستور x-ui را اجرا کنید تا منوی مدیریت باز شود؛ در آنجا می‌توانید سرویس را شروع/متوقف کنید، اطلاعات ورود خود را ببینید یا بازنشانی کنید، گواهی‌های SSL را مدیریت کنید و کارهای دیگری انجام دهید.

برای مستندات کامل، لطفاً به ویکی پروژه مراجعه کنید.

پلتفرم‌های پشتیبانی‌شده

سیستم‌عامل‌ها: Ubuntu، Debian، Armbian، Fedora، CentOS، RHEL، AlmaLinux، Rocky Linux، Oracle Linux، Amazon Linux، Virtuozzo، Arch، Manjaro، Parch، openSUSE (Tumbleweed / Leap)، Alpine و Windows.

معماری‌ها: amd64 · 386 · arm64 (aarch64) · armv7 · armv6 · armv5 · s390x.

گزینه‌های پایگاه‌داده

‏3X-UI از دو بک‌اند پشتیبانی می‌کند که در حین نصب انتخاب می‌شوند:

  • SQLite (پیش‌فرض) — یک فایل واحد در مسیر /etc/x-ui/x-ui.db. بدون نیاز به تنظیمات، ایده‌آل برای استقرارهای کوچک و متوسط.
  • PostgreSQL — برای تعداد کلاینت بالا یا راه‌اندازی‌های چندنودی توصیه می‌شود. نصب‌کننده می‌تواند PostgreSQL را به‌صورت محلی برایتان نصب کند، یا یک DSN به یک سرور موجود را بپذیرد.

در زمان اجرا، بک‌اند از طریق متغیرهای محیطی انتخاب می‌شود (نصب‌کننده این موارد را برای شما در /etc/default/x-ui می‌نویسد):

XUI_DB_TYPE=postgres
XUI_DB_DSN=postgres://xui:[email protected]:5432/xui?sslmode=disable

انتقال یک نصب موجود SQLite به PostgreSQL

x-ui migrate-db --dsn "postgres://xui:[email protected]:5432/xui?sslmode=disable"
# سپس XUI_DB_TYPE و XUI_DB_DSN را در /etc/default/x-ui تنظیم کرده و ری‌استارت کنید:
systemctl restart x-ui

فایل اصلی SQLite دست‌نخورده باقی می‌ماند؛ پس از اطمینان از صحت بک‌اند جدید، آن را به‌صورت دستی حذف کنید.

Docker

دستور پیش‌فرض docker compose up -d همچنان از SQLite استفاده می‌کند. برای اجرا با سرویس PostgreSQL همراه، دو خط متغیر محیطی XUI_DB_* را در docker-compose.yml از حالت کامنت خارج کنید و با پروفایل زیر اجرا کنید:

docker compose --profile postgres up -d

این ایمیج، Fail2ban را (که به‌صورت پیش‌فرض فعال است) برای اعمال محدودیت‌های IP به‌ازای هر کلاینت همراه دارد. ‏Fail2ban متخلفان را با iptables مسدود می‌کند که به مجوز NET_ADMIN نیاز دارد. فایل docker-compose.yml این مجوز را از قبل از طریق cap_add می‌دهد؛ اگر به‌جای آن کانتینر را با docker run اجرا می‌کنید، خودتان مجوزها را اضافه کنید، در غیر این صورت مسدودسازی‌ها فقط ثبت می‌شوند اما هرگز اعمال نمی‌شوند:

docker run -d --cap-add=NET_ADMIN --cap-add=NET_RAW ... ghcr.io/mhsanaei/3x-ui

متغیرهای محیطی

متغیر توضیحات پیش‌فرض
XUI_DB_TYPE بک‌اند پایگاه‌داده: sqlite یا postgres sqlite
XUI_DB_DSN رشته‌ی اتصال PostgreSQL (وقتی XUI_DB_TYPE=postgres)
XUI_DB_FOLDER پوشه‌ی فایل پایگاه‌داده‌ی SQLite /etc/x-ui
XUI_DB_MAX_OPEN_CONNS حداکثر اتصالات باز (استخر PostgreSQL)
XUI_DB_MAX_IDLE_CONNS حداکثر اتصالات بی‌کار (استخر PostgreSQL)
XUI_ENABLE_FAIL2BAN فعال‌سازی اعمال محدودیت IP مبتنی بر Fail2ban true
XUI_LOG_LEVEL سطح گزارش‌گیری (debug، info، warning، error) info
XUI_DEBUG فعال‌سازی حالت دیباگ false

زبان‌های پشتیبانی‌شده

رابط کاربری پنل به ۱۳ زبان در دسترس است:

English · فارسی · العربية · 中文(简体) · 中文(繁體) · Español · Русский · Українська · Türkçe · Tiếng Việt · 日本語 · Bahasa Indonesia · Português (Brasil)

مشارکت

از مشارکت‌ها استقبال می‌شود. لطفاً پیش از باز کردن issue یا pull request، راهنمای مشارکت را مطالعه کنید.

تشکر ویژه از

قدردانی

  • Iran v2ray rules (مجوز: GPL-3.0): قوانین مسیریابی بهبود یافته v2ray/xray و v2ray/xray-clients با دامنه‌های ایرانی داخلی و تمرکز بر امنیت و مسدود کردن تبلیغات.
  • Russia v2ray rules (مجوز: GPL-3.0): این مخزن شامل قوانین مسیریابی V2Ray به‌روزرسانی شده خودکار بر اساس داده‌های دامنه‌ها و آدرس‌های مسدود شده در روسیه است.

ابزارهای جامعه

ابزارها و یکپارچه‌سازی‌هایی که توسط جامعه پیرامون 3x-ui ساخته شده‌اند.

  • terraform-provider-3x-ui (مجوز: MIT): مدیریت اینباندها، کلاینت‌ها، تنظیمات پنل و پیکربندی Xray به‌صورت کد با Terraform / OpenTofu.

پشتیبانی از پروژه

اگر این پروژه برای شما مفید است، می‌توانید به آن یک:star2: بدهید

Buy Me A Coffee

Crypto donation button by NOWPayments

ستاره‌ها در طول زمان

Stargazers over time