انتقل إلى المحتوى

الأمان والإدارة

الأولوية الأولى

فعّل المصادقة الثنائية وعيّن سر JWT قوي (≥32 بايت) للمسؤول الأساسي قبل تعريض لوحة التحكم للإنترنت.


المصادقة

الطبقة الآلية
تسجيل دخول لوحة التحكم JWT (Bearer) — مدة صلاحية قابلة للتكوين
المصادقة الثنائية TOTP (Google Authenticator، Authy، إلخ)
أتمتة API توكن وصول شخصي (PAT)
لوحة التحكم ↔ العقدة mTLS (شهادات متبادلة)
تسجيل دخول البوابة توكن الاشتراك

تفعيل المصادقة الثنائية (TOTP)

  1. الإعدادات → المصادقة الثنائية
  2. انقر تفعيل → امسح رمز QR بتطبيق TOTP
  3. أدخل الرمز المكوّن من 6 أرقام للتأكيد
  4. احفظ رموز الاسترداد بأمان
  5. للتعطيل: أدخل الرمز الحالي → انقر تعطيل

RBAC والأدوار

المسؤولون → الأدوار

المفهوم الوصف
الدور مجموعة مسمّاة من الصلاحيات
الصلاحية وصول دقيق: users.read، nodes.write، plans.manage، إلخ
حصة الموزّع سقف عدد المستخدمين + الحركة للمسؤولين غير sudo
عرض محدود المسؤول يرى فقط مستخدميه/بياناته

الأدوار المضمّنة

الدور الوصول
Sudo وصول كامل لكل شيء
مسؤول (Admin) إدارة المستخدمين، العقد، الاتصالات الواردة (بدون إعدادات النظام)
موزّع (Reseller) إدارة مستخدميه، خططه، المحفظة، العلامة التجارية

منصة الموزّعين

يحوّل نظام الموزّعين في VortexUI كل مسؤول غير sudo إلى مشغّل لوحة فرعية كاملة.

ميزات الموزّع

الميزة الوصف
مستخدمون مملوكون الموزّع يدير فقط المستخدمين الذين أنشأهم
خطط مملوكة الموزّع ينشئ خططه بأسعاره الخاصة
إعداد الدفع الموزّع يُعدّ طرق الدفع الخاصة به
المحفظة رصيد حركة + مستخدمين، دفتر الحسابات، طلبات الشحن
موزّعون فرعيون إنشاء موزّعين أبناء بنطاق موروث
علامة تجارية خاصة (Whitelabel) تخصيص العلامة التجارية (شعار، عنوان، لون التمييز، تذييل)
ويب هوكس أحداث صادرة (user.created، user.deleted) للأتمتة
لوحة معلومات إحصائيات خاصة بالموزّع (عدد الحسابات، الحركة، أعلى المستخدمين)
تصدير CSV تصدير قائمة المستخدمين المملوكين

قوائم السماح المخصصة

المسؤولون → تعديل المسؤول — تقييد ما يمكن للموزّع الوصول إليه:

قائمة السماح التأثير
الخطط فقط الخطط المدرجة تظهر في متجره
العقد الموزّع يمكنه ربط المستخدمين فقط بهذه العقد
الاتصالات الواردة الموزّع يمكنه إرفاق المستخدمين فقط بهذه الاتصالات

قائمة سماح فارغة = لا قيود (جميع العناصر مرئية). مسؤولو Sudo لا يخضعون للتقييد أبداً.

أوضاع حصة الحركة

الوضع يُحسب ضد الحصة عندما...
مخصص (Allocated) الموزّع يعيّن حدود بيانات للمستخدمين (مجموع الحدود)
مستهلك (Consumed) المستخدمون يستهلكون الحركة فعلياً

إعداد الدفع لكل موزّع

كل موزّع يُعدّ طرق الدفع الخاصة به:

الطريقة الإعداد
ZarinPal معرّف التاجر
تحويل بطاقة رقم البطاقة + اسم صاحبها
عملات رقمية عناوين المحافظ (BTC، USDT، إلخ)

المستخدمون في متجر ذلك الموزّع يرون فقط خيارات الدفع الخاصة بموزّعهم.

خطط مملوكة لكل موزّع

كل موزّع ينشئ خططاً مرئية فقط لمستخدميه:

  • الموزّع يحدد السعر، حدّ البيانات، المدة، حدّ الأجهزة
  • تظهر الخطط في /sub/{token}/shop لمستخدمي ذلك الموزّع فقط
  • خطط المسؤول منفصلة عن خطط الموزّع

محفظة الموزّع

نوع الرصيد الغرض
رصيد الحركة يُستهلك عند استخدام المستخدمين للبيانات
رصيد المستخدمين يُستهلك عند إنشاء مستخدمين جدد

عمليات المحفظة:

  • طلب شحن — الموزّع يطلب رصيداً، sudo يوافق
  • خصم تلقائي — النظام يخصم عند الاستهلاك/الإنشاء
  • دفتر الحسابات — سجل كامل لجميع تغييرات الرصيد مع الأسباب

