Aide le réseau
Trois commandes. Pas de tableau de bord. Pas de VPN nécessaire.
Fais tourner les capteurs sur une machine libre, ouvre les ports que l'installateur affiche, et te voilà dedans. Choisir ce mode vaut ton consentement à rejoindre le réseau SuckerPot.
git clone --depth 1 --branch v0.9.0 https://github.com/selfhostr/suckerpot.git cd suckerpot ./scripts/install.sh --participant
Remplace v0.9.0 par la version que tu veux. SuckerPot est conçu pour être attaqué : utilise une machine dédiée qui ne contient rien d'autre qui compte pour toi.
De quoi tu as besoin
Une machine Linux et un routeur que tu contrôles.
Capteurs, base de données et seulement le nœud réseau, avec environ 2 GiB de mémoire.
| Machine | Une VM ou un serveur Linux, en x86_64 ou aarch64, avec 2 GiB de mémoire ou plus et 15 GiB d'espace disque libre. |
| Logiciels | Docker Engine 24+ (28 recommandé) avec le plugin Compose, git, curl et Bash 4+. Ton utilisateur doit pouvoir lancer docker sans sudo. |
| Routeur | Tu peux rediriger des ports vers cette machine. |
| VPN | Inutile. |
Ouvre les ports
Ta seule tâche après l'installation.
L'installateur se termine par un tableau de ports. Redirige chaque port du routeur vers cette machine. Ne redirige jamais ton propre port SSH d'administration, et n'utilise pas la DMZ de ton routeur : elle redirige tous les ports. L'installateur ne modifie jamais tes réglages SSH.
| Port du routeur | Cette machine | Protocole | Capteur |
|---|---|---|---|
| 22 | 22 | TCP | ssh |
| 23 | 23 | TCP | telnet |
| 80 | 80 | TCP | web |
| 443 | 443 | TCP | web |
Exemple de ce que l'installateur affiche. Si le port 22 est occupé sur la machine, le capteur SSH utilise le 2222.
La vie privée sans VPN
Le hub voit une adresse. Il ne la conserve pas.
Sans VPN, le hub voit ton adresse personnelle quand ta machine se connecte. Un fournisseur de tunnel placé devant le hub la voit aussi. Le hub ne la stocke pas et ne la journalise pas, mais l'adresse n'est pas cachée.
- Un seul service a une route de sortie dans ce mode. Il transmet les connexions à l'hôte du hub, et rien d'autre.
- Le service d'ingestion, qui analyse les données des attaquants, n'a aucune route de sortie. Tes capteurs ne téléchargent jamais rien.
- Ajoute un VPN à tout moment :
./scripts/participant.sh vpn /path/to/wireguard.conf.
Garde la main
Contrôle-le, mets-le à jour, quitte quand tu veux.
| Commande | Ce qu'elle fait |
|---|---|
| ./scripts/status.sh | Affiche les capteurs et leurs ports, ton statut, le dernier contact avec le hub et ce qui a été envoyé chaque jour. |
| ./scripts/participant.sh ports-check | Indique si internet atteint déjà tes capteurs. |
| ./scripts/participant.sh firewall | Charge le pare-feu de l'hôte (demande sudo), ou le retire. |
| ./scripts/participant.sh leave | Quitte le réseau. Les capteurs continuent de tourner. |
| ./scripts/participant.sh join | Affiche de nouveau le consentement et rejoint le réseau. |
| ./scripts/participant.sh vpn FILE | Fait passer tout le trafic par ton VPN. |
| ./scripts/participant.sh auto-update off | Désactive la planification quotidienne des mises à jour. |
| ./scripts/participant.sh uninstall | Quitte le réseau, arrête la pile et supprime la planification. Elle affiche la commande qui supprime les données et ne l'exécute jamais. |
Mises à jour automatiques
Les versions signées s'installent toutes seules une fois par jour, au moins 48 heures après leur publication, et seulement dans la même version majeure. Une sauvegarde de la base est faite d'abord, et une mise à jour ratée restaure la version précédente. Si le canal de publication était un jour compromis, les participants en mise à jour automatique seraient touchés : la signature et le délai réduisent ce risque, ils ne le suppriment pas. Une commande désactive les mises à jour.
Nœuds vérificateurs
La plupart des participants ne téléchargent jamais de malwares. Un vérificateur est un nœud volontaire avec un VPN et le collecteur, capable de récupérer un lien signalé par deux nœuds et de décrire le fichier. Il exige aussi un rôle attribué par l'opérateur du hub.
Passer en mode complet
./scripts/install.sh --full ajoute le tableau de bord et conserve tes données et ton adhésion. Le passage inverse, de complet à participant, n'est pas pris en charge. Voir Installer.