first commit
This commit is contained in:
@@ -0,0 +1,241 @@
|
|||||||
|
# 🏠 HAOS – Infrastructure domotique auto-hébergée & sécurisée
|
||||||
|
|
||||||
|
> Plateforme domotique personnelle basée sur **Home Assistant OS**, conçue comme un environnement auto-hébergé de supervision IoT, d'automatisation avancée et d'architecture réseau sécurisée.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📋 Vue d'ensemble
|
||||||
|
|
||||||
|
Ce projet est une **infrastructure domotique opérationnelle** tournant 24/7 sur un mini-PC dédié. Il repose sur **Home Assistant OS** et combine automatisations conditionnelles, supervision IoT locale et sécurisation réseau avancée — sans aucune dépendance cloud imposée.
|
||||||
|
|
||||||
|
**Usages principaux :**
|
||||||
|
|
||||||
|
- Surveillance et sécurisation du logement (alarme, vidéo)
|
||||||
|
- Automatisation du quotidien (chauffage, présence, éclairage)
|
||||||
|
- Optimisation énergétique (suivi Enedis, pilotage des radiateurs)
|
||||||
|
- Expérimentation IoT maîtrisée (capteurs custom ESPHome/ESP32)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🧱 Architecture générale
|
||||||
|
|
||||||
|
```text
|
||||||
|
┌──────────────────────────────────┐
|
||||||
|
│ Mini-PC dédié │
|
||||||
|
│ Home Assistant OS │
|
||||||
|
│ SSD / 24h/24 │
|
||||||
|
└────────────┬─────────────────────┘
|
||||||
|
│
|
||||||
|
┌──────────────────────┼───────────────────────┐
|
||||||
|
│ │ │
|
||||||
|
┌────────▼────────┐ ┌────────▼────────┐ ┌─────────▼────────┐
|
||||||
|
│ Sécurité │ │ IoT & Protocoles│ │ Accès & Admin │
|
||||||
|
│ │ │ │ │ │
|
||||||
|
│ • Alarmo │ │ • Zigbee2MQTT │ │ • Cloudflared │
|
||||||
|
│ • Frigate (NVR) │ │ • ESPHome / ESP32│ │ (CF Tunnel) │
|
||||||
|
│ • Détection IA │ │ • Heatzy │ │ • WireGuard VPN │
|
||||||
|
│ • Notifications │ │ • Enedis │ │ • SSH / Samba │
|
||||||
|
└─────────────────┘ └──────────────────┘ └──────────────────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🖥️ Infrastructure matérielle
|
||||||
|
|
||||||
|
| Composant | Détail |
|
||||||
|
| -------------- | ----------------------------------- |
|
||||||
|
| Machine | Mini-PC dédié |
|
||||||
|
| Stockage | SSD (fiabilité & performances) |
|
||||||
|
| Hyperviseur | Home Assistant OS (natif) |
|
||||||
|
| Coordinateur | Sonoff Zigbee USB Dongle |
|
||||||
|
| Fonctionnement | 24/7, environnement isolé |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚙️ Services & Add-ons déployés
|
||||||
|
|
||||||
|
### 🔐 Sécurité – Accès distant
|
||||||
|
|
||||||
|
#### Cloudflared (Tunnel sortant)
|
||||||
|
|
||||||
|
Accès HTTPS distant sans exposition de port sur le routeur.
|
||||||
|
|
||||||
|
- Tunnel sortant chiffré vers Cloudflare
|
||||||
|
- Nom de domaine personnel avec HTTPS natif
|
||||||
|
- Aucune IP publique exposée, surface d'attaque réduite
|
||||||
|
|
||||||
|
#### WireGuard VPN
|
||||||
|
|
||||||
|
Accès administration sécurisé réservé au tunnel privé.
|
||||||
|
|
||||||
|
- SSH restreint au VPN
|
||||||
|
- Partage Samba limité au LAN
|
||||||
|
- Aucun port d'administration exposé sur le WAN
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🚨 Sécurité du logement
|
||||||
|
|
||||||
|
#### Alarmo – Système d'alarme personnalisé
|
||||||
|
|
||||||
|
Extension d'alarme intégrée nativement à Home Assistant.
|
||||||
|
|
||||||
|
- Armement / désarmement (présence, mode nuit, absence)
|
||||||
|
- Détection d'intrusion avec notifications instantanées
|
||||||
|
- Scénarios conditionnels selon les occupants
|
||||||
|
|
||||||
|
#### Frigate – NVR intelligent local
|
||||||
|
|
||||||
|
Vidéosurveillance avec détection d'objets par intelligence artificielle.
|
||||||
|
|
||||||
|
- Traitement local (aucun cloud vidéo)
|
||||||
|
- Réduction des faux positifs par reconnaissance d'objets
|
||||||
|
- Enregistrements internes et déclenchement automatique d'alertes
|
||||||
|
- Preuves vidéo locales en cas d'incident
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🌡️ Confort & Énergie
|
||||||
|
|
||||||
|
#### Heatzy – Gestion du chauffage
|
||||||
|
|
||||||
|
Pilotage dynamique de radiateurs électriques connectés selon présence et horaires.
|
||||||
|
|
||||||
|
- Programmation horaire et adaptation à la présence
|
||||||
|
- Optimisation de la température pièce par pièce
|
||||||
|
- Réduction directe de la consommation énergétique
|
||||||
|
|
||||||
|
#### Enedis – Suivi énergétique intelligent
|
||||||
|
|
||||||
|
Intégration officielle du compteur Linky via l'API Enedis.
|
||||||
|
|
||||||
|
- Visualisation de la consommation quotidienne
|
||||||
|
- Analyse des pics et corrélation chauffage / présence
|
||||||
|
- Identification des équipements énergivores
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🌿 IoT personnalisé – ESPHome
|
||||||
|
|
||||||
|
#### Capteur d'humidité (ESP32)
|
||||||
|
|
||||||
|
Capteur de sol développé sur mesure via ESPHome sur microcontrôleur ESP32.
|
||||||
|
|
||||||
|
- Mesure d'humidité du sol en temps réel
|
||||||
|
- Historique graphique dans Home Assistant
|
||||||
|
- Notifications si sol sec
|
||||||
|
- Architecture extensible vers l'arrosage automatisé
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 📡 Réseau Zigbee local
|
||||||
|
|
||||||
|
Coordinateur : **Sonoff Zigbee USB Dongle** — géré via **Zigbee2MQTT**.
|
||||||
|
|
||||||
|
- Aucun cloud tiers — données traitées localement
|
||||||
|
- Maîtrise complète des 15 équipements Zigbee supervisés
|
||||||
|
- Protocole ouvert, compatible multi-fabricants
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🔐 Sécurité & Architecture
|
||||||
|
|
||||||
|
### Principes appliqués
|
||||||
|
|
||||||
|
| Principe | Mise en œuvre |
|
||||||
|
| ----------------------------- | -------------------------------------------------------------------------- |
|
||||||
|
| Exposition minimale | Aucun port ouvert sur le routeur (WAN) |
|
||||||
|
| Accès distant sécurisé | Tunnel sortant Cloudflared uniquement |
|
||||||
|
| Administration cloisonnée | SSH et Samba accessibles via VPN uniquement |
|
||||||
|
| Traitement local des données | Vidéo (Frigate), Zigbee et capteurs ESPHome traités en local |
|
||||||
|
| Principe du moindre privilège | Services limités au strict nécessaire |
|
||||||
|
| Surveillance continue | Logs réguliers, mises à jour et sauvegardes automatisées |
|
||||||
|
|
||||||
|
### Architecture Zero-Trust domestique
|
||||||
|
|
||||||
|
```text
|
||||||
|
┌──────────────────────┐ ┌──────────────────────┐ ┌──────────────────────┐
|
||||||
|
│ Accès distant │ │ IoT local │ │ Administration │
|
||||||
|
│ │ │ │ │ │
|
||||||
|
│ (Cloudflare Tunnel, │ │ (Zigbee2MQTT, │ │ (WireGuard VPN, │
|
||||||
|
│ HTTPS natif) │ │ ESPHome, Frigate) │ │ SSH, Samba LAN) │
|
||||||
|
└──────────────────────┘ └──────────────────────┘ └──────────────────────┘
|
||||||
|
Chiffré 100% local VPN only
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚡ Automatisations
|
||||||
|
|
||||||
|
Plus de **50 automatisations conditionnelles** actives, couvrant :
|
||||||
|
|
||||||
|
- Gestion de la présence (arrivée / départ)
|
||||||
|
- Scénarios d'alarme et notifications contextuelles
|
||||||
|
- Pilotage du chauffage selon horaires et occupants
|
||||||
|
- Alertes IoT (plantes, énergie, caméras)
|
||||||
|
- Scènes d'éclairage et routines quotidiennes
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📁 Contenu du dépôt
|
||||||
|
|
||||||
|
```text
|
||||||
|
haos-project/
|
||||||
|
│
|
||||||
|
├── readme.md # Ce fichier
|
||||||
|
│
|
||||||
|
├── docs/
|
||||||
|
│ ├── architecture.md # Schémas et choix d'architecture
|
||||||
|
│ ├── network-diagram.md # Plan réseau (segments IoT, VPN, tunnel)
|
||||||
|
│ ├── automations-overview.md # Vue d'ensemble des automatisations
|
||||||
|
│ └── security-policy.md # Politique de sécurité appliquée
|
||||||
|
│
|
||||||
|
└── configs/
|
||||||
|
├── zigbee2mqtt/
|
||||||
|
│ └── configuration.yaml.example # Template config Zigbee2MQTT
|
||||||
|
├── esphome/
|
||||||
|
│ └── humidity-sensor.yaml # Config capteur ESP32 (anonymisée)
|
||||||
|
└── frigate/
|
||||||
|
└── config.yaml.example # Template config Frigate NVR
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🧠 Compétences illustrées
|
||||||
|
|
||||||
|
**Infrastructure & Réseau**
|
||||||
|
|
||||||
|
- Hébergement auto-géré sur matériel dédié (Home Assistant OS natif)
|
||||||
|
- Mise en place VPN WireGuard et tunnel sortant Cloudflared
|
||||||
|
- Administration distante sécurisée sans exposition WAN
|
||||||
|
- Gestion multi-protocoles (Zigbee, Wi-Fi, HTTP, MQTT)
|
||||||
|
|
||||||
|
**Cybersécurité**
|
||||||
|
|
||||||
|
- Architecture Zero-Trust appliquée à un environnement domestique
|
||||||
|
- Suppression des dépendances cloud sur les données sensibles (vidéo, capteurs)
|
||||||
|
- Segmentation logique des équipements IoT
|
||||||
|
- Réduction de la surface d'attaque (aucun port WAN, moindre privilège)
|
||||||
|
|
||||||
|
**Développement & Automatisation**
|
||||||
|
|
||||||
|
- Développement de capteurs custom avec ESPHome / ESP32
|
||||||
|
- Conception de plus de 50 automatisations conditionnelles
|
||||||
|
- Intégrations API officielles (Enedis, Heatzy)
|
||||||
|
- Pilotage énergétique et optimisation des usages
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚠️ Sécurité du dépôt
|
||||||
|
|
||||||
|
> Ce dépôt est **public**. Aucune clé privée, token, mot de passe, adresse IP réelle ou information sensible n'est commitée. Les fichiers de configuration sont systématiquement **anonymisés ou fournis sous forme de templates**.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📌 À propos
|
||||||
|
|
||||||
|
Projet personnel en évolution continue, combinant domotique opérationnelle, sécurité réseau et expérimentation IoT. Utilisé au quotidien comme infrastructure réelle, avec un impact direct sur la sécurité du logement, le confort et la maîtrise énergétique.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Infrastructure opérationnelle — évolutions régulières selon les intégrations et expérimentations en cours.*
|
||||||
Reference in New Issue
Block a user