Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
zttp — جسر SSH حصين بنموذج الثقة المعدومة (Zero-trust) مع إدارة مفاتيح مدعومة من Vault، وفرض سياسات RBAC، وتسجيل كامل للجلسات، وواجهة TUI إدارية للوصول القابل للتدقيق إلى البنية التحتية للإنتاج. | Kitploit
أدوات/GitLabGitLab/nihal799/zttp
المصادقة والترخيصأمن البنية التحتية السحابيةأدوات دفاعيةأمن الشبكاتDevSecOpsإدارة الهوية والوصول (IAM)
GitLabnihal799/zttp

zttp

جسر SSH حصين بنموذج الثقة المعدومة (Zero-trust) مع إدارة مفاتيح مدعومة من Vault، وفرض سياسات RBAC، وتسجيل كامل للجلسات، وواجهة TUI إدارية للوصول القابل للتدقيق إلى البنية التحتية للإنتاج.

عرض المستودع
111منذ 12 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
الموقع الإلكتروني

ZTTP: وكيل SSH القلعة بثقة صفرية

🔗 مرايا المشروع: GitHub | GitLab

ZTTP هو وكيل SSH قلعة مُحصّن ذاتي الاستضافة بثقة صفرية مبني بلغة Golang مع إدارة مفاتيح مدعومة من HashiCorp Vault، وتطبيق سياسات RBAC، وتسجيل كامل للجلسات، وواجهة TUI إدارية تفاعلية — مصمم للفرق التي تحتاج إلى وصول قابل للتدقيق وبثقة صفرية إلى البنية التحتية للإنتاج.


جدول المحتويات

  • لماذا ZTTP
  • نظرة عامة على البنية
  • أبرز الميزات
  • المتطلبات الأساسية
  • البدء السريع — الخادم
  • البدء السريع — العميل
  • الإعدادات
  • الأدوار وسياسة RBAC
  • وحدة تحكم المسؤول
  • سجلات التدقيق وتسجيلات الجلسات
  • البناء من المصدر
  • مرجع Makefile
  • لقطات الشاشة والعرض التوضيحي
  • هيكل المشروع
  • نموذج الأمان
  • المساهمة
  • الترخيص

لماذا ZTTP

تحتاج فرق الهندسة الحديثة إلى طريقة لمنح المطورين الحد الأدنى من الوصول المطلوب لأداء مهامهم — لا أكثر ولا أقل. توزيع مفاتيح SSH التقليدي عرضة للأخطاء: تُشارَك المفاتيح، وتُنسى على الحواسيب المحمولة، وتُلغى بعد أيام متأخرة جدًا.

يعالج وكيل ZTTP SSH هذه المشكلة من خلال العمل كـ البوابة الوحيدة ذات الثقة الصفرية إلى بنيتك التحتية:

المشكلةحل ZTTP
مفاتيح SSH مُشاركة على الحواسيب المحمولةالمفاتيح موجودة فقط في HashiCorp Vault — لا تُخزَّن على القرص أبدًا
لا رؤية لمن فعل ماذاكل ضغطة مفتاح تُسجَّل بصيغة .ttyrec
وصول مطلق إلى الإنتاجمحرك سياسات قائم على الأدوار يفرض قواعد لكل بيئة
لا وسيلة لإيقاف جلسة نشطةنقطة نهاية gRPC لمفتاح الإيقاف تُنهي أي جلسة حية
وصول غامض للمدققينواجهة TUI إدارية مع إعادة تشغيل الجلسات، وسجلات نصية، وسجلات إجراءات المسؤول

نظرة عامة على البنية

Developer Laptop
      │
      │  zttp
      │  (Under the hood: SSH over port 2224)
      ▼
┌─────────────────────────────────────────────────────────┐
│                     ZTTP Proxy                          │
│                                                         │
│  ① Auth Gate     — bcrypt/Argon2id login TUI           │
│  ② RBAC Engine   — environment-aware policy check      │
│  ③ Vault Fetch   — ephemeral SSH key retrieval         │
│  ④ Bridge        — transparent TCP tunnel              │
│  ⑤ Audit Writer  — ttyrec frame recorder               │
└──────────┬──────────────────────────────────────────────┘
           │  ssh (private IP, ephemeral key)
           ▼
     Target Server

خدمات البنية التحتية (Docker Compose):

الخدمةالغرض
zttp-proxyوكيل حصن SSH الأساسي ZTTP (ملف Golang التنفيذي)
zttp-postgresقاعدة بيانات مستوى التحكم (المستخدمون، الخوادم، سياسات RBAC)
zttp-vaultHashiCorp Vault — يخزّن مفاتيح SSH الخاصة
zttp-nginxيقدّم مثبّتات CLI على المسار /release/
zttp-init-auditحاوية تُنفَّذ مرة واحدة لإصلاح أذونات وحدة التخزين

