Comment construire une caméra de surveillance privée sur Raspberry Pi sans cloud ni abonnement
Acheter une caméra domotique prête à l'emploi implique presque toujours un compromis. D'un côté, c'est pratique d'ouvrir une application sur son téléphone pour vérifier ce qui se passe dans la pièce. De l'autre, le flux vidéo de votre salon ou de votre couloir part directement vers les serveurs de quelqu'un d'autre — Amazon, Google ou des fabricants chinois sans nom. Ajoutez à cela les actualités régulières sur les fuites de données, les abonnements payants pour le stockage des archives, et le risque qu'un fournisseur ferme simplement ses serveurs un jour.
J'ai récemment découvert un projet intéressant appelé Secluso, qui tente de résoudre ce problème de la bonne manière. C'est un système de vidéosurveillance domestique pour micro-ordinateurs Raspberry Pi avec un chiffrement de bout en bout honnête (E2EE), où même le serveur relais intermédiaire de données fonctionne selon un principe zero-trust.
Qui est derrière le projet et quelle est l'idée
Le projet est développé par Ardalan Amiri Sani, professeur à l'Université de Californie à Irvine, spécialisé en sécurité informatique, et l'ingénieur John Kachman. Le dépôt secluso/core contient une base de code en Rust.
L'idée principale des auteurs est simple. L'utilisateur devrait obtenir une solution prête à l'emploi qui peut être configurée en cinq minutes, tout en garantissant un isolement cryptographique contre les regards indiscrets. Pas de cloud fermé. La vidéo est chiffrée sur la carte Raspberry Pi et déchiffrée uniquement sur votre smartphone.
Comment fonctionne l'architecture
La plupart des solutions DIY de vidéosurveillance comme MotionEye ou ZoneMinder buttent sur l'accès à distance. Si vous voulez regarder le flux en dehors de votre réseau Wi-Fi domestique, vous devez deal avec des adresses IP statiques, le DNS dynamique, la redirection de ports ou la configuration de votre passerelle domestique.
Secluso résout le problème différemment :
- La caméra et le téléphone communiquent par l'intermédiaire d'un relais.
- N'importe quel VPS Linux abordable peut servir de relais.
- Le serveur relais est isolé et n'a pas accès aux clés de chiffrement. Il transfère le trafic en aveugle, ne voyant que des paquets chiffrés.
Toute la cryptographie est conçue avec la modélisation des menaces en tête. Le protocole implémente la confidentialité persistante et la protection contre une compromission future. Si quelqu'un accède à votre relais VPS, il ne verra qu'un flux binaire chiffré et ne pourra pas déchiffrer les enregistrements archivés ni le flux en direct.
Un autre point intéressant est les Builds Reproductibles. Les créateurs ont fait en sorte que les binaires runtime, l'utilitaire de déploiement, l'image OS Secluso personnalisée et l'application Android puissent tous être compilés depuis les sources et vérifiés octet par octet contre les versions officielles. Pour les projets axés sur la confidentialité, cette approche mérite le respect.
Configuration matérielle requise
La liste des composants pour commencer est minimale :
- Carte Raspberry Pi Zero 2W.
- Module caméra Raspberry Pi V1, V2, ou tout module basé sur les capteurs Sony IMX219 / OmniVision OV5647.
- Carte MicroSD pour graver l'image.
- Votre propre VPS Linux avec accès SSH pour le relais (pour les tests, les auteurs proposent un accès d'essai temporaire à leur serveur).
- Smartphone iOS ou Android.
Processus de configuration et impressions
D'ordinaire, construire des systèmes comme celui-ci sur un Pi se transforme en configuration infinie, installation de pilotes de caméra et bidouillage de systemd. L'équipe Secluso a écrit un utilitaire de bureau séparé appelé Secluso Deploy pour éliminer cette corvée.
Le processus ressemble à ceci :
- Téléchargez Secluso Deploy sur votre ordinateur.
- Le programme génère des clés de chiffrement uniques directement sur votre machine et les flashe dans l'image OS Secluso.
- L'utilitaire se connecte via SSH à votre VPS et déploie automatiquement le composant serveur relais.
- Gravez l'image prête sur une clé USB, insérez-la dans le Pi Zero 2W et mettez-le sous tension.
- Téléchargez l'application officielle depuis l'App Store ou Google Play et scannez le code QR d'appairage généré par Deploy.
Après cela, votre téléphone se connecte à la caméra. Via le client mobile, vous avez accès au flux vidéo en direct, aux notifications d'événements et à la visualisation des clips chiffrés enregistrés.
À qui le projet sera utile
Secluso est idéal pour ceux qui :
- Veulent garder un œil sur leur appartement, atelier ou maison de campagne sans faire confiance à leur espace personnel à des services tiers.
- Cherchent une utilisation pour un Raspberry Pi Zero 2W qui prend la poussière sur une étagère.
- Veulent comprendre l'architecture des flux vidéo chiffrés de bout en bout en Rust et les principes du relais zero-trust.
Le projet est encore en évolution, la liste des capteurs de caméra pris en charge est actuellement limitée aux modules Pi courants, mais les fonctionnalités principales fonctionnent de manière fiable. Si vous êtes fatigué des écosystèmes fermés avec des abonnements pour chaque gigaoctet d'archive vidéo, secluso/core mérite définitivement un coup d'œil. Le code source est ouvert sous licence GPLv3, et la documentation sur le modèle cryptographique se trouve directement dans le dépôt.
Projets similaires