Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
graph-go — einfach Knoten und Graphen | Kitploit
Tools/GitHubGitHub/guilherme-grimm/graph-go
Cloud-Infrastruktur-SicherheitContainer-SicherheitNetzwerkkartierungKonfigurationsprüfungDevSecOpsDatenbanksicherheitLog-Analyse
GitHubguilherme-grimm/graph-go

graph-go

einfach Knoten und Graphen

Repository anzeigen
124525vor 8 TagenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

graph-go

Sieh deine Infrastruktur. Null Konfiguration.

Richte graph-go auf deinen Stack und erhalte eine lebendige, interaktive Karte jeder Datenbank, Tabelle, jedes Dienstes und jedes Storage-Buckets — mit Echtzeit-Health-Monitoring.

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

▶ In voller Qualität ansehen (MP4)


graph-go ist ein CLI-first Infrastructure-Mapper. Es entdeckt deine Infrastruktur automatisch, indem es sich mit dem Docker-Daemon verbindet, laufende Container inspiziert und Datenbanken sowie Storage-Dienste sondiert. Die UI wird vom Backend ausgeliefert und spiegelt den echten Backend-Zustand wider — kein manuelles Inventar nötig.

FähigkeitDetails
Auto-DiscoveryErkennt Infrastruktur aus Docker-Containern und Kubernetes-Clustern — kein manuelles Inventar nötig
KubernetesNamespaces, Deployments, StatefulSets, DaemonSets, Pods, Services — mit informer-basiertem Echtzeit-Watching
DockerKlassifiziert laufende Container, extrahiert Credentials, überwacht Docker-Events, respektiert graphgo.*-Labels zum Überschreiben von Typ/DSN/Node-Typ/Name oder zum Ignorieren eines Containers
PostgreSQLTabellen, Fremdschlüsselbeziehungen, Schema-Topologie
MongoDBDatenbanken und Collections
MySQLTabellen, Fremdschlüsselbeziehungen
RedisKeyspaces und Key-Verteilung
ElasticsearchIndizes, Cluster-Health, Shard-Status
S3 / MinIOBuckets und Top-Level-Präfixe
HTTP-DiensteHealth-Endpunkte, Dependency-Mapping zwischen Diensten
Echtzeit-HealthWebSocket-gestützte Live-Status-Updates alle 5 Sekunden
Interaktiver GraphSwimlane-Layout, Namespace-Gruppencontainer, Pan/Zoom, Filter nach Typ/Health, Knotensuche

Docker-Labels

graph-go respektiert eine kleine Auswahl an graphgo.*-Container-Labels (setze sie auf jedem Container, den du steuern möchtest):

LabelWirkung
graphgo.ignore=trueDiesen Container vollständig überspringen
graphgo.type=postgresDen Adapter-Typ erzwingen (postgres, mongodb, mysql, redis, elasticsearch, s3, http)
graphgo.dsn=...Einen Connection-String injizieren (DSN für postgres/mysql, URI für mongodb, fällt andernfalls auf dsn zurück)
graphgo.node-type=gatewayDen visuellen Knotentyp überschreiben (service, gateway, auth, api, queue, cache)
graphgo.name=...Den im Graphen angezeigten Knotennamen überschreiben, der in Knoten-IDs / Logs verwendet wird

Nutze diese, um falsch klassifizierte Container zu retten, graph-go auf einen benutzerdefinierten DSN zu richten oder einen Container vor dem Graphen zu verbergen, ohne ihn zu entfernen.


Schnellstart — in 30 Sekunden ausprobieren

Starte den vorbefüllten Demo-Stack mit der CLI. Dies ist der schnellste Weg, graph-go gegen eine realistische Umgebung zu sehen, und der vorgesehene Einstiegspfad für Erstnutzer:

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

Öffne http://localhost:8080. Der Befehl läuft angehängt über Docker Compose. Drücke Ctrl+C, um die angehängte Sitzung zu beenden.

