مهندس أمام محطة عمل في غرفة تقنية

وصول الخدمة · نشأ من NetBird

الوصول إلى العقار لفريقكم.

الوصول إلى أنظمة العقار ضمن حدود واضحة للفريق، مع سياق المشروع في المتناول.

  • من دون VPN أو منافذ واردة
  • فقط host:port مسموح
  • P2P مع relay fallback
  • طرفية وSFTP وسجل تدقيق
3سيناريوهات الاتصال
2مسارات الاتصال
24/7التحكم في وصول الخدمة

نشأت من NetBird

نهج شبكي للوصول الدقيق إلى الخدمات

أخذنا نهج NetBird للاتصال الآمن وطبقناه على خدمة العقار: ACL للمشروع وhost:port دقيق وP2P مع relay fallback والطرفية والتدقيق.

النموذج الأصلي NetBird
نسخة SHD وكلاء الخدمة

ما الذي يحله الوكيل

الوصول إلى خدمة لا إلى الشبكة كلها

يعمل الوكيل على جهاز دائم التشغيل في الموقع ويحافظ على اتصال صادر. لا تُفتح شبكة LAN للخارج.

حد الوصول

فقط host:port المحفوظ.

لا يحصل المستخدم على مسار للشبكة الفرعية ولا يستطيع استبدال الهدف.

الرفض افتراضياً

بعد التسجيل، تبقى LAN مغلقة. تسبقها سياسة المنفذ وACL والدور.

01

وحدات التحكم والوكلاء

الحالة وheartbeat والإصدار والإجراءات داخل المشروع.

02

الخدمات والأجهزة

قائمة عمل بعناوين IP:port المسموحة. ليست تجاوزاً لـ ACL.

03

الأنفاق والعناوين العامة

يبقى name.access.xyz.su ثابتاً رغم تغير IP الخارجي.

04

القواعد والخريطة والسجل

من اتصل، وما المفتوح، ولماذا رُفض الوصول.

ثلاثة أدوار وruntime واحد

اختر الوكيل حسب مكان عمله

ملف shd-agent ثنائي واحد. يحدد مكان التشغيل وضعه.

01

Controller-agent

في شبكة الموقع. TLS صادر، heartbeat، وأهداف TCP المحفوظة فقط.

02

User-agent

على كمبيوتر المهندس. جلسة QUIC واحدة وHTTP وSSH وTCP متوازية.

03

Server-agent

على خادم. Gateway وExit-node وspeed test عبر route policy.

مسار الطلب

من التفويض إلى أول بايت

يفوّض الخادم الطلب. تسير البيانات P2P، وإلا تنتقل إلى relay.

01

المستخدم أو التطبيق

Overlay أو endpoint عام أو نفق.

02

تتحقق SHD من الوصول

المستخدم والمشروع والخدمة والدور وإصدار الوكيل.

03

P2P أو relay

QUIC المباشر أولاً. وإلا relay ثنائي.

04

Controller-agent

يفتح TCP محلياً إلى host:port المحدد فقط.

05

الخدمة المحددة

تحافظ HTTP وSSH وLoxone على مصادقتها المعتادة.

مسار مباشر

P2P QUIC

تمر البيانات مباشرة بين الوكلاء. لا يرى relay البيانات.

مسار احتياطي

Relay fallback

إذا أعاق NAT أو الجدار الناري P2P، تمر الإطارات عبر relay.

جلسة QUIC واحدة لكل وكيل · stream مستقل لكل اتصال TCP.

الأمان

ليس VPN وليس LAN مفتوحاً

صلاحية المشروع لا تفتح الشبكة. يلزم دور ومنفذ وACL.

نموذج الوصول

أربعة حدود لكل طلب

يحدد المشروع السياق، وتصف السياسة الخدمة، وتختار ACL المسموح له. يغلق الإلغاء المسار فوراً.

01

دور الوحدة

قراءة الوكلاء لا تمنح صلاحية تغيير الإعدادات.

02

سياسة منفذ الوصول

لا يفتح 192.168.1.3:443 المنفذ :80 أو الأجهزة المجاورة.

03

قاعدة ACL

مستخدم أو مجموعة، خدمة محددة، allow/deny.

04

الإلغاء والتدقيق

تُغلق الجلسات فوراً. ويسجل السجل كل شيء.

نطاق التشغيل

أدوات الربط والتشغيل

من تثبيت الوكيل إلى الطرفية والمسارات وتحليل الأعطال.

01

HTTP وHTTPS وWebSocket

واجهات الويب وAPI للخدمات المحفوظة.

02

Terminal وSFTP

تعمل SSH في المتصفح بلا وكيل محلي. وSFTP دور منفصل.

03

