
warpgate v0.29.0-beta.1
ممرّ/بوابة (Bastion/PAM) شفّاف بالكامل لـ SSH وHTTPS وKubernetes وقواعد البيانات وRDP/VNC، لا يتطلّب أي برامج إضافية على جانب العميل
Warpgate هو مضيف حصن (bastion host) ذكي وشفاف بالكامل لـ SSH وHTTPS وKubernetes وMySQL وPostgreSQL وRDP وVNC، ولا يتطلب تطبيق عميل أو غلاف SSH.
- قم بإعداده في منطقة DMZ الخاصة بك، وأضف حسابات المستخدمين وعيّنهم بسهولة إلى مضيفين وعناوين URL محددة داخل الشبكة.
- سيقوم Warpgate بتسجيل كل جلسة لتتمكن من مشاهدتها (مباشرة) وإعادة تشغيلها لاحقًا عبر واجهة إدارة الويب المدمجة.
- الوصول عبر المتصفح إلى SSH وRDP وVNC مدمج؛ وتستمر العملاء الأصليون في العمل.
- ليس مضيف قفز (jump host) - يمرر الاتصال مباشرة إلى الهدف بطريقة شفافة تمامًا للعميل.
- دعم أصلي للمصادقة الثنائية (2FA) والدخول الموحّد (SSO) (TOTP وOpenID Connect)
- حماية مدمجة ضد هجمات القوة الغاشمة مع حظر عناوين IP وقفل حسابات المستخدمين
- ملف تنفيذي واحد بدون أي تبعيات.
- مكتوب بلغة Rust آمنة 100%.
بدعم من:
البدء والتنزيلات
- راجع صفحة الوثائق البدء (أو البدء على Docker).
- ملفات الإصدار / النسخة التجريبية
- البنيات الليلية
الوثائق
الوثائق الكاملة متاحة على warpgate.null.page، وتشمل:
- حماية تسجيل الدخول - تكوين الحماية ضد هجمات القوة الغاشمة
- الدخول الموحّد (SSO) - الدخول الموحّد عبر OpenID Connect
- التذاكر - بيانات اعتماد الوصول المؤقت
كيف يختلف Warpgate عن مضيف القفز / VPN / Teleport؟
| Warpgate | مضيف قفز SSH | VPN | Teleport |
|---|---|---|---|
| ✅ تعيين دقيق 1:1 بين المستخدمين والخدمات | (عادةً) وصول كامل إلى الشبكة خلف مضيف القفز | (عادةً) وصول كامل إلى الشبكة | ✅ تعيين دقيق 1:1 بين المستخدمين والخدمات |
| ✅ لا حاجة لعميل مخصص | مطلوب تكوين مضيف القفز | ✅ لا حاجة لعميل مخصص | مطلوب عميل مخصص |
| ✅ مصادقة ثنائية (2FA) جاهزة | 🟡 المصادقة الثنائية ممكنة مع إضافات PAM إضافية | 🟡 تعتمد على المزوّد | ✅ مصادقة ثنائية (2FA) جاهزة |
| ✅ دخول موحّد (SSO) جاهز | 🟡 الدخول الموحّد ممكن مع إضافات PAM إضافية | 🟡 تعتمد على المزوّد | مدفوع |
| ✅ تدقيق على مستوى الأوامر | 🟡 تدقيق على مستوى الاتصال على مضيف القفز، لا يوجد تدقيق آمن على الهدف إذا مُنح وصول الجذر | لا يوجد تدقيق آمن على الهدف إذا مُنح وصول الجذر | ✅ تدقيق على مستوى الأوامر |
| ✅ تسجيل كامل للجلسات | لا يمكن التسجيل الآمن على الهدف إذا مُنح وصول الجذر | لا يمكن التسجيل الآمن على الهدف إذا مُنح وصول الجذر | ✅ تسجيل كامل للجلسات |
| ✅ اتصالات غير تفاعلية | 🟡 الاتصالات غير التفاعلية ممكنة إذا كان العميل يدعم مضيفي القفز أصلاً | ✅ اتصالات غير تفاعلية | تتطلب الاتصالات غير التفاعلية استخدام غلاف عميل SSH أو تشغيل نفق |
| ✅ استضافة ذاتية، أنت تملك البيانات | ✅ استضافة ذاتية، أنت تملك البيانات | 🟡 تعتمد على المزوّد | SaaS |
| ✅ حماية مدمجة ضد هجمات القوة الغاشمة | 🟡 تتطلب إعداد fail2ban | 🟡 تعتمد على المزوّد | ✅ حماية مدمجة ضد هجمات القوة الغاشمة |
|
|
|
الإبلاغ عن المشكلات الأمنية
يرجى استخدام نظام الإبلاغ عن الثغرات الخاص بـ GitHub.
حالة المشروع
يُستخدم Warpgate بنشاط في بيئات المؤسسات.
ما هو مخطط العمل عليه تاليًا مُتتبَّع على خارطة الطريق العامة.
كيف يعمل
Warpgate هو خدمة تنشرها على مضيف الحصن/DMZ، والتي ستقبل اتصالات SSH وHTTPS وKubernetes وMySQL وPostgreSQL وRDP وVNC وتوفّر واجهة إدارة ويب (اختيارية).
شغّل warpgate setup لإنشاء ملف تكوين تفاعليًا، بما في ذلك ارتباطات المنافذ. راجع البدء للحصول على التفاصيل.
يستقبل الاتصالات ببيانات اعتماد مُنسّقة بشكل خاص، ويصادق على المستخدم محليًا، ويتصل بالهدف بنفسه، ثم يربط الطرفين معًا مع (اختياريًا) تسجيل الجلسة.
عند الاتصال عبر HTTPS، يعرض Warpgate مجموعة من الأهداف المتاحة، ثم يمرر كل حركة المرور في الجلسة إلى الهدف المحدد. يمكنك التبديل بين الأهداف في أي وقت.
تدير قوائم الأهداف والمستخدمين وتعيّنهم لبعضهم البعض عبر واجهة الإدارة، ويُخزَّن سجل الجلسات في قاعدة بيانات SQLite (افتراضيًا: في /var/lib/warpgate).
يمكنك أيضًا استخدام واجهة الويب الإدارية لعرض قائمة الجلسات المباشرة، ومراجعة تسجيلات الجلسات والسجلات والمزيد.
إفصاح عن الشفافية في استخدام الذكاء الاصطناعي
في أواخر عام 2025، بدأ هذا المشروع في قبول مساهمات بمساعدة الذكاء الاصطناعي. يُطلب من المساهمين الإفصاح عن استخدام الذكاء الاصطناعي. أعتقد أنه من خلال تطبيق نفس معيار الجودة العالي على جميع طلبات السحب (PRs)، سواء كانت بمساعدة الذكاء الاصطناعي أم لا، لا حاجة للتضحية بالجودة أو الأمان.
بما أن الذكاء الاصطناعي طيف يمتد بين هواة "vibe" المتهورين ومستخدمي الإكمال التلقائي، أعتقد أن الشفافية بشأن استخدامه تساعد في ترسيخ وتحديد مكانة الذكاء الاصطناعي في هذا المشروع.
القرارات المعمارية والأمنية في هذا المشروع بشرية 100%.
المساهمة / البناء من المصدر
- ستحتاج إلى Rust وNodeJS وNPM
- استنسخ المستودع
- يُستخدم Just لتشغيل المهام - ثبّته:
cargo install just - ثبّت تبعيات واجهة الإدارة:
just npm install - ابنِ الواجهة الأمامية:
just npm run build - ابنِ Warpgate:
cargo build(اختياريًا--release)
الملف التنفيذي موجود في target/{debug|release}.
المكدس التقني
- Rust 🦀
- HTTP:
poem-web - قاعدة البيانات: SQLite عبر
sea-orm+sqlx - SSH:
russh
- HTTP:
- Typescript
- Svelte 5
- Bootstrap