
⭐ ⭐ tcpdump distribuito per ambienti cloud native ⭐ ⭐
Deepfence PacketStreamer è uno strumento di cattura e raccolta di pacchetti remoto ad alte prestazioni. Viene utilizzato dalla piattaforma di osservabilità della sicurezza ThreatStryker di Deepfence per raccogliere traffico di rete su richiesta dai carichi di lavoro cloud per analisi forensi.
Obiettivi di progettazione principali:
I sensori PacketStreamer vengono avviati sui server di destinazione. I sensori catturano il traffico, applicano filtri e quindi trasmettono il traffico a un ricevitore centrale. I flussi di traffico possono essere compressi e/o crittografati utilizzando TLS.
Il ricevitore PacketStreamer accetta flussi PacketStreamer da più sensori remoti e scrive i pacchetti in un file di cattura pcap locale.

I sensori PacketStreamer raccolgono pacchetti di rete grezzi su host remoti. Selezionano i pacchetti da catturare utilizzando un filtro BPF e li inoltrano a un processo ricevitore centrale dove vengono scritti in formato pcap. I sensori sono molto leggeri e hanno un impatto minimo sulle prestazioni degli host remoti. I sensori PacketStreamer possono essere eseguiti su server bare-metal, su host Docker e su nodi Kubernetes.
Il ricevitore PacketStreamer accetta traffico di rete da più sensori, raccogliendolo in un unico file pcap centrale. È quindi possibile elaborare il file pcap o alimentare in tempo reale il traffico verso gli strumenti di propria scelta, come Zeek, Wireshark, Suricata, o come flusso live per modelli di Machine Learning.
PacketStreamer soddisfa casi d'uso più generali rispetto alle alternative esistenti. Ad esempio, usa PacketStreamer se hai bisogno di un metodo leggero ed efficiente per raccogliere dati di rete grezzi da più macchine per la registrazione e l'analisi centralizzata.
Per istruzioni complete, consulta la Documentazione di PacketStreamer.
Dovrai installare la toolchain di golang e libpcap-dev prima di compilare PacketStreamer.
# Pre-requisites (Ubuntu): sudo apt install golang-go libpcap-dev
git clone https://github.com/deepfence/PacketStreamer.git
cd PacketStreamer/
make
Esegui un ricevitore PacketStreamer, in ascolto sulla porta 8081 e con output pcap scritto su /tmp/dump_file (vedi receiver.yaml):
./packetstreamer receiver --config ./contrib/config/receiver.yaml
Esegui uno o più sensori PacketStreamer su host locali e remoti. Modifica l'indirizzo del server in sensor.yaml:
# run on the target hosts to capture and forward traffic
# copy and edit the sample sensor-local.yaml file, and add the address of the receiver host
cp ./contrib/config/sensor-local.yaml ./contrib/config/sensor.yaml
./packetstreamer sensor --config ./contrib/config/sensor.yaml
Grazie per aver usato PacketStreamer.
Per qualsiasi problema relativo alla sicurezza nel progetto PacketStreamer, contatta productsecurity at deepfence dot io.
Segnala eventuali problemi su GitHub secondo necessità e unisciti al canale Slack della community Deepfence Slack channel.
Il progetto Deepfence PacketStreamer (questo repository) è offerto sotto la licenza Apache2.
I contributi al progetto Deepfence PacketStreamer sono accettati anch'essi sotto la licenza Apache2, secondo la politica inbound=outbound di GitHub.