
Protocollo generico di datafeed autenticato del Honeynet Project
hpfeeds è un protocollo publish-subscribe leggero e autenticato. Ha un semplice wire-format che consente a chiunque di sottoscrivere i feed con il proprio linguaggio preferito in pochissimo tempo. I diversi feed sono separati da canali e supportano payload binari arbitrari. Ciò significa che gli utenti del canale decidono la struttura dei dati. È comune passare JSON su hpfeeds.
Questo progetto mira a fornire un broker moderno compatibile con Python 3, scritto su asyncio, oltre a un client compatibile con Python 3.
Il client principale non ha dipendenze. Puoi installarlo con pip.
pip install hpfeeds
Puoi eseguire un tail da riga di comando di un canale hpfeeds con il comando:
hpfeeds subscribe --host localhost -p 10000 -i myident -s mysecret -c mychannel
Puoi anche pubblicare un singolo evento:
hpfeeds publish --host localhost -p 10000 -i myident -s mysecret -c mychannel '{"event": "ping"}'
Puoi installare anche le dipendenze del broker con pip:
pip install hpfeeds[broker]
Puoi anche eseguire un broker con Docker:
docker run -p "0.0.0.0:20000:20000" -p "0.0.0.0:9431:9431" hpfeeds/hpfeeds-broker:latest
Le chiavi di accesso verranno memorizzate in un database sqlite in /app/var. Il client sqlite è installato nel container per gestire gli accessi. Dovresti assicurarti che /app/var sia un volume. I tuoi client possono connettersi alla porta 20000, mentre prometheus può connettersi alla porta 9431.
Ulteriore documentazione dettagliata è disponibile su https://python.hpfeeds.org.