الموزّعون الفرعيون

يمكن للموزّع إنشاء موزّعين أبناء:

  • الابن يرث نطاق الأب (لا يمكنه تجاوز قوائم سماح الأب)
  • الأب يدير محفظة الابن
  • الأب يرى مستخدمي الابن وإحصائياته

حدود السياسة (لكل موزّع)

تُعيَّن في المسؤولون → تعديل المسؤول → السياسة:

الإعداد التأثير
أقصى حدّ بيانات (GB) سقف حدّ البيانات لكل مستخدم يمكن للموزّع تعيينه
أقصى انتهاء (أيام) سقف مدة الاشتراك
السماح بالإنشاء/الاستيراد الجماعي بوابة الإنشاء الجماعي للمستخدمين
السماح بالحذف الجماعي بوابة الحذف المتعدد

التعليق التلقائي

الإعداد التأثير
تفعيل التعليق التلقائي مفتاح رئيسي
مخالفات IP (7 أيام) التعليق بعد N حدث كشف مشاركة
فترة سماح الحصة (دقائق) فترة سماح بعد تجاوز الحصة

الموزّعون المعلّقون لا يمكنهم تسجيل الدخول حتى ينقر مسؤول sudo إلغاء التعليق.

أدوات مسؤول Sudo

الإجراء الوصف
جدول استخدام الحصة لكل موزّع: الحسابات، الحركة، الحصة المتبقية
تعديل حصة سريع أزرار +50 حساب / +10 GB / +50 GB
تسجيل الدخول كـ (انتحال) إصدار جلسة JWT للموزّع
إلغاء التعليق مسح علامة التعليق التلقائي
تنبيهات الحصة تكوين إشعارات العتبة لجميع الموزّعين

مدير حيل TLS

الأمان → حيل TLS

ملفات تعريف خاصة بمزوّد الخدمة تجمع عدة تقنيات لتجاوز DPI:

التقنية الوصف
التجزئة (Fragment) تقسيم TLS ClientHello إلى حزم صغيرة
تعدد الإرسال (Mux) جمع الاتصالات في تيار واحد
الحشو (Padding) إضافة حشو عشوائي للحزم

إنشاء ملف تعريف

  1. انقر ملف تعريف جديد
  2. سمِّه (مثل "إيران — تجزئة + Chrome")
  3. اضبط الإعدادات:
    • البصمة: Chrome، Firefox، Safari، Random، Randomized
    • التجزئة: تفعيل + نطاق الطول (مثل 10-30) + الفاصل
    • Mux: تفعيل + البروتوكول (smux، yamux، h2mux)
  4. احفظ → عيّن للاتصالات الواردة

إعدادات مسبقة حسب الدولة

  • إيران: تجزئة 10-30 + بصمة Chrome
  • الصين: Mux h2mux + بصمة Randomized
  • روسيا: تجزئة 1-3 + بصمة Firefox

حماية الاستكشاف النشط

الأمان → حماية الاستكشاف

كشف ومنع محاولات الاستكشاف النشط من المراقبين (GFW، TSPU).

الإجراء السلوك
حظر إسقاط الاتصال + حظر IP للمدة المحددة
مصيدة (Honeypot) إرجاع موقع وهمي لخداع المستكشف
تسجيل فقط التسجيل بدون إجراء (وضع المراقبة)

الإعدادات:

  • مدة الحظر (افتراضي: 3600 ثانية)
  • عتبة أقصى استكشافات/دقيقة (افتراضي: 5)
  • قائمة IP موثوقة بيضاء
  • تنبيه تيليجرام عند الكشف

التحقق من بصمة العميل (JA3)

الأمان → البصمة

حظر الاتصالات بناءً على بصمات TLS ClientHello. أدوات المسح المعروفة (curl، Go HTTP، Python requests) تُنتج بصمات مميزة.

الإعداد الوصف
مفعّل تفعيل فحص البصمة
الإجراء الافتراضي البصمات غير المعروفة: سماح / حظر / تسجيل
القواعد سماح/حظر صريح لكل بصمة أو هاش JA3

Example

حظر أدوات المسح: - القاعدة 1: fingerprint=curl، الإجراء=حظر - القاعدة 2: fingerprint=python، الإجراء=حظر


الموقع الخادع (Decoy)

الأمان → الموقع الخادع

عرض موقع وهمي عندما يزور شخص عنوان IP خادمك مباشرة:

الوضع السلوك
وكيل (Proxy) عكس موقع موجود (نسخة طبق الأصل)
ثابت (Static) عرض HTML مخصص

يجعل خادمك يبدو كموقع عادي للمراقبين والزوار العابرين.


ملفات التمويه (Evasion Profiles)

الأمان → ملفات التمويه

