Ei kuvausta

MHSanaei 05cb70d8a8 feat(frontend): add text search to the inbound list 11 tuntia sitten
.github 427613b308 chore(ci): upgrade claude-bot to Sonnet 5 and set explicit effort levels 2 päivää sitten
.vscode 0537cbfb10 chore: bump dompurify to 3.4.11 and expand VS Code tasks 1 viikko sitten
deploy 30796dc2ce chore(deploy): drop the AWS golden-image build stack 1 viikko sitten
docs 28f7690224 docs: move architecture map into docs/ and refresh it against the live tree 1 päivä sitten
frontend 05cb70d8a8 feat(frontend): add text search to the inbound list 11 tuntia sitten
internal 323cf09d10 feat(sub): show the announcement on the subscription info page 11 tuntia sitten
media 87f446fe22 docs(readme): revamp README and sync all translations 1 kuukausi sitten
tools 9e13b32c34 fix: make all self-managed file downloads/installs atomic, with real completion status (#5711) 1 päivä sitten
windows_files 570ab8e5e0 Update OpenSSL installer to version 3.6.0 5 kuukautta sitten
.dockerignore 41645255f1 refactor: focused service files, leaf subpackages, and an internal/ layout (#5167) 3 viikkoa sitten
.env.example dbdecda03f Env vars example file update (#5678) 20 tuntia sitten
.gitattributes 30796dc2ce chore(deploy): drop the AWS golden-image build stack 1 viikko sitten
.gitignore 49773c18de fix(xray): force full restart for inbounds with a VLESS reverse client 2 päivää sitten
.golangci.yml fa1a19c03c style: adopt golangci-lint v2 and resolve all findings 6 päivää sitten
.nvmrc 428f1333ac Security hardening: sessions, SSRF, CSP nonce, CSRF logout, trusted proxies (#4275) 1 kuukausi sitten
CLAUDE.md 28f7690224 docs: move architecture map into docs/ and refresh it against the live tree 1 päivä sitten
CONTRIBUTING.md 63fca9ef88 docs: correct false RTL claim and stale Vite version in CONTRIBUTING.md 6 päivää sitten
DockerEntrypoint.sh a13a79b230 fix(docker): start crond and persist acme.sh state so cert renewal works 11 tuntia sitten
DockerInit.sh e44075a6e0 chore(deps): bump xray-core to v26.6.27 6 päivää sitten
Dockerfile 41645255f1 refactor: focused service files, leaf subpackages, and an internal/ layout (#5167) 3 viikkoa sitten
LICENSE b73e4173a3 3x-ui 3 vuotta sitten
Makefile 2e851978e6 chore: add Makefile as canonical task runner 6 päivää sitten
README.ar_EG.md 30796dc2ce chore(deploy): drop the AWS golden-image build stack 1 viikko sitten
README.es_ES.md 30796dc2ce chore(deploy): drop the AWS golden-image build stack 1 viikko sitten
README.fa_IR.md 30796dc2ce chore(deploy): drop the AWS golden-image build stack 1 viikko sitten
README.md 30796dc2ce chore(deploy): drop the AWS golden-image build stack 1 viikko sitten
README.ru_RU.md 30796dc2ce chore(deploy): drop the AWS golden-image build stack 1 viikko sitten
README.tr_TR.md 30796dc2ce chore(deploy): drop the AWS golden-image build stack 1 viikko sitten
README.zh_CN.md 30796dc2ce chore(deploy): drop the AWS golden-image build stack 1 viikko sitten
docker-compose.yml a13a79b230 fix(docker): start crond and persist acme.sh state so cert renewal works 11 tuntia sitten
go.mod ccd56a56a8 chore(deps): bump github.com/klauspost/compress from 1.18.6 to 1.19.0 (#5731) 1 päivä sitten
go.sum ccd56a56a8 chore(deps): bump github.com/klauspost/compress from 1.18.6 to 1.19.0 (#5731) 1 päivä sitten
install.sh ed95acdd47 fix(scripts): avoid rpm package upgrades before installs (#5750) 20 tuntia sitten
main.go fa1a19c03c style: adopt golangci-lint v2 and resolve all findings 6 päivää sitten
update.sh ed95acdd47 fix(scripts): avoid rpm package upgrades before installs (#5750) 20 tuntia sitten
x-ui.rc 4c2915586c fix(alpine): restart_xray uses rc-service; OpenRC reload reads pidfile contents 1 kuukausi sitten
x-ui.service.arch 63a6d40457 Update ExecReload command in x-ui.service.debian (#5219) 3 viikkoa sitten
x-ui.service.debian 63a6d40457 Update ExecReload command in x-ui.service.debian (#5219) 3 viikkoa sitten
x-ui.service.rhel 63a6d40457 Update ExecReload command in x-ui.service.debian (#5219) 3 viikkoa sitten
x-ui.sh ed95acdd47 fix(scripts): avoid rpm package upgrades before installs (#5750) 20 tuntia sitten

README.ar_EG.md

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

3x-ui

Release Build GO Version Downloads License Go Reference Go Report Card

3X-UI هي لوحة تحكم ويب متقدمة ومفتوحة المصدر لإدارة خوادم Xray-core. توفّر واجهة نظيفة ومتعددة اللغات لنشر وتكوين ومراقبة مجموعة واسعة من بروتوكولات الوكيل وVPN — من خادم VPS واحد إلى عمليات النشر متعددة العقد.

تم بناء 3X-UI كنسخة محسّنة (fork) من مشروع X-UI الأصلي، وتضيف دعمًا أوسع للبروتوكولات، واستقرارًا محسّنًا، ومحاسبة للترافيك لكل عميل، والعديد من ميزات تحسين تجربة الاستخدام.

[!IMPORTANT] هذا المشروع مخصص للاستخدام الشخصي فقط. يرجى عدم استخدامه لأغراض غير قانونية أو في بيئة إنتاجية.

الميزات

  • اتصالات واردة متعددة البروتوكولات — 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 واشتراكات بنقرة واحدة.
  • إحصائيات الترافيك — لكل اتصال وارد، ولكل عميل، ولكل اتصال صادر، مع عناصر تحكم لإعادة التعيين.
  • دعم العقد المتعددة — إدارة وتوسيع عبر عدة خوادم من لوحة واحدة.
  • الاتصالات الصادرة والتوجيه — WARP، NordVPN، قواعد توجيه مخصصة، موازنات تحميل، وتسلسل الوكلاء الصادرة.
  • خادم اشتراك مدمج بصيغ إخراج متعددة وقوالب صفحات مخصصة.
  • روبوت تيليجرام للمراقبة والإدارة عن بُعد.
  • واجهة RESTful API مع توثيق Swagger داخل اللوحة.
  • تخزين مرن — SQLite (افتراضي) أو PostgreSQL.
  • 13 لغة لواجهة المستخدم مع سمات داكنة وفاتحة.
  • تكامل مع Fail2ban لفرض حدود IP لكل عميل.

لقطات الشاشة

انقر للتوسيع Overview Inbounds Add client Configs

البدء السريع

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

لتثبيت إصدار محدد، أضِف وسمه (مثل v3.4.0):

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

لتثبيت بنية dev المتجددة (أحدث إصدار أولي لكل التزام (commit) من main، وليس إصدارًا مستقرًا)، مرّر dev-latest:

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

أثناء التثبيت، يتم إنشاء اسم مستخدم وكلمة مرور ومسار وصول عشوائية. بعد التثبيت، شغّل x-ui لفتح قائمة الإدارة، حيث يمكنك بدء/إيقاف الخدمة، وعرض أو إعادة تعيين بيانات تسجيل الدخول، وإدارة شهادات SSL، والمزيد.

للحصول على الوثائق الكاملة، يرجى زيارة ويكي المشروع.

التثبيت غير التفاعلي

يعمل المثبِّت أيضًا بشكل غير تفاعلي لـ cloud-init. عيّن XUI_NONINTERACTIVE=1 (أو مرّره عبر أنبوب دون TTY) وسيتولى التثبيت من البداية إلى النهاية دون أي مطالبات، مُنشئًا بيانات اعتماد عشوائية وكاتبًا إياها في /etc/x-ui/install-result.env. راجع deploy/ لـ:

المنصات المدعومة

أنظمة التشغيل: 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 خلفيتين (backends) يتم اختيارهما أثناء التثبيت:

  • 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_INIT_WEB_BASE_PATH مسار URI الأولي للوحة الويب /
XUI_ENABLE_FAIL2BAN تفعيل فرض حدود IP المعتمد على Fail2ban true
XUI_LOG_LEVEL مستوى السجل (debug، info، warning، error) info
XUI_DEBUG تفعيل وضع التصحيح false
XUI_TUNNEL_HEALTH_MONITOR تفعيل مراقب صحة النفق (يفحص عنوان URL ويعيد تشغيل xray بعد فشل متكرر؛ إعادة التشغيل تقطع جميع العملاء) false
XUI_TUNNEL_HEALTH_PROXY الوكيل الذي يُرسَل عبره الفحص؛ وجّهه إلى اتصال xray وارد محلي ليختبر الفحص النفق (مثل socks5://127.0.0.1:1080). القيمة الفارغة تعني أن الفحص يتحقق فقط من اتصال المضيف
XUI_TUNNEL_HEALTH_URL عنوان URL الذي يُفحَص لمعرفة صحة النفق https://www.cloudflare.com/cdn-cgi/trace
XUI_TUNNEL_HEALTH_INTERVAL الفترة بين عمليات الفحص 30s
XUI_TUNNEL_HEALTH_TIMEOUT مهلة كل عملية فحص 10s
XUI_TUNNEL_HEALTH_FAILURES عدد حالات الفشل المتتالية قبل تشغيل إعادة التشغيل 3
XUI_TUNNEL_HEALTH_COOLDOWN الحد الأدنى للتأخير بين عمليات إعادة التشغيل المتتالية 5m

اللغات المدعومة

تتوفر واجهة اللوحة بـ 13 لغة:

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