Aiuta la rete
Tre comandi. Nessuna dashboard. Nessuna VPN.
Avvia i sensori su una macchina libera, apri le porte che stampa l'installer, ed è fatta. Scegliere questa modalità equivale al tuo consenso a entrare nella rete SuckerPot.
git clone --depth 1 --branch v0.9.0 https://github.com/selfhostr/suckerpot.git cd suckerpot ./scripts/install.sh --participant
Sostituisci v0.9.0 con la release che vuoi. SuckerPot è fatto per essere attaccato: usa una macchina dedicata che non contenga altro a cui tieni.
Cosa ti serve
Una macchina Linux e un router che controlli.
Sensori, database e solo il nodo di rete, in circa 2 GiB di memoria.
| Macchina | Una VM o un server Linux, x86_64 o aarch64, con 2 GiB di memoria o più e 15 GiB di disco libero. |
| Software | Docker Engine 24+ (consigliato 28) con il plugin Compose, git, curl e Bash 4+. Il tuo utente deve eseguire docker senza sudo. |
| Router | Puoi inoltrare porte verso questa macchina. |
| VPN | Non serve. |
Apri le porte
Il tuo unico compito dopo l'installazione.
L'installer termina con una tabella di porte. Inoltra ogni porta del router verso questa macchina. Non inoltrare mai la tua porta SSH di amministrazione, e non usare la DMZ del router: inoltra ogni porta. L'installer non modifica mai le tue impostazioni SSH.
| Porta del router | Questa macchina | Protocollo | Sensore |
|---|---|---|---|
| 22 | 22 | TCP | ssh |
| 23 | 23 | TCP | telnet |
| 80 | 80 | TCP | web |
| 443 | 443 | TCP | web |
Esempio di ciò che stampa l'installer. Se la porta 22 è occupata sulla macchina, il sensore SSH usa la 2222.
Privacy senza VPN
L'hub vede un indirizzo. Non lo conserva.
Senza VPN, l'hub vede il tuo indirizzo di casa quando la tua macchina si connette. Anche un provider di tunnel davanti all'hub lo vede. L'hub non lo conserva e non lo registra, ma l'indirizzo non resta nascosto.
- In questa modalità solo un servizio ha una rotta verso l'esterno. Inoltra le connessioni all'host dell'hub e nient'altro.
- Il servizio di ingestione, che analizza i dati degli attaccanti, non ha alcuna rotta verso l'esterno. I tuoi sensori non scaricano mai nulla.
- Aggiungi una VPN in qualsiasi momento:
./scripts/participant.sh vpn /path/to/wireguard.conf.
Resta al comando
Controllala, aggiornala, esci quando vuoi.
| Comando | Cosa fa |
|---|---|
| ./scripts/status.sh | Mostra i sensori e le loro porte, la tua posizione, l'ultimo contatto con l'hub e ciò che è stato inviato ogni giorno. |
| ./scripts/participant.sh ports-check | Indica se internet raggiunge già i tuoi sensori. |
| ./scripts/participant.sh firewall | Carica il firewall dell'host (chiede sudo), oppure lo rimuove. |
| ./scripts/participant.sh leave | Esce dalla rete. I sensori restano in esecuzione. |
| ./scripts/participant.sh join | Mostra di nuovo il consenso ed entra. |
| ./scripts/participant.sh vpn FILE | Invia tutto attraverso la tua VPN. |
| ./scripts/participant.sh auto-update off | Disattiva la pianificazione quotidiana degli aggiornamenti. |
| ./scripts/participant.sh uninstall | Esce dalla rete, ferma lo stack e rimuove la pianificazione. Stampa il comando che cancella i dati e non lo esegue mai. |
Aggiornamenti automatici
Le release firmate si installano da sole una volta al giorno, almeno 48 ore dopo la pubblicazione, e solo all'interno della stessa major. Prima viene fatto un dump del database, e se un aggiornamento fallisce viene ripristinata la versione precedente. Se il canale di release venisse mai compromesso, i partecipanti con aggiornamento automatico ne subirebbero gli effetti: la firma e il ritardo riducono questo rischio, ma non lo eliminano. Un comando disattiva gli aggiornamenti.
Nodi verificatori
La maggior parte dei partecipanti non scarica mai malware. Un verificatore è un nodo facoltativo con VPN e il collector, che può scaricare un link segnalato da due nodi e descrivere il file. Serve anche un ruolo dall'operatore dell'hub.
Passa alla modalità completa
./scripts/install.sh --full aggiunge la dashboard e conserva i tuoi dati e la tua appartenenza. Il passaggio inverso, da completo a partecipante, non è supportato. Vedi Installa.