Nodes & agent
Un node est une machine qui exécute l'agent ecloud : un petit programme Python (sans dépendance) qui applique le pare-feu nftables, remonte des métriques, et sert de point de présence (CDN / reverse proxy à terme). Les nodes en ligne apparaissent sur cdn.ecloudserv.fr.
Sécurité de l'enrôlement
- Depuis Panel → Admin → Nodes, tu crées un node et obtiens un token d'enrôlement à usage unique (affiché une seule fois).
- L'agent échange ce token contre une clé long-terme, stockée en
0600et jamais journalisée. Le token devient alors inutilisable. - Les échanges se font en HTTPS ; seuls des hash SHA-256 des secrets sont stockés côté serveur.
Installation
sudo mkdir -p /opt/ecloud-agent /etc/ecloud-agent
sudo cp ecloud-agent.py /opt/ecloud-agent/
sudo cp config.example.env /etc/ecloud-agent/agent.env
sudo apt-get install -y nftables python3
# Renseigne ECLOUD_ENROLL_TOKEN dans agent.env, puis :
sudo env $(grep -v '^#' /etc/ecloud-agent/agent.env | xargs) \
python3 /opt/ecloud-agent/ecloud-agent.py enroll
sudo cp systemd/ecloud-agent.service /etc/systemd/system/
sudo systemctl enable --now ecloud-agentCe que l'agent applique
- Table
inet ecloudisolée, appliquée de façon atomique. - IP bloquées →
drop(sets IPv4/IPv6, CIDR supportés). - Ports ouverts →
accept(aveclimit ratesi un rate-limit est défini). - Tout le reste de la plage
25566–25999est fermé ; le hors-plage n'est pas touché.
Test à blanc
Passe ECLOUD_DRY_RUN=1 pour que l'agent journalise le ruleset sans l'appliquer — pratique pour valider avant la production.
