Remove the trailing .svg extension from shields.io badge image URLs to use content-negotiated badge endpoints (recommended by shields.io). Changes applied to README.md and localized files: README.ar_EG.md, README.es_ES.md, README.fa_IR.md, README.ru_RU.md, README.zh_CN.md.
12 KiB
English | فارسی | العربية | 中文 | Español | Русский
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 بهازای هر کلاینت.
اسکرینشاتها
شروع سریع
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:password@127.0.0.1:5432/xui?sslmode=disable
انتقال یک نصب موجود SQLite به PostgreSQL
x-ui migrate-db --dsn "postgres://xui:password@127.0.0.1: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.
پشتیبانی از پروژه
اگر این پروژه برای شما مفید است، میتوانید به آن یک🌟 بدهید




