Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
graph-go — Semplicemente nodi e grafi | Kitploit
Strumenti/GitHubGitHub/guilherme-grimm/graph-go
Sicurezza dell'Infrastruttura CloudSicurezza dei ContenitoriMappatura della ReteAudit di ConfigurazioneDevSecOpsSicurezza dei DatabaseAnalisi dei Log
GitHubguilherme-grimm/graph-go

graph-go

Semplicemente nodi e grafi

Vedi Repository
1245211 mese faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

graph-go

Vedi la tua infrastruttura. Zero Config.

Punta graph-go sul tuo stack e ottieni una mappa interattiva e live di ogni database, tabella, servizio e bucket di storage — con monitoraggio dello stato in tempo reale.

License: AGPL v3 graph-go demo


graph-go è un mapper di infrastruttura CLI-first. Scopre automaticamente la tua infrastruttura connettendosi al demone Docker, ispezionando i container in esecuzione e sondando database e servizi di storage. L'interfaccia utente è servita dal backend e riflette lo stato reale del backend — nessun inventario manuale necessario.

CapacitàDettagli
Auto-scopertaRileva l'infrastruttura dai container Docker e dai cluster Kubernetes — nessun inventario manuale necessario
KubernetesNamespace, Deployments, StatefulSets, DaemonSets, Pods, Services — con osservazione in tempo reale basata su informer
DockerClassifica i container in esecuzione, estrae le credenziali, osserva gli eventi Docker, rispetta le label graphgo.* per sovrascrivere tipo/DSN/tipo-nodo/nome o ignorare un container
PostgreSQLTabelle, relazioni di chiave esterna, topologia dello schema
MongoDBDatabase e collezioni
MySQLTabelle, relazioni di chiave esterna
RedisKeyspaces e distribuzione delle chiavi
ElasticsearchIndici, stato del cluster, stato degli shard
S3 / MinIOBucket e prefissi di primo livello
Servizi HTTPEndpoint di health, mappatura delle dipendenze tra servizi
Stato in tempo realeAggiornamenti live tramite WebSocket ogni 5 secondi
Grafico interattivoLayout a corsie, contenitori di gruppo per namespace, pan/zoom, filtro per tipo/stato, ricerca nodi

Label Docker

graph-go rispetta un piccolo insieme di label container graphgo.* (impostale su qualsiasi container che vuoi controllare):

LabelEffetto
graphgo.ignore=trueSalta completamente questo container
graphgo.type=postgresForza il tipo di adapter (postgres, mongodb, mysql, redis, elasticsearch, s3, http)
graphgo.dsn=...Inietta una stringa di connessione (DSN per postgres/mysql, URI per mongodb, altrimenti usa dsn)
graphgo.node-type=gatewaySovrascrive il tipo di nodo visivo (service, gateway, auth, api, queue, cache)
graphgo.name=...Sovrascrive il nome del nodo mostrato nel grafico e usato negli ID dei nodi / log

Usale per recuperare container classificati male, puntare graph-go verso un DSN personalizzato o nascondere un container dal grafico senza rimuoverlo.


Avvio rapido — provalo in 30 secondi

Avvia lo stack demo preconfigurato con il CLI. Questo è il modo più veloce per vedere graph-go in un ambiente realistico ed è il percorso di onboarding previsto per i nuovi utenti:

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

Apri http://localhost:8080. Il comando viene eseguito in primo piano tramite Docker Compose. Premi Ctrl+C per fermare la sessione.

La prima esecuzione può richiedere diversi minuti su una macchina "fredda" perché Docker potrebbe dover scaricare le immagini di base e costruire le immagini demo locali. Le esecuzioni successive sono molto più veloci.

Lo stack demo richiede che queste porte host siano libere: 8080, 5432, 27017, 9000 e 9001.

Se hai bisogno di un abbattimento esplicito in seguito:

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

Esegui contro il tuo stack

Un container, una porta. Monta il socket Docker in sola lettura e graph-go scopre automaticamente tutto ciò che è in esecuzione sull'host:

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 legge solo dal socket Docker. Il flag :ro lo impone — mantienilo.

Apri http://localhost:8080. L'auto-scoperta gestisce i container Docker e (quando è presente un kubeconfig o un account di servizio in-cluster) le risorse Kubernetes senza alcun file di configurazione.

Per servizi che vivono al di fuori di Docker/Kubernetes (database remoti, servizi cloud gestiti), monta un file di configurazione — vedi Configurazione.


Binario precompilato

Singolo binario autonomo — l'interfaccia utente è inclusa, ma il punto di ingresso è sempre il CLI.

# Linux amd64 (richiede il CLI di GitHub; cerca nella sezione Releases altre piattaforme)
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   # oppure `./graph-go` - fa la stessa cosa

Apri http://localhost:8080. Altre piattaforme nella pagina Releases.


Comandi

ComandoCosa fa
graph-go demoAvvia lo stack demo Docker Compose preconfigurato dal repository e ne mostra l'output in primo piano.
graph-go serveAvvia il server HTTP con auto-scoperta e aggiornamenti live (predefinito - equivale a eseguire senza argomenti).
graph-go scanEsegue una scoperta una tantum e restituisce il grafico come JSON su stdout. Utile per pipeline in jq, controlli CI o esportazioni monouso.
graph-go versionStampa versione, commit e data di build.
graph-go --health-checkChiama il /health locale ed esce con 0/1. Usato dal HEALTHCHECK del container; non per uso interattivo.

Flag globali (si applicano a ogni sottocomando): --config, --log-level, --log-format. Vedi graph-go <comando> --help per la superficie completa di ogni comando.

Flusso tipico:

  1. graph-go demo per una dimostrazione realistica locale.
  2. graph-go serve per eseguire sulla tua infrastruttura.
  3. graph-go scan per automazione una tantum, esportazioni o controlli CI.

Porte

PortaScopo
8080graph-go (UI + API + WebSocket — produzione)
5173Server di sviluppo Vite (solo sviluppo — vedi CONTRIBUTING.md)
9001Console MinIO (solo stack demo)

Configurazione

L'auto-scoperta è la via maestra. Monta il socket Docker e/o esegui all'interno di un cluster Kubernetes — graph-go scopre la tua infrastruttura senza bisogno di file di configurazione.

Usa il file di configurazione YAML (conf/config.yaml) solo come valvola di sfogo per servizi non raggiungibili tramite scoperta — database remoti, servizi cloud gestiti, endpoint esterni. Vedi conf/config.sample.yaml per lo schema completo — esempi per ogni adapter e ogni blocco di configurazione (server, docker, kubernetes, connections).

Per usare un file di configurazione con il comando Docker sopra:

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

Uso autorizzato solo: graph-go è per visualizzare infrastrutture di tua proprietà o per cui hai permesso di accesso. Non puntarlo su sistemi senza autorizzazione.


Panoramica dell'Architettura

Backend (Go)

Scarica lo strumento