حزم تقنيات مكافحة DPI مُعدّة مسبقاً تُعيَّن للاتصالات الواردة لتجاوز الرقابة بنقرة واحدة. تجمع إعدادات التجزئة والـ mux والبصمة في ملف تعريف مسمّى.


تكامل WARP+

الشبكة → الاتصالات الصادرة → WARP+

توجيه الحركة عبر Cloudflare WARP للحصول على IP نظيف:

  • الطبقة المجانية أو بمفتاح ترخيص WARP+
  • التعيين لقواعد التوجيه لنطاقات محددة
  • مفيد عندما يكون IP العقدة محظوراً من الخدمات

DNS-over-HTTPS (DoH)

الأمان → DNS-over-HTTPS

خادم DoH مدمج يمنع تسرّب DNS:

الإعداد الوصف الافتراضي
مفعّل تشغيل/إيقاف DoH معطّل
عنوان الاستماع عنوان الربط :8053
DNS أعلى المحلّلات للتوجيه إليها 1.1.1.1، 8.8.8.8
حظر الإعلانات تصفية نطاقات الإعلان معطّل
حظر البرمجيات الخبيثة تصفية نطاقات البرمجيات الخبيثة مفعّل
قائمة حظر مخصصة نطاقاتك المحظورة فارغة
مدة التخزين المؤقت (TTL) مدة التخزين المؤقت (ثوانٍ) 300

ماسح Clean-IP

الشبكة → Clean IP

إيجاد عناوين CDN ذات أداء جيد بمسحها وتقييمها حسب زمن الاستجابة وفقدان الحزم.

  1. الصق عناوين IP المرشحة (سطر لكل عنوان)
  2. حدد المنفذ (افتراضي: 443)
  3. انقر مسح — النتائج تُقيَّم وتُرتب الأفضل أولاً
  4. استخدم أفضل العناوين في مضيفات الاشتراك أو سلاسل CDN

حماية SSRF

النطاقات الخاصة والـ loopback وlink-local مرفوضة لمنع مسح الشبكة الداخلية.


فرض حدّ IP

الأمان → حدّ IP

سقف IP/أجهزة متزامنة لكل مستخدم لمنع مشاركة الحساب.

الإعداد الوصف
مفعّل تبديل التنفيذ
الإجراء warn، disable_temporarily، أو kill_connections
فترة تبريد التنبيه ثوانٍ بين التنبيهات المتكررة
الاستعادة بعد ثوانٍ قبل استعادة المستخدم المعطّل مؤقتاً

Note

kill_connections متاح لـ Xray فقط. على عقد sing-box يتراجع إلى disable_temporarily.


قائمة IP البيضاء/السوداء

الإعدادات → حارس IP

تقييد وصول API لوحة التحكم والاشتراك حسب IP:

  • وضع القائمة البيضاء — فقط العناوين المدرجة يمكنها الوصول
  • وضع القائمة السوداء — العناوين المدرجة محظورة
  • يدعم نطاقات CIDR

الحظر الجغرافي لكل اتصال وارد

تقييد الدول التي يمكنها الاتصال باتصال وارد محدد:

  • يُعدّ في صفحة تعديل الاتصال الوارد
  • رموز دول مفصولة بفواصل (ISO 3166-1 alpha-2)
  • فارغ = جميع الدول مسموحة

حارس مشاركة الحساب

حلقة خلفية تقارن عناوين IP المتصلة بحدود الأجهزة:

الوضع السلوك
كشف (افتراضي) إطلاق حدث user.ip_limit + ويب هوك/تيليجرام
تقييد تلقائي (VORTEX_SHARE_AUTOLIMIT=true) تقييد المستخدم تلقائياً

سجل التدقيق

التدقيق — يسجّل جميع تعديلات المسؤولين:

الحقل المحتوى
الفاعل اسم مستخدم المسؤول
الإجراء user.create، inbound.update، admin.login، إلخ
الهدف معرّف المورد
الطابع الزمني ISO 8601
الفرق JSON قبل/بعد

الموزّعون يرون إجراءاتهم فقط. مسؤولو Sudo يرون الكل.


توكنات API (PAT)

الإعدادات → توكنات API

إنشاء توكنات وصول شخصية للأتمتة:

curl -H "Authorization: Bearer <PAT>" \
  https://panel.example.com/api/users
  • يمكن إلغاء كل توكن بشكل فردي
  • الصلاحيات تُورَث من دور المسؤول المُنشئ
  • تعيين تاريخ انتهاء اختياري

قائمة التحقق الأمني

  • سر JWT قوي (≥32 بايت عشوائي)
  • HTTPS مفعّل (Let's Encrypt عبر Caddy)
  • TOTP 2FA لمسؤول sudo
  • توكنات API بأقل صلاحية
  • نسخ احتياطي مشفّر خارج الموقع
  • سر ويب هوك للتحقق من HMAC
  • منفذ لوحة التحكم مغلق من العام (Caddy 443 فقط)
  • حماية الاستكشاف مفعّلة
  • فرض حدّ IP مُعدّ
  • موقع خادع نشط