
Installa e configura un sensore honeypot DShield su Raspberry Pi o Ubuntu, eseguendo honeypot Cowrie SSH e HTTP e inoltrando i log del firewall al portale DShield.
Questo è un insieme di script per configurare un DShield Sensor.
Obiettivi di progettazione attuali e prerequisiti per l'utilizzo della procedura di installazione automatizzata:
La versione corrente è testata solo su Raspberry Pi OS (64-bit) e Ubuntu 24.04 LTS Server, non su altre distribuzioni, spiacenti. Se c'è necessità di altre distribuzioni, "qualcuno" deve verificare e mantenere lo script di installazione.
Fare riferimento ai seguenti file per le istruzioni di installazione specifiche per il sistema operativo: Raspberry Pi OS (Consigliato), Ubuntu, openSUSE e AWS
install.shQuesto script:
I log vengono inviati due volte all'ora al portale dshield dal cron job /etc/cron.d/dshield, questo può essere verificato tramite 'My Account' -> 'My Reports'
Dai un'occhiata all'output dello script di stato: /srv/dshield/status.sh
Se ricevi strani errori relativi a Python o pip durante l'installazione o durante gli aggiornamenti, prova i seguenti comandi come root:
pip freeze --local | grep -v '^\-e' | cut -d = -f 1 | xargs -n1 pip install -U
Consulta la nostra Guida alla risoluzione dei problemi per assistenza nell'identificazione dei problemi.
All'interno della tua directory "dshield" (la directory creata sopra quando esegui git clone), esegui
cd install/dshield
sudo git pull
sudo bin/install.sh --update
Il parametro "--update" utilizzerà automaticamente la configurazione esistente e non richiederà all'utente alcuna opzione di configurazione.
I parametri di configurazione come la tua API Key verranno mantenuti. Per modificare la configurazione, modifica /etc/dshield.ini, per configurare il firewall, modifica /etc/network/iptables (nota: viene utilizzata anche la tabella nat).
È stata introdotta una nuova funzionalità, pensata appositamente per gli aggiornamenti automatici. Al termine dell'installazione, lo script install.sh cercherà il file /root/bin/postinstall.sh ed eseguirà il suo contenuto, se esiste. Se hai bisogno di ulteriori modifiche nei file appena installati, questo è il punto in cui inserirle. Questo file DEVE avere i permessi di esecuzione.
Assicurati di mantenere aggiornate le configurazioni speciali di porte e rete (ad es., configurare manualmente le porte telnet/web aggiunte di recente nella configurazione del firewall), ad es., configurazione no-log, configurazione no-honey, ... sfortunatamente, al momento questo non può essere fatto automaticamente. In caso di dubbi, elimina le righe corrispondenti in /etc/dshield.ini ed esegui nuovamente lo script di installazione.
Questo sensore e honeypot DShield è pensato per analizzare solo il traffico relativo a Internet, ovvero il traffico che proviene da indirizzi IP pubblici:
Quindi devi collocare il Pi su una rete in cui possa essere esposto a Internet (e a cui non ci si connetta dalle reti interne, tranne che per attività amministrative). Per ottenere il massimo beneficio dal sensore è auspicabile che il Pi sia esposto a tutto il traffico che Internet instrada verso un IP pubblico (e non solo a porte selezionate).
Per gli utenti SoHo, normalmente esiste un'opzione nel router DSL o via cavo per indirizzare tutto il traffico dall'IP pubblico utilizzato dal router (cioè assegnato dall'ISP) a un IP interno. Questo deve essere il Pi. Questa funzionalità è denominata ad es. "exposed host", "DMZ" (qui potrebbe essere necessario abilitare ulteriori configurazioni per garantire che tutto il traffico venga instradato all'indirizzo IP interno del Pi e non solo, ad es., alla porta 80).
Per le aziende, una DMZ protetta sarebbe un luogo adatto (protetta: se il sensore/honeypot viene violato, l'incidente è contenuto e non influisce sugli altri host nella DMZ). Tieni presente che - se utilizzi IP statici - stai esponendo gli attacchi / le scansioni al tuo IP al progetto DShield e alla comunità, che possono essere ricondotti alla tua azienda tramite whois.
Per testare la tua configurazione puoi utilizzare uno scanner di porte pubblico e puntarlo all'IP pubblico del router (che viene poi inoltrato internamente al Pi). Questa scansione delle porte dovrebbe essere immediatamente visibile in /var/log/dshield.log e successivamente nel tuo report online accessibile tramite il tuo account DShield. Utilizzala solo per test rapidi e limitati, per favore, in modo che i dati DShield non vengano falsati.
install.shstatus.sh) nella struttura di directory /srvsitecopy.py copierà qualsiasi sito servito utilizzando lo script web.py, basta usare:
python sitecopy.py http://www.yoursite.com