Tableau de bord
Session en cours ·
Contrôle du scroll
Pilotage de la séquence de défilement
En attente d'une commande...
Nombre de scrolls
1
🔁 Scroll infini
Vitesse
5
État des composants
Historique récent
Positions actuelles — Contrôle détaillé → Debug Servos
Debug Servomoteurs
Contrôle précis · Bus I2C · PCA9685 · Canaux 13/14/15
Séquences de test
En attente...
Supervision temps réel
Métriques · Activité · Connectivité
Activité servos (mouvements)
0
Servo 1Servo 2Servo 3
Uptime serveur
--
Logs par niveau
Dispositif ESP32
--
Indicateurs réseau
WebSocket navigateur--
ESP32 connecté--
Messages WS reçus0
API RESTEn ligne · HTTPS
TLSChiffré · Let's Encrypt
Endpoints API
Journalisation système
Logs structurés · Rétention 10 000 entrées · Temps réel via WebSocket
Sécurité & Architecture réseau
Séparation OT/IT · Chiffrement · Authentification
Architecture réseau
ZONE IT · Internet
Interface Web
HTTPS :443 · JWT HS256 · TLS 1.3
API REST
Node.js · Express · SQLite · PM2
WebSocket
WSS · Auth token · Reconnexion auto
Serveur OVH
Debian 12 · Nginx · Let's Encrypt
↑
UFW
FIREWALL
FIREWALL
↓
80/443
only
only
ZONE OT · LAN local
ESP32
WiFi · Client WSS · Reconnexion auto
Servo 1, 2, 3
I2C · PCA9685 · Canaux 13/14/15
Auth device
Header x-device-secret · Partagé
Arrêt d'urgence
API POST /api/estop · Ctrl+Shift+E
Checklist sécurité
✓
Authentification JWT + mot de passe hashé bcrypt✓
Chiffrement TLS 1.3 (HTTPS + WSS)✓
Pare-feu UFW (ports 80, 443, SSH uniquement)✓
Journalisation de toutes les actions✓
Rate limiting sur le login (5 tentatives/min)✓
Secret device ESP32 distinct du JWT✓
Arrêt d'urgence logiciel (API + raccourci clavier)Matrice des risques
| Menace | Niveau | Mitigation |
|---|---|---|
| Accès non autorisé API | ÉLEVÉ | JWT + rate limit |
| Injection commande servo | ÉLEVÉ | Validation stricte 0–180° |
| Compromission réseau | MOYEN | TLS + UFW |
| Perte connexion ESP32 | FAIBLE | Reconnexion auto 5s |
| Expiration token JWT | FAIBLE | Re-login · 8h session |
Résilience & continuité
Perte WiFi ESP32
- Détection fermeture WS côté serveur
- ESP32 tente reconnexion toutes les 5s
- Servos restent en dernière position
- Alerte WARN dans les logs
Crash serveur Node
- PM2 redémarre automatiquement
- SQLite préserve toutes les données
- RTO cible < 10 secondes
- Historique rechargé au redémarrage
Arrêt d'urgence
- POST /api/estop (logiciel)
- Ctrl+Shift+E (raccourci UI)
- Bouton bannière rouge permanent
- Tous servos → 0° immédiat
Persistance données
- SQLite WAL mode (écriture robuste)
- 10 000 logs conservés (rotation auto)
- Stats servos persistantes
- Export CSV à tout moment
Paramètres
Configuration · Sécurité · Informations système
Sécurité du compte
Changer le mot de passe
Minimum 8 caractères. Le changement invalide les sessions actives sur les autres appareils.
Session active
Utilisateur connecté
--
Durée de session
--
Expiration token JWT
8h après connexion
Informations système
Serveur
OVH Dedicated
OS
Debian 12
Runtime
Node.js LTS
DB
SQLite WAL
Uptime serveur
--
ESP32
--
Actions
Exporter les logs
Télécharger tous les logs en CSV
Vider les logs
Supprimer tous les logs du serveur
Déconnexion
Terminer la session et retourner au login