أبرز الميزات

  • 🔐 مصادقة الثقة الصفرية — واجهة تسجيل دخول SSH تفاعلية (TUI) مع تجزئة كلمات المرور بـ bcrypt، وتحديد معدل الطلبات، وقفل الحساب بعد 5 محاولات فاشلة
  • 🛡️ محرك سياسات RBAC — تحكم في الوصول لكل دور ولكل بيئة عبر JOIN واحد محسّن في PostgreSQL (دون رحلات ذهاب وإياب)
  • 🗝️ مفاتيح SSH المدعومة بـ Vault — لا تلمس المفاتيح الخاصة القرص أبدًا؛ تُجلب مؤقتًا لكل جلسة من HashiCorp Vault
  • 📹 تسجيل كامل للجلسات — تُسجَّل جميع الجلسات بصيغة .ttyrec مع إطارات مختومة بالطوابع الزمنية
  • 🖥️ واجهة إدارية تفاعلية (Admin TUI) — واجهة طرفية كاملة لإدارة المستخدمين، وتسجيل الخوادم، ومنح الوصول، ومراجعة السجلات
  • 🔍 عارض سجلات التدقيق — تصفّح الجلسات حسب الخادم، أو أعد تشغيل التسجيلات، أو اقرأ سجلات نصية نظيفة مباشرة من وحدة تحكم الإدارة
  • ⚡ مفتاح الإيقاف (Kill Switch) — نقطة نهاية gRPC لإنهاء أي جلسة نشطة فورًا
  • 📋 سجل إجراءات الإدارة — يُسجَّل كل إجراء إداري (إنشاء مستخدم، منح وصول، عرض سجلات) في مسار تدقيق دائم
  • 🌍 عميل متعدد المنصات — أداة CLI بملف تنفيذي واحد لـ Linux وmacOS (amd64/arm64) وWindows

المتطلبات الأساسية

الخادم (مضيف الوكيل):

  • Docker ≥ 24 وDocker Compose ≥ 2.20
  • عنوان IP عام أو متاح على الشبكة المحلية على المنفذ 2224
  • make (اختياري، لكنه موصى به)

المطوّر (العميل):

  • أي عميل SSH (أمر ssh)
  • جهاز يعمل بـ Linux أو macOS أو Windows

البدء السريع — الخادم

1. استنساخ المستودع

git clone https://gitlab.com/Nihal799/zttp.git
cd zttp

2. قم بتكوين بيئتك

cp .env.example .env

حرّر ملف .env واضبط على الأقل:

PROXY_NODE_IP=<your-server-public-ip>
POSTGRES_PASSWORD=<a-strong-password>
VAULT_TOKEN=<a-strong-vault-token>

⚠️ لا تُودِع ملف .env الخاص بك في المستودع أبدًا. فهو مُدرج في .gitignore.

3. تشغيل جميع الخدمات

make docker-up
# or directly:
docker compose -f deploy/docker-compose.yml up -d --build

4. تحقق من أن الخدمات سليمة

make docker-ps
curl http://localhost:8080/healthz

5. بناء ونشر مثبتات CLI

make release PROXY_ADDR=<your-server-ip>:2224

يقوم هذا بالترجمة المتقاطعة للعملاء لجميع المنصات ويحدّث تلقائيًا dist/install.sh وdist/install.ps1 بعنوان URL الصحيح للخادم. توفّر حاوية Nginx هذه الملفات على http://<your-server-ip>:8555/.


البدء السريع — العميل

Linux / macOS

curl -fsSL http://<proxy-ip>:8555/install.sh | bash

Windows (PowerShell، يُشغَّل كمسؤول)

irm http://<proxy-ip>:8555/install.ps1 | iex

الاتصال

بعد التثبيت، اتصل ببوابة ZTTP:

zttp
# or directly:
ssh -p 2224 <your-username>@<proxy-ip>

ستظهر لك شاشة تسجيل دخول طرفية. بعد المصادقة، سترى قائمة بالخوادم المصرح لك بالوصول إليها.


الإعدادات

تتم جميع الإعدادات عبر متغيرات البيئة (أو ملف .env). راجع .env.example للمرجع الكامل.

المتغيرالقيمة الافتراضيةالوصف
PROXY_LISTEN_ADDR0.0.0.0:2222عنوان ربط وكيل SSH
HTTP_LISTEN_ADDR0.0.0.0:8080عنوان HTTP لفحص الحالة
GRPC_LISTEN_ADDR0.0.0.0:9090عنوان gRPC لمفتاح الإيقاف
PROXY_NODE_IP127.0.0.1عنوان IP الخارجي المضمّن في ثنائيات CLI
DATABASE_URLpostgres://zttp:...سلسلة اتصال PostgreSQL
VAULT_ADDRhttp://localhost:8201عنوان URL لخادم Vault
VAULT_TOKENdev-root-token-zttpرمز Vault الجذر (للتطوير فقط — استخدم AppRole في الإنتاج)
MAX_FAILED_ATTEMPTS5حد القفل
LOCKOUT_DURATION15mمدة قفل الحساب
RATE_LIMIT_PER_MIN10الحد الأقصى لمحاولات تسجيل الدخول في الدقيقة لكل IP
AUDIT_LOG_DIR/var/log/zttp/auditالمسار إلى دليل تسجيل الجلسات
SOC_WEBHOOK_URL(فارغ)webhook اختياري لتنبيهات SOC

الأدوار وسياسة RBAC

يستخدم ZTTP نموذجًا قائمًا على الأدوار. يُسنَد لكل مستخدم دور؛ ولكل دور سياسة تحدد بيئات الخوادم التي يمكنه الوصول إليها.

الدورالوصول
security-adminوصول كامل إلى جميع البيئات + وحدة تحكم المسؤول
sre-tier1جميع البيئات بما في ذلك الإنتاج
sre-tier2بيئتا الاختبار والتطوير فقط
devبيئة التطوير فقط
readonlyبيئة التطوير، مع مجموعة أوامر مقيّدة

تُدار الأدوار وتعيينات الخوادم عبر وحدة تحكم المسؤول (انظر أدناه). ينفّذ محرك RBAC جميع الفحوصات في استعلام PostgreSQL واحد — ولا يكشف أبدًا سبب رفض الوصول للعميل (حماية من الاستنطاق).


وحدة تحكم المسؤول

اتصل بخادم zttp-admin من قائمة البوابة، أو سجّل الدخول بحساب يحمل دور security-admin.

توفّر وحدة تحكم المسؤول ما يلي:

تنزيل الأداة