
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 bros" عديمي الفائدة ومستخدمي الإكمال التلقائي، أعتقد أن الشفافية بشأن استخدامه تساعد في تحديد مكان الذكاء الاصطناعي في هذا المشروع والحد منه.
القرارات المعمارية والأمنية في هذا المشروع هي 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
واجهة برمجة التطبيقات الخلفية
- تستخدم واجهات برمجة التطبيقات الخاصة بإدارة Warpgate والموجهة للمستخدمين مخططات OpenAPI وSDKs مولدة تلقائيًا. لتحديث الـ SDKs بعد تغيير هياكل الاستعلام/الاستجابة، شغّل
just openapi-all.
المساهمون ✨
الشكر موصول لهؤلاء الأشخاص الرائعين (مفتاح الرموز التعبيرية):
يتبع هذا المشروع مواصفات all-contributors. نرحب بأي نوع من المساهمات!































