Sentinel (sentinel) est une vérification de sécurité continue pour Nextcloud, qui montre quoi corriger pour renforcer votre serveur. Il ne répète pas ce que Nextcloud fait déjà bien (limitation des tentatives, hachage des mots de passe, en-têtes, authentification à deux facteurs, signatures d’intégrité). Il regarde l’état qui s’accumule pendant qu’un serveur est utilisé : le compte sans authentification à deux facteurs, le mot de passe d’application utilisé pour la dernière fois il y a des mois et qui fonctionnerait encore, le fichier de l’installation modifié sans que personne ne l’ait modifié, le fichier de configuration que le serveur web tend à quiconque le demande. Et il prévient une personne quand l’un de ces éléments change.
Ce qu’il fait
- Page de posture : le pire d’abord, chaque constat avec la raison et le correctif. Qui peut se connecter avec un mot de passe seul, mots de passe d’application périmés, sessions inactives, administrateurs inactifs, expiration du certificat, si quelque chose est journalisé.
- Empreinte des fichiers que vous pouvez approuver : enregistre le code de l’installation (
lib,core,apps,3rdparty,config,themes) à un moment que vous choisissez ; un correctif délibéré ou une mise à jour est approuvé une fois, avec une note, et il ne reste que les changements inexpliqués. - Auto-sonde : demande à votre propre serveur web, en visiteur anonyme, des fichiers qui ne doivent jamais être servis (la configuration, le journal, les répertoires
.git) et signale tout ce qui revient. - Fichiers qui changent très vite : repère les ransomware sur un ordinateur portable synchronisé quand des fichiers ne sont plus ce que leur nom prétend, des notes de rançon et des renommages en masse, pas seulement par le débit. Peut facultativement désactiver le compte et clore ses sessions (désactivé par défaut).
- Surveillances : un compte qui devient administrateur, l’authentification à deux facteurs désactivée, un nouveau compte, une adresse qui fonctionne sur plusieurs comptes, un administrateur qui se connecte depuis un nouveau réseau, des applications activées ou désactivées, des domaines de confiance ou des proxies modifiés, un lien ouvert par une foule à qui il n’a jamais été envoyé.
- Inventaire de chaque voie d’entrée : liens publics, sessions, mots de passe d’application, appartenance aux groupes, avec faire expirer, révoquer ou retirer à côté de chacun.
- Notifications : la cloche pour chaque administrateur, l’e-mail pour les constats graves (aussi vers des adresses supplémentaires), un résumé quotidien à une heure que vous choisissez, et un bouton Envoyer un message de test.
- Extras facultatifs : un démon de surveillance des processus (EDR) qui voit quel programme écrit dans le répertoire de données et le suspend, et des analyses ClamAV des fichiers qui ont déjà l’air suspects.
Sentinel ne change rien tout seul, sauf si vous le lui demandez. Il peut être mis en pause, désactivé en tout conservant, ou supprimé avec chaque donnée qu’il a écrite.
Prérequis
- Nextcloud 34, PHP 8.4 ou plus récent. Rien de plus ancien, volontairement.
- Les tâches de fond Nextcloud (Cron) pour les surveillances et le résumé quotidien ; les paramètres de messagerie de Nextcloud pour les alertes par e-mail.
- Démon EDR facultatif : Linux 4.20 ou plus récent, Python 3.9 ou plus récent, root et systemd.
- Facultatif : ClamAV (socket
clamd).
Confidentialité
Pas de télémétrie, pas de service cloud, pas de compte à créer : ce que Sentinel surveille ne quitte jamais votre serveur. La seule connexion sortante est la vérification de la licence vers medialab.works (une fois par jour, chiffrée), qui envoie la clé d’abonnement, l’identifiant de l’instance Nextcloud, une empreinte matérielle hachée, la version de l’application et une somme de contrôle des propres fichiers de l’application — rien sur vos utilisateurs, leurs fichiers, leurs connexions ou leurs événements. Les connexions sont mémorisées par le réseau qu’un compte utilise, pas par l’adresse exacte. Les domaines de confiance et les proxies ne sont stockés que comme empreintes. L’empreinte couvre le code de l’installation, jamais les fichiers des utilisateurs. Tout est conservé dans quatre tables : empreinte, événements, réseaux connus et usage quotidien des liens.
Questions fréquentes
Comment vérifier la sécurité de mon serveur Nextcloud ?
La page de posture de Sentinel liste, le pire d’abord, ce qui affaiblit le serveur (comptes qui se connectent avec un mot de passe seul, mots de passe d’application périmés, sessions inactives, administrateurs inactifs, expiration du certificat, journalisation absente), chacun avec la raison et le correctif. Son auto-sonde demande à votre serveur web, en visiteur anonyme, des fichiers qui ne doivent jamais être servis, comme la configuration, le journal ou les répertoires .git. Voir le guide.
Peut-il détecter les ransomware ? Il repère les ransomware sur un appareil synchronisé quand des fichiers ne sont plus ce que leur nom prétend, des notes de rançon et des renommages en masse, et vous alerte. La désactivation du compte et la clôture de ses sessions est facultative et désactivée par défaut.
Licence
L’application est open source (AGPL-3.0). Ce que vous achetez, c’est l’abonnement aux versions compilées, mises à jour et support pour une instance Nextcloud : des versions prêtes à installer, chaque mise à jour pendant que l’abonnement est actif, et de l’aide quand quelque chose ne fonctionne pas. La version compilée vérifie la clé d’abonnement une fois par jour ; sans abonnement actif, elle s’arrête jusqu’au renouvellement (rien n’est supprimé). Mensuel, annuel ou à vie (la licence à vie inclut un an de mises à jour), ou inclus dans le pack Nextcloud. Essai gratuit de 30 jours.
Code source. Pour chaque version, le code source complet correspondant (non obfusqué, avec les fichiers de compilation : package.json, la configuration de compilation et release.sh) est téléchargeable depuis votre compte (Compte → Licences, Code source) à côté de la version compilée, sous les mêmes règles que celle-ci. Chaque archive contient aussi le texte intégral de l’AGPL-3.0 (COPYING). Si vous avez besoin du code source d’une version que vous ne pouvez plus télécharger, demandez-nous et nous vous l’envoyons.
