Installer le contrôleur
Le contrôleur est un binaire statique avec un magasin SQLite ; il tourne sur n'importe quel Linux avec systemd. Choisissez une machine que les serveurs peuvent joindre sur le port 17453 — en général pas une que vous protégez, même si elle peut cohabiter avec un agent.
Installer le paquet
Sur Debian et ses dérivées :
curl -fsSL https://repo.lrob.net/apt/shieldlist/shieldlist.gpg -o /usr/share/keyrings/shieldlist.gpg
echo "deb [signed-by=/usr/share/keyrings/shieldlist.gpg] https://repo.lrob.net/apt/shieldlist stable main" > /etc/apt/sources.list.d/shieldlist.list
apt update && apt install shieldlist-controller
stableporte les versions publiées. Il existe aussi une suitedevavec nos builds de développement : en avance sur les versions publiées, et faits pour casser.
Le paquet crée l'utilisateur système shieldlist, écrit une arborescence de départ sous /etc/shieldlist/controller, installe l'unité et démarre le service. Pour les autres systèmes, ou à la main : Installing.
Mettre la console derrière TLS
L'API et la console écoutent sur 127.0.0.1:17454 et attendent un reverse proxy avec certificat devant ; le port des agents, 0.0.0.0:17453, n'a besoin de rien — le contrôleur signe son propre certificat et les agents l'épinglent.
Avec nginx et Let's Encrypt sur la même machine :
server {
server_name console.example.net;
location / {
proxy_pass http://127.0.0.1:17454;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Puis certbot --nginx -d console.example.net --redirect.
Créer le premier compte
sudo -u shieldlist shieldlist-controller account -name vous # demande un mot de passe deux fois
Ouvrez https://console.example.net, connectez-vous. La console est vide : aucun serveur encore. Elle vous dit quoi faire ensuite — un jeton d'enrôlement, et une commande à lancer sur la première machine. C'est la page suivante.
Le détail — écouteurs, rétention, géolocalisation, mises à jour, qui peut lever un ban : Contrôleur → Configuration.