Documentation
Tout pour déployer et opérer BALLA
De la première installation au pilotage d'un centre de sécurité complet : tout est documenté, précis et actionnable.
Introduction
BALLA se compose d'un agent léger sur chaque poste, d'un moteur d'IA et d'un cockpit de supervision. Cette documentation vous guide de l'installation à l'exploitation.
Démarrage rapide
Installez l'agent et raccordez votre premier poste en quelques minutes.
# Install the SISKO agent
curl -fsSL https://get.sisko.ml/install.sh | sh
# Enroll the endpoint, then start
sisko-agent enroll --tenant <TENANT_ID> --token <ENROLL_TOKEN>
sisko-agent startAgent & collecte
L'agent observe les événements système et les publie au format UCEF signé. Sa configuration tient dans un simple fichier YAML.
# /etc/sisko/agent.yaml
publisher:
mode: kafka
broker: kafka.internal:9092
tls:
enabled: true
collectors:
processes: true
network: true
files: true
auth: true
hardware: true
buffer:
max_events: 100000
encrypt: true # AES-256-GCM offline bufferAPI & WebSocket
Une API REST protégée par JWT Ed25519 expose la flotte, les alertes et les événements. Le flux temps réel passe par WebSocket.
# List fleet machines (Ed25519 JWT)
curl https://api.sisko.ml/fleet \
-H "Authorization: Bearer $SISKO_TOKEN"{
"machines": [
{
"equipment_id": "a3f1c9…",
"hostname": "HR-WKS-008",
"status": "online",
"severity": "critical",
"last_seen": "2026-08-12T09:41:00Z"
}
],
"total": 128
}// Real-time alerts over WebSocket
const ws = new WebSocket("wss://api.sisko.ml/alerts/ws?token=" + token);
ws.onmessage = (e) => console.log(JSON.parse(e.data));Cockpit SOC
Le cockpit affiche la flotte, les alertes expliquées, le détail par machine et par utilisateur, et la reconstruction des chaînes d'attaque.
Déploiement
Déployez l'ensemble via Docker Compose, on-premise, jusqu'au mode air-gapped totalement déconnecté.
# docker-compose.yml (excerpt)
services:
balla:
image: sisko/balla:latest
api:
image: sisko/api:latest
ports: ["8000:8000"]
dashboard:
image: sisko/dashboard:latest
ports: ["3000:3000"]Sécurité & conformité
mTLS partout, commandes signées Ed25519, journal d'audit infalsifiable et explications SHAP pour la conformité RGPD.
// Every command sent to an endpoint is signed
{
"action": "isolate_machine",
"equipment_id": "a3f1c9…",
"signature": "ed25519:…",
"rollback_token": "b7c2…"
}