Guides d'installation¶
Procédures pour déployer et configurer une installation Essensys. Avant de choisir un guide, comparez les trois profils ci-dessous : deux installations sur site (matériel chez le client) et l'accès portail distant (pilotage via Internet).
Portail distant ≠ remplacement de la gateway
Le portail https://mon.essensys.fr est hébergé sur le cloud Essensys (OVH). Il ne remplace
pas la passerelle locale : une gateway Raspberry Pi ou CM5 doit rester installée chez le
client et enregistrée pour relayer les commandes vers l'armoire.
Matrice de choix¶
| Critère | Raspberry Pi (classique) | Gateway CM5 (dual-NIC) | Portail distant (mon.essensys.fr) |
|---|---|---|---|
| Rôle | Passerelle locale mono-interface | Passerelle locale professionnelle | Accès utilisateur depuis Internet |
| Matériel | Raspberry Pi 4 (eMMC) | CM5 + carte IO Essensys + NVMe | Aucun matériel supplémentaire (cloud OVH) |
| Prérequis sur site | Pi + stack Docker | CM5 + segment armoire isolé | Gateway déjà installée et enregistrée |
| Playbook Ansible | install.raspberrypi.yml |
install.gateway.yml |
Config cloud sync + enregistrement admin |
| Accès utilisateur principal | https://mon.essensys.local (LAN) |
https://mon.essensys.local (LAN) + option WAN |
https://mon.essensys.fr (depuis n'importe où) |
| Segment armoire | Même LAN que les postes | eth1 dédié 10.0.1.0/24 (isolé) |
Transparent (pilotage via la gateway) |
| Complexité install | Faible | Élevée (réseau, NVMe, MAC) | Moyenne (compte, liaison, secrets SOPS) |
| Cible typique | Rétrofit, labo, petit site | Installations neuves Essensys | Propriétaires en déplacement |
| Guide détaillé | Raspberry Pi | Gateway CM5 | CM5 — connectivité cloud + création de compte |
flowchart LR
subgraph onsite [Chez le client]
ARM[Armoire SC944D]
GW[Gateway Pi ou CM5]
ARM <-->|HTTP legacy| GW
end
subgraph lan [Réseau local]
USER_LAN[Utilisateur LAN]
USER_LAN -->|HTTPS mon.essensys.local| GW
end
subgraph cloud [Cloud OVH]
HUB[Hub mon.essensys.fr]
USER_WAN[Utilisateur distant]
USER_WAN -->|HTTPS JWT| HUB
GW -->|HTTPS sortant poll| HUB
end
Raspberry Pi (classique)¶
Installation sur Raspberry Pi 4 mono-interface : stack Essensys conteneurisée (Docker Compose), firmware armoire joignable sur le même réseau LAN.
Avantages¶
- Matériel courant, coût réduit, procédure la plus courte.
- Idéal pour migration progressive ou environnement de test.
- Accès local immédiat via Traefik (HTTPS) et Nginx (HTTP legacy).
Inconvénients¶
- Pas d'isolation réseau dédiée : l'armoire partage le LAN domestique.
- Stockage eMMC limité pour logs et données long terme.
- Pas de mDNS
mon.essensys.localni de CA locale Essensys par défaut (selon profil). - Moins adapté aux installations neuves avec exigences réseau strictes.
Sécurité¶
| Aspect | Comportement |
|---|---|
| Surface d'exposition | HTTP (port 80) et HTTPS (443) écoutent sur toutes les interfaces — l'armoire et les postes sont sur le même segment. |
| TLS local | Certificat auto-signé ou Let's Encrypt selon configuration ; pas de CA locale Essensys standard. |
| Accès distant | Possible via domaine public + LE, mais sans le modèle pull cloud structuré du portail. |
| Recommandation | Réseau LAN de confiance, VLAN si possible ; migrer vers CM5 pour les sites production. |
→ Guide Raspberry Pi · source : essensys-raspberry-install
Gateway CM5 (dual-NIC)¶
Installation complète sur Compute Module 5 : double Ethernet (LAN utilisateurs + segment armoire), NVMe, AdGuard, mDNS et TLS local.
Avantages¶
- Isolation armoire :
eth1dédié (10.0.1.0/24), firmware legacy uniquement sur ce segment. - Durcissement LAN : HTTP refusé sur
eth0(port 80 →444), HTTPS Traefik lié à l'IP LAN. - TLS
.local: autorité Essensys Local CA — cadenas vert après import du certificat (guide HTTPS local). - Stockage NVMe pour
/opt/dataet journaux. - Prêt pour synchronisation cloud et portail distant (prérequis documentés).
Inconvénients¶
- Matériel spécifique (CM5, carte IO, NVMe) et inventaire Ansible dédié (
inventory.gateway). - MAC
eth0/eth1obligatoires pour l'enregistrement cloud. - Cycle de vie plus lourd (désinstallation
uninstall.cm5.yml, option NixOS).
Sécurité¶
| Aspect | Comportement |
|---|---|
| Segmentation | Armoires sur eth1 isolé ; utilisateurs sur eth0 — pas de routage direct poste → firmware. |
| TLS | CA locale pour mon.essensys.local ; Let's Encrypt pour le domaine WAN public. |
| HTTP legacy | Limité au bus armoire (eth1), pas exposé sur le LAN maison. |
| Cloud sync | Sortie HTTPS uniquement vers mon.essensys.fr (pas de HTTP WAN) ; token + MAC en en-têtes. |
| Secrets | Tokens gateway dans SOPS (host_vars/.../secrets.sops.yaml) — voir gestion des secrets. |
Portail distant (mon.essensys.fr)¶
Mode d'accès à distance pour l'utilisateur final : pilotage domotique depuis Internet sans être sur le LAN. Le hub cloud (OVH) relaie les actions ; la gateway chez le client les exécute.
Avantages¶
- Aucun port entrant sur la box : la gateway interroge le cloud en sortie (modèle pull).
- Accès depuis smartphone / tablette / PC, où que l'on soit.
- Authentification utilisateur (JWT) + compte géré sur
https://www.essensys.fr. - Même interface domotique que le site local (jumeaux frontend portal / server).
Inconvénients¶
- Nécessite une gateway enregistrée (CM5 recommandé) — ce n'est pas une installation autonome.
- Latence liée à l'intervalle de polling (typ. quelques secondes).
- Dépendance au VPS OVH et à la connectivité Internet sortante (HTTPS 443).
- Liaison armoire validée par un administrateur (
link_requests).
Sécurité¶
| Aspect | Comportement |
|---|---|
| Modèle réseau | Pas d'ouverture NAT ; trafic sortant gateway → hub uniquement. |
| Auth utilisateur | JWT sur /api/portal/* ; session initiée depuis www.essensys.fr (login) ou mon.essensys.fr. |
| Auth gateway | Token dédié + identité MAC eth0/eth1 ; filtrage strict par machine_id. |
| Données en transit | TLS 1.2+ vers mon.essensys.fr ; certificat public Let's Encrypt. |
| Données au repos | Actions cloud en PostgreSQL OVH ; état domotique reste sur la gateway (Redis) — le cloud ne remplace pas l'armoire. |
| Renforcement futur | Identité gateway renforcée (mTLS / TPM) — voir conception Gateway PKI. |
Mise en service (résumé)¶
- Installer une gateway (CM5 recommandé) et valider le LAN local.
- Vérifier la sortie HTTPS vers OVH (checklist P0–P6 dans le guide CM5).
- Créer un compte sur www.essensys.fr et demander la liaison armoire.
- Enregistrer la gateway côté admin (
POST /api/portal/admin/gateways/register) avec tripletgateway_id, token,machine_id, MAC. - Activer
cloud.enableddansconfig.yaml(ou variables Ansible SOPS).
Quel profil choisir ?¶
| Besoin | Choix recommandé |
|---|---|
| Test, labo, petit retrofit LAN simple | Raspberry Pi |
| Installation neuve, isolation armoire, production | Gateway CM5 |
| Pilotage depuis l'extérieur (vacances, bureau) | Portail distant (+ CM5 ou Pi déjà en place) |
| Accès iPad/Mac sans avertissement TLS sur le LAN | CM5 + HTTPS local |
| Zéro exposition entrante sur la box | Portail distant (pull sortant) |
Guides détaillés¶
| Guide | Description |
|---|---|
| Gateway CM5 (dual-NIC) | Installation complète CM5, cloud, Traefik |
| HTTPS local utilisateur | Certificat Essensys Local CA sur iPad/Mac/PC |
| Raspberry Pi (classique) | Bootstrap installation Pi 4 |
Sources canoniques : dépôts
essensys-ansibleetessensys-raspberry-install.