Il monitoraggio della rete è una componente critica di qualsiasi infrastruttura IT moderna, essenziale per garantire performance ottimali e identificare tempestivamente minacce alla sicurezza. Tuttavia, le soluzioni tradizionali basate su agenti possono introdurre overhead significativi, complessità di deployment e problemi di compatibilità, specialmente in ambienti con migliaia di endpoint o VM. Gods-Eye-View si propone come un’alternativa innovativa, sfruttando la tecnologia eBPF (extended Berkeley Packet Filter) per offrire una visibilità profonda del traffico di rete direttamente dal kernel Linux, senza la necessità di installare agenti sui server. Questo approccio garantisce un monitoraggio leggero, sicuro e altamente performante, ideale per scenari enterprise dove ogni millisecondo conta e la stabilità del sistema è prioritaria.
Testato su: Ubuntu 22.04 LTS · Kernel Linux 5.15.0-107 · Settembre 2026
Prerequisiti / Ambiente di test
Per utilizzare Gods-Eye-View, è essenziale disporre di un sistema con un kernel Linux versione 4.9 o superiore. La tecnologia eBPF, infatti, è stata introdotta e poi estesa in queste versioni del kernel, rendendo possibile l’esecuzione di programmi user-defined in uno spazio sandbox all’interno del kernel stesso. È necessario avere installati i tool di sviluppo essenziali per compilare il progetto, come clang, llvm, make e le linux-headers corrispondenti alla versione del kernel in uso. È fondamentale che le linux-headers corrispondano esattamente alla versione del kernel, altrimenti la compilazione dei programmi eBPF fallirà. Leggi anche: Terraform Guida Italiana Linux: Infrastruttura come Codice in 30 Minuti (2026).
sudo apt update
sudo apt install build-essential clang llvm libelf-dev linux-headers-$(uname -r) git make
1. Comprendere eBPF e Gods-Eye-View
eBPF è una tecnologia rivoluzionaria che permette di eseguire programmi in uno spazio limitato all’interno del kernel Linux. Questi programmi possono agganciarsi a vari punti di esecuzione del kernel (eventi di rete, chiamate di sistema, probe kernel e user-space) per raccogliere dati, filtrare eventi o modificare il comportamento del sistema, tutto senza dover ricompilare il kernel o caricare moduli kernel tradizionali. Il vantaggio principale è l’efficienza: i programmi eBPF vengono verificati per sicurezza e terminazione prima di essere caricati, garantendo stabilità e un overhead minimo.
Gods-Eye-View sfrutta questa capacità per monitorare il traffico di rete. Invece di intercettare i pacchetti a livello user-space (come fanno molti tool tradizionali) o installare un agente che consuma risorse, Gods-Eye-View inserisce programmi eBPF nel kernel che intercettano gli eventi di rete (come connect, accept, sendmsg, recvmsg). Questi programmi raccolgono metadati essenziali sulle connessioni e sul traffico, che vengono poi passati a un’applicazione user-space per l’analisi e la visualizzazione. Questo approccio è particolarmente vantaggioso in ambienti ad alta densità come i cluster Kubernetes o le infrastrutture di virtualizzazione con centinaia di VM, dove l’aggiunta di agenti tradizionali su ogni istanza sarebbe proibitiva in termini di risorse e gestione.
2. Installazione e Compilazione
Il processo di installazione di Gods-Eye-View è relativamente semplice, trattandosi di un progetto open-source da compilare. Si inizia clonando il repository GitHub e poi si procede con la compilazione.
git clone https://github.com/bilawalsidhu/gods-eye-view.git
cd gods-eye-view
make
Durante la compilazione, il comando make si occuperà di compilare sia il programma eBPF (il bpf_program.o) sia l’applicazione user-space (gods-eye-view) che interagirà con esso. Eventuali errori in questa fase sono spesso legati a dipendenze mancanti (clang, llvm, libelf-dev) o a una discrepanza tra le versioni delle linux-headers e il kernel in esecuzione.
3. Esecuzione e Utilizzo Base
Una volta compilato, Gods-Eye-View può essere eseguito con i privilegi di root, necessari per caricare i programmi eBPF nel kernel. L’applicazione user-space si connetterà al programma eBPF e inizierà a ricevere i dati di monitoraggio.
sudo ./gods-eye-view
All’avvio, il tool mostrerà un output simile a questo (l’output esatto può variare a seconda del traffico di rete presente sul sistema):
[INFO] Initializing eBPF program...
[INFO] eBPF program loaded successfully.
[INFO] Starting network monitoring...
[NEW CONN] PID: 1234, Comm: 'nginx', Saddr: 192.168.1.10:443, Daddr: 10.0.0.5:54321
[DATA TX] PID: 1234, Comm: 'nginx', Bytes: 1024, Daddr: 10.0.0.5:54321
[DATA RX] PID: 5678, Comm: 'curl', Bytes: 512, Saddr: 10.0.0.5:54321
[CLOSE CONN] PID: 1234, Comm: 'nginx', Saddr: 192.168.1.10:443, Daddr: 10.0.0.5:54321
Questo output fornisce informazioni in tempo reale su nuove connessioni (NEW CONN), traffico in trasmissione (DATA TX), traffico in ricezione (DATA RX) e chiusura delle connessioni (CLOSE CONN). Per ogni evento, vengono mostrati il Process ID (PID), il nome del comando (Comm), gli indirizzi IP e le porte sorgente e destinazione. Questa granularità è estremamente utile per il debugging di rete, l’identificazione di processi che generano traffico inatteso o per monitorare l’attività di applicazioni specifiche. Leggi anche: Wireshark per SysAdmin: Analizzare il Traffico di Rete in 20 Minuti (2026).
4. Analisi Avanzata e Integrazione
Gods-Eye-View offre un output testuale che può essere facilmente parsato e integrato con altri strumenti. Per esempio, l’output può essere reindirizzato a un file o a un tool di analisi log come grep, awk o jq (se convertito in JSON, cosa che richiederebbe una modifica del codice sorgente) per estrarre informazioni specifiche. In un ambiente di produzione, si potrebbe pensare a un wrapper Python o Bash che cattura l’output e lo invia a un SIEM (Security Information and Event Management) o a una piattaforma di observability come Grafana Loki o Elastic Stack per analisi a lungo termine e alertistica. Leggi anche: Wazuh SIEM + EDR: Endpoint Security Resiliente — Guida Completa (2026).
Un esempio di reindirizzamento semplice:
sudo ./gods-eye-view > network_traffic.log &
Questo comando avvia Gods-Eye-View in background e reindirizza tutto l’output al file network_traffic.log. Si può poi analizzare questo file con strumenti standard di linea di comando.
Errori comuni e troubleshooting
Error loading BPF program: Operation not permitted: Questo errore indica che il programma non ha i permessi necessari per caricare i programmi eBPF nel kernel. Assicurati di eseguirlo consudoo come utenteroot.Error: No such file or directorydurante la compilazione: Controlla di avere installato lelinux-headerscorrette per la tua versione del kernel.uname -rti darà la versione esatta.- Output vuoto o incompleto: Verifica che ci sia effettivamente traffico di rete sul sistema. Gods-Eye-View monitora il traffico in tempo reale. Potrebbe anche esserci un problema di compatibilità specifica con la tua versione del kernel, in tal caso consulta la documentazione ufficiale di eBPF per la tua versione Linux. Controlla anche i log di sistema (
dmesg) per eventuali errori relativi a eBPF.
FAQ — Domande Frequenti
Gods-Eye-View può sostituire un SIEM o un EDR?
No, Gods-Eye-View è uno strumento di monitoraggio di rete a basso livello, eccellente per ottenere visibilità granulare sul traffico. Un SIEM (Security Information and Event Management) è una piattaforma più ampia che raccoglie e correla log da molteplici fonti, mentre un EDR (Endpoint Detection and Response) si concentra sulla protezione degli endpoint. Gods-Eye-View può essere una fonte preziosa di dati per un SIEM, ma non li sostituisce.
Qual è l’overhead di Gods-Eye-View?
Grazie all’efficienza di eBPF, l’overhead è estremamente basso, nell’ordine di pochi millisecondi di latenza o una minima percentuale di utilizzo CPU, anche in presenza di traffico elevato. Questo lo rende ideale per ambienti di produzione dove le performance sono critiche.
È compatibile con tutte le distribuzioni Linux?
Sì, Gods-Eye-View è compatibile con qualsiasi distribuzione Linux che abbia un kernel versione 4.9 o superiore e che supporti eBPF. Questo include le versioni recenti di Ubuntu, CentOS, Debian, Fedora e altre. La chiave è la versione del kernel, non la distribuzione specifica.
Posso filtrare il traffico monitorato?
Nella versione attuale, l’output è abbastanza grezzo. Per filtrare è necessario parsare l’output con strumenti esterni (come grep). Modifiche al codice sorgente eBPF potrebbero permettere filtri più avanzati direttamente nel kernel, riducendo ulteriormente l’overhead di elaborazione.
Conclusioni con takeaway operativi
Gods-Eye-View rappresenta un passo avanti significativo nel monitoraggio di rete, offrendo una soluzione potente e leggera basata su eBPF. La sua capacità di fornire visibilità profonda senza agenti lo rende uno strumento prezioso per i team SecOps e SysAdmin. Per chi gestisce infrastrutture complesse, l’adozione di Gods-Eye-View può migliorare drasticamente la capacità di diagnosticare problemi di rete, rilevare anomalie e ottimizzare le performance, il tutto con un impatto minimo sulle risorse. È un ottimo esempio di come le moderne tecnologie del kernel Linux stiano rivoluzionando il modo in cui monitoriamo e proteggiamo i nostri sistemi.
Fonti
Aggiornato: settembre 2026