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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
graph-go — ببساطة العقد والرسوم البيانية | Kitploit
أدوات/GitHubGitHub/guilherme-grimm/graph-go
أمن البنية التحتية السحابيةأمن الحاوياتتخطيط الشبكةتدقيق التكوينDevSecOpsأمن قواعد البياناتتحليل السجلات
GitHubguilherme-grimm/graph-go

graph-go

ببساطة العقد والرسوم البيانية

عرض المستودع
124525منذ 8 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

graph-go

شاهد بنيتك التحتية. بدون أي إعدادات.

وجّه graph-go نحو مجموعتك واحصل على خريطة تفاعلية حية لكل قاعدة بيانات وجدول وخدمة ودلو تخزين — مع مراقبة صحية في الوقت الفعلي.

License: AGPL v3 graph-go showcase: Docker auto-discovery, a container appearing live, and Kubernetes swimlanes

▶ شاهده بجودة كاملة (MP4)


graph-go هو أداة رسم خرائط للبنية التحتية تعمل عبر سطر الأوامر أولاً. يكتشف بنيتك التحتية تلقائيًا من خلال الاتصال ببرنامج Docker الخفي، وفحص الحاويات قيد التشغيل، واستكشاف قواعد البيانات وخدمات التخزين. تُقدَّم واجهة المستخدم من الخادم الخلفي وتعكس حالته الفعلية — دون الحاجة إلى جرد يدوي.

القدرةالتفاصيل
الاكتشاف التلقائييكتشف البنية التحتية من حاويات Docker وعناقيد Kubernetes — دون الحاجة إلى جرد يدوي
Kubernetesمساحات الأسماء، وعمليات النشر، وStatefulSets، وDaemonSets، والحاويات (Pods)، والخدمات — مع مراقبة فورية في الوقت الفعلي قائمة على informers
Dockerيصنّف الحاويات قيد التشغيل، ويستخرج بيانات الاعتماد، ويراقب أحداث Docker، ويحترم تسميات graphgo.* لتجاوز النوع/DSN/نوع العقدة/الاسم أو تجاهل حاوية
PostgreSQLالجداول، وعلاقات المفاتيح الأجنبية، وطوبولوجيا المخطط
MongoDBقواعد البيانات والمجموعات
MySQLالجداول، وعلاقات المفاتيح الأجنبية
Redisمساحات المفاتيح وتوزيع المفاتيح
Elasticsearchالفهارس، وصحة العنقود، وحالة الشظايا
S3 / MinIOالدلاء والبادئات من المستوى الأعلى
خدمات HTTPنقاط نهاية الصحة، ورسم خرائط التبعيات بين الخدمات
الصحة في الوقت الفعليتحديثات حالة حية مدعومة بـ WebSocket كل 5 ثوانٍ
رسم بياني تفاعليتخطيط Swimlane، وحاويات تجميع مساحات الأسماء، والتحريك/التكبير، والتصفية حسب النوع/الصحة، والبحث في العقد

تسميات Docker

يحترم graph-go مجموعة صغيرة من تسميات الحاويات graphgo.* (عيّنها على أي حاوية تريد التحكم بها):

التسميةالتأثير
graphgo.ignore=trueتخطَّ هذه الحاوية بالكامل
graphgo.type=postgresفرض نوع المحوّل (postgres، mongodb، mysql، redis، elasticsearch، s3، http)
graphgo.dsn=...حقن سلسلة اتصال (DSN لـ postgres/mysql، وURI لـ mongodb، ويعود إلى dsn بخلاف ذلك)
graphgo.node-type=gatewayتجاوز نوع العقدة المرئي (service، gateway، auth، api، queue، cache)
graphgo.name=...تجاوز اسم العقدة المعروض في الرسم البياني والمستخدم في معرّفات العقد / السجلات

استخدم هذه التسميات لإنقاذ الحاويات المصنّفة خطأً، أو توجيه graph-go نحو DSN مخصص، أو إخفاء حاوية من الرسم البياني دون إزالتها.


البدء السريع — جرّبه في 30 ثانية

شغّل مجموعة العرض التجريبية المُهيّأة مسبقًا باستخدام سطر الأوامر. هذه أسرع طريقة لرؤية graph-go في بيئة واقعية، وهي مسار الإعداد المقصود للمستخدمين الجدد:

git clone https://github.com/guilherme-grimm/graph-go.git
cd graph-go
go run ./cmd/app demo

افتح http://localhost:8080. يعمل الأمر متصلاً عبر Docker Compose. اضغط Ctrl+C لإيقاف الجلسة المتصلة.

قد يستغرق التشغيل الأول عدة دقائق على جهاز بارد لأن Docker قد يحتاج إلى سحب الصور الأساسية وبناء صور العرض التجريبية المحلية. عمليات التشغيل اللاحقة أسرع بكثير.