Der erste Lauf kann auf einer kalten Maschine mehrere Minuten dauern, da Docker möglicherweise Basis-Images pullen und die lokalen Demo-Images bauen muss. Spätere Läufe sind deutlich schneller.

Der Demo-Stack erwartet, dass diese Host-Ports frei sind: 8080, 5432, 27017, 9000 und 9001.

Wenn du danach ein explizites Teardown benötigst:

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

Gegen deinen eigenen Stack ausführen

Ein Container, ein Port. Binde den Docker-Socket read-only ein und graph-go entdeckt automatisch alles, was auf dem Host läuft:

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 liest nur vom Docker-Socket. Das :ro-Flag erzwingt dies — behalte es bei.

Öffne http://localhost:8080. Auto-Discovery übernimmt Docker-Container und (wenn ein kubeconfig oder ein In-Cluster-Service-Account vorhanden ist) Kubernetes-Ressourcen ohne jegliche Konfigurationsdatei.

Für Dienste, die außerhalb von Docker/Kubernetes liegen (Remote-Datenbanken, verwaltete Cloud-Dienste), binde eine Konfigurationsdatei ein — siehe Konfiguration.


Vorgefertigtes Binary

Einzelnes, eigenständiges Binary — die UI ist eingebettet, aber der Einstiegspunkt ist weiterhin die CLI.

# 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

Öffne http://localhost:8080. Andere Plattformen auf der Releases-Seite.


Befehle

BefehlWas er tut
graph-go demoStartet den vorbefüllten Docker-Compose-Demo-Stack aus dem Repository und streamt dessen Ausgabe im Vordergrund.
graph-go serveStartet den HTTP-Server mit Auto-Discovery und Live-Updates (Standard — dasselbe wie der Aufruf ohne Argumente).
graph-go scanFührt die Discovery einmalig aus und gibt den Graphen als JSON auf stdout aus. Nützlich zum Weiterleiten an jq, für CI-Checks oder einmalige Exporte.
graph-go versionGibt Version, Commit und Build-Datum aus.
graph-go --health-checkRuft das lokale /health auf und beendet mit 0/1. Wird vom Container-HEALTHCHECK verwendet; nicht für interaktive Nutzung.

Globale Flags (gelten für jeden Subcommand): --config, --log-level, --log-format. Siehe graph-go <command> --help für die vollständige pro-Befehl-Oberfläche.

Typischer Ablauf:

  1. graph-go demo für einen realistischen lokalen Durchlauf.
  2. graph-go serve, um gegen deine eigene Infrastruktur zu laufen.
  3. graph-go scan für einmalige Automatisierung, Exporte oder CI-Checks.

Ports

PortZweck
8080graph-go (UI + API + WebSocket — Produktion)
5173Vite Dev-Server (nur Entwicklung — siehe CONTRIBUTING.md)
9001MinIO-Konsole (nur Demo-Stack)

Konfiguration

Auto-Discovery ist der Weg. Binde den Docker-Socket ein und/oder laufe innerhalb eines Kubernetes-Clusters — graph-go entdeckt deine Infrastruktur mit ohne Konfigurationsdatei.

Verwende die YAML-Konfiguration (conf/config.yaml) nur als Notausgang für Dienste, die nicht über Discovery erreichbar sind — Remote-Datenbanken, verwaltete Cloud-Dienste, externe Endpunkte. Siehe conf/config.sample.yaml für das vollständige Schema — Beispiele für jeden Adapter und jeden Konfigurationsblock (server, docker, kubernetes, connections).

Um eine Konfigurationsdatei mit dem obigen Docker-Lauf zu verwenden:

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

Nur autorisierte Nutzung: graph-go dient der Visualisierung von Infrastruktur, die dir gehört oder auf die du Zugriff hast. Richte es nicht auf Systeme ohne Autorisierung.


Architekturüberblick

Backend (Go)

Tool herunterladen