العناوين العامة

name.access.xyz.su. تبقى مصادقة التطبيق وACL مطبقتين.

04

Overlay والمسارات

Native L3 100.126.0.0/16. يبقى مسار الإنترنت العادي سليماً.

05

Exit Network

تمرير الحركة من IP وكيل الخادم وفق route policy.

06

Heartbeat وjobs

Push-first: sync وupdate وreboot. وHTTP قناة احتياطية.

الإدخال إلى التشغيل

من التثبيت إلى اتصال يعمل

أولاً runtime، ثم الخدمة الدقيقة والصلاحية وفحص النقل.

  1. 01

    التثبيت والتسجيل

    جهاز دائم، shd-agent، enrollment token.

  2. 02

    انتظار حالة online

    TLS صادر، heartbeat، وقائمة الخدمات.

  3. 03

    حفظ المنافذ المطلوبة

    الأهداف المطلوبة فقط: 443 و875 و8123 و22.

  4. 04

    تعيين الأدوار والقواعد

    الأدوار وACL. تبقى LAN مغلقة افتراضياً.

  5. 05

    فتح الخدمة والمراقبة

    Overlay أو endpoint، الاستجابة الأولى، وسجل التدقيق.

قبل الربط

أسئلة مهمة في العقار

إجابات مختصرة عن أدوار runtime ومسارات البيانات وحدود الوصول والطرفية والتشخيص.

ما هو shd-agent؟

إنه runtime واحد بلغة Go بعدة أدوار. يعمل Controller-agent داخل شبكة العقار، وuser-agent على جهاز المهندس، وserver-agent على خادم بوحدات خاصة.

هل نحتاج إلى VPN أو منفذ وارد؟

لا. ينشئ Controller-agent اتصالاً آمناً صادراً. يصل المستخدم إلى الخدمات المحفوظة فقط، وليس إلى الشبكة المحلية كلها.

ماذا يحدث عند عدم توفر P2P؟

بعد فشل محاولة QUIC المباشرة، يفعّل user-agent relay fallback. ويحافظ على الطلب الأول ويمرر البيانات بإطارات ثنائية عبر relay وcontroller-agent.

هل يمكن تغطية الشبكة الفرعية كلها؟

لا، فهذا ليس نموذج الوحدة. يسمح فقط بـ service/host/port محدد، وتحظر عناوين broadcast وmulticast وmetadata وbackend وrelay، وتفحص كل IP يحله hostname.

ما الخدمات التي يمكن فتحها؟

أي خدمة TCP محفوظة صراحة ويمكن للوكيل الوصول إليها محلياً: HTTP/HTTPS وWebSocket وSSH وLoxone وHome Assistant ومنافذ محددة أخرى.

هل تعمل الطرفية من المتصفح؟

نعم. لا تحتاج Browser SSH terminal إلى user-agent محلي على الهاتف أو الكمبيوتر. يلزم دور terminal واسم مستخدم SSH وcredential محفوظان، ويتطلب SFTP دور sftp أيضاً.

ما هي Exit Network؟

إنه مسار server-agent: يستقبل Routing gateway مجموعة route group، ويربطها relay بـ Exit-node، ثم يخرج Exit-node المرور المسموح إلى الوجهة من عنوانه.

كيف نسحب الوصول بسرعة؟

احذف أو عدّل القاعدة أو المنفذ أو endpoint أو الدور. يغلق Backend الجلسات النشطة ويحدّث allowlist الوكيل ويسجل العملية، ولا حاجة لانتظار انتهاء الجلسة القديمة.

كيف نحدد موضع العطل؟

تحقق من online للـ controller-agent وuser-agent وroute policy ووصول الوكيل إلى الهدف وshd99 وشبكة 100.126.0.0/16. وللنقل راقب p2p_first_byte وlast_path وp2p_sent وrelay_sent.

هل يمكن ربط عقار يعمل حالياً؟

نعم. نراجع الشبكة ووحدات التحكم ومنافذ الأهداف وطريقة الخدمة والأدوار المطلوبة، ثم نضيف أصغر مجموعة خدمات من دون وصول تلقائي إلى بقية LAN.

ربط العقار

صمّم حدود الوصول

أخبرنا بوحدات التحكم والأجهزة والعمليات التي تحتاج إلى خدمة عن بُعد. سنراجع شبكة العقار وأدوار runtime والمنافذ الدقيقة ووسيلة النقل وخطة الإطلاق.

قبل الاجتماع الأول جهّز مخطط الشبكة وقائمة وحدات التحكم وhost:port للخدمات ومتطلبات terminal/SFTP ونموذج الوصول المؤسسي.

الرمز الظاهر في الصورة
الرمز الظاهر في الصورة