تتوقع مجموعة العرض التجريبية أن تكون منافذ المضيف التالية متاحة: 8080، و5432، و27017، و9000، و9001.

إذا احتجت إلى تفكيك صريح بعد ذلك:

docker compose -f docker-compose.demo.yml down

التشغيل مقابل مجموعتك الخاصة

حاوية واحدة، ومنفذ واحد. اربط مقبس Docker للقراءة فقط وسيكتشف graph-go تلقائيًا كل ما يعمل على المضيف:

docker run -d -p 8080:8080 \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  ghcr.io/guilherme-grimm/graph-go:latest

يقرأ graph-go من مقبس Docker فقط. علم :ro يفرض ذلك — أبقِه.

افتح http://localhost:8080. يتولى الاكتشاف التلقائي حاويات Docker و(عند وجود kubeconfig أو حساب خدمة داخل العنقود) موارد Kubernetes دون أي ملف إعدادات.

بالنسبة للخدمات التي توجد خارج Docker/Kubernetes (قواعد بيانات بعيدة، خدمات سحابية مُدارة)، اربط ملف إعدادات — راجع الإعدادات.


ملف تنفيذي جاهز

ملف تنفيذي واحد مكتفٍ ذاتيًا — واجهة المستخدم مضمّنة، لكن نقطة الدخول لا تزال سطر الأوامر.

# Linux amd64 (requires the GitHub CLI; browse Releases for other platforms)
gh release download --repo guilherme-grimm/graph-go --pattern 'graph-go_*_linux_amd64.tar.gz' --clobber
tar xzf graph-go_*_linux_amd64.tar.gz
./graph-go serve   # or just `./graph-go` - same thing

افتح http://localhost:8080. المنصات الأخرى على صفحة الإصدارات.


الأوامر

الأمرما يفعله
graph-go demoيشغّل مجموعة العرض التجريبية المُهيّأة مسبقًا عبر Docker Compose من المستودع ويبثّ مخرجاتها في المقدمة.
graph-go serveيبدأ خادم HTTP مع الاكتشاف التلقائي والتحديثات الحية (الافتراضي - نفس التشغيل بدون وسائط).
graph-go scanينفّذ الاكتشاف مرة واحدة ويُخرج الرسم البياني بصيغة JSON إلى stdout. مفيد للتوجيه إلى jq، أو فحوصات CI، أو التصدير لمرة واحدة.
graph-go versionيطبع الإصدار، والالتزام (commit)، وتاريخ البناء.
graph-go --health-checkيستدعي /health المحلي ويخرج بـ 0/1. يُستخدم بواسطة HEALTHCHECK في الحاوية؛ وليس للاستخدام التفاعلي.

الأعلام العامة (تنطبق على كل أمر فرعي): --config، و--log-level، و--log-format. راجع graph-go <command> --help للاطلاع على السطح الكامل لكل أمر.

التدفق المعتاد:

  1. graph-go demo لجولة محلية واقعية.
  2. graph-go serve للتشغيل مقابل بنيتك التحتية الخاصة.
  3. graph-go scan للأتمتة لمرة واحدة، أو التصدير، أو فحوصات CI.

المنافذ

المنفذالغرض
8080graph-go (واجهة المستخدم + API + WebSocket — الإنتاج)
5173خادم تطوير Vite (للتطوير فقط — راجع CONTRIBUTING.md)
9001وحدة تحكم MinIO (مجموعة العرض التجريبية فقط)

الإعدادات

الاكتشاف التلقائي هو المسار. اربط مقبس Docker و/أو شغّل داخل عنقود Kubernetes — يكتشف graph-go بنيتك التحتية دون الحاجة إلى أي ملف إعدادات.

استخدم إعدادات YAML (conf/config.yaml) فقط كمخرج احتياطي للخدمات غير القابلة للوصول عبر الاكتشاف — قواعد بيانات بعيدة، خدمات سحابية مُدارة، نقاط نهاية خارجية. راجع conf/config.sample.yaml للمخطط الكامل — أمثلة لكل محوّل وكل كتلة إعدادات (server، docker، kubernetes، connections).

لاستخدام ملف إعدادات مع أمر Docker أعلاه:

docker run -d -p 8080:8080 \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  -v $(pwd)/conf/config.yaml:/app/conf/config.yaml:ro \
  ghcr.io/guilherme-grimm/graph-go:latest

للاستخدام المصرّح به فقط: graph-go مخصص لتصوّر البنية التحتية التي تملكها أو لديك إذن بالوصول إليها. لا توجّهه نحو أنظمة دون تصريح.


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

الخادم الخلفي (Go)

تنزيل الأداة