Sentinel — installer et exécuter les vérifications de sécurité Nextcloud

Installation

  1. Connectez-vous à votre compte MediaLab Works, ouvrez Licences et téléchargez l’archive de l’application sentinel-x.y.z.tar.gz (disponible avec un abonnement actif, une licence à vie dans sa période de mises à jour, ou pendant l’essai gratuit de 30 jours).
  2. Extrayez-la dans le dossier apps/ (ou custom_apps/) de Nextcloud, de sorte à obtenir apps/sentinel/, appartenant à l’utilisateur du serveur web :
    cd /var/www/nextcloud/apps
    sudo tar -xzf ~/sentinel-x.y.z.tar.gz
    sudo chown -R www-data:www-data sentinel
    
  3. Activez-la : sudo -u www-data php occ app:enable sentinel, ou depuis la page Applications.
  4. Ouvrez Paramètres d’administration → Sentinel → Licence, collez votre clé de licence et enregistrez. L’application contacte le serveur de licences, lie la clé à cette instance Nextcloud et affiche la licence comme Active.

Licence

La licence est vérifiée une fois par jour. Sans Internet, l’application continue de fonctionner 7 jours après la dernière vérification réussie ; après cela, elle est arrêtée jusqu’à pouvoir vérifier à nouveau.

Sans licence valide, l’application est arrêtée : les surveillances et les tâches de fond ne s’exécutent pas et aucune alerte n’est envoyée, ses pages et son API répondent avec la raison, et seule la section Licence continue de fonctionner (vous pouvez y commencer l’essai, saisir la clé ou renouveler). Rien n’est supprimé : l’empreinte, le journal et chaque réglage sont conservés, et la surveillance reprend dès que la licence est valide.

Premiers pas

  1. Prenez l’empreinte, une fois que l’installation est dans l’état où elle doit être : sudo -u www-data php occ sentinel:baseline take (ou depuis la section d’empreinte de la page). Dès lors, seuls les changements depuis ce moment sont signalés.
  2. Assurez-vous que les alertes arrivent : sous Être informé, choisissez à partir de quelle gravité la cloche et l’e-mail sont utilisés, ajoutez une adresse supplémentaire (idéalement une qui arrive sur un téléphone), définissez l’heure du résumé quotidien et appuyez sur Envoyer un message de test.
  3. Lisez la vue d’ensemble : l’état du serveur, ce qui est surveillé et ce qui ne l’est pas, et si les alertes atteindraient quelqu’un.

Configuration

Tout se passe dans Paramètres d’administration → Sentinel (la même console est aussi dans le menu du haut). Rien n’est figé :

Section Ce que vous réglez
Être informé Cloche, e-mail, à partir de quelle gravité pour chacun, adresses supplémentaires, résumé quotidien et son heure
Surveillance Si l’on surveille, à quelle fréquence, qui est informé, à partir de quelle gravité, combien de temps le journal est conservé
Ce qui compte comme trop vieux Mots de passe d’application périmés, sessions inactives, administrateurs inactifs, liens sans expiration
Les fichiers Quelles parties de l’installation l’empreinte couvre, types de fichiers, exclusions, limite de taille, hachage
D’où les gens se connectent Mémoriser les réseaux ou non, avertir sur les nouveaux, la précision d’un réseau, comptes à ignorer
Liens publics Surveiller l’usage des liens, à partir de quelle fréquentation signaler, à partir de quel écart au record propre du lien, les tentatives de mot de passe refusées qui comptent comme de la devinette
Fichiers qui changent très vite Fenêtre, nombre de réécritures, suppressions ou renommages vers une même extension, et si l’on se contente d’alerter ou de désactiver le compte
Demander au serveur ce qu’il sert Sonde activée ou désactivée, chemins supplémentaires, jours d’avertissement avant l’expiration du certificat
Quel programme écrit Si le démon EDR est attendu, et où il dépose ses rapports
Un scanneur à interroger Utiliser ClamAV, son socket, quelle part d’un fichier envoyer

Démon EDR facultatif (livré dans apps/sentinel/edr/, tourne en root hors de Nextcloud) :

cd /var/www/nextcloud/apps/sentinel/edr
sudo sh install.sh
sudoedit /etc/sentinel-edr/config.ini    # au minimum data_dir
sudo sh install.sh                       # de nouveau, pour lui donner les accès nécessaires
sudo systemctl enable --now sentinel-edr

Utilisation quotidienne

  • Agissez sur les constats de la vue d’ensemble : chacun dit ce qu’il signifie, ce qui se passe s’il est ignoré, et le correctif (faire expirer, révoquer, retirer) est juste à côté.
  • Après une mise à jour de Nextcloud ou d’une application, approuvez les fichiers modifiés : occ sentinel:baseline accept --all --note "Nextcloud 34.0.4". Il ne reste alors que les changements inexpliqués.
  • Depuis un terminal : occ sentinel:check (le rapport ; --inventory, --json, --quiet-when-clean, --probe). Le code de retour est non nul quand quelque chose demande l’attention, donc une entrée cron hebdomadaire qui n’envoie un e-mail qu’en cas d’échec tient sur une ligne.
  • Désactiver Sentinel (en bas de la page) : mettre la surveillance en pause, désactiver l’application en tout conservant, ou la supprimer avec chaque donnée qu’elle a stockée. occ app:disable sentinel conserve tout ; occ sentinel:remove la supprime.

Dépannage

  • La section d’intégrité liste de nombreux fichiers modifiés juste après l’installation : aucune empreinte n’a encore été prise, ou une mise à jour n’a pas été approuvée. Prenez-la, ou exécutez occ sentinel:baseline accept --all --note "..." après vérification.
  • Rien n’est surveillé alors que l’application est activée : les tâches de fond doivent s’exécuter (Cron). Après une désactivation et une réactivation, ouvrez une fois la page Sentinel : les tâches sont réinstallées et le contrôle de configuration le signale.
  • Les alertes par e-mail n’arrivent pas : vérifiez les paramètres du serveur de messagerie de Nextcloud et utilisez Envoyer un message de test. Les administrateurs sans adresse e-mail ne reçoivent que la cloche.
  • La suppression avec occ app:remove sentinel a laissé des tables dans la base de données : supprimez-la depuis l’application ou avec occ sentinel:remove à la place. Les comptes désactivés par Sentinel le restent jusqu’à leur libération (--release-accounts), et le démon EDR continue de tourner jusqu’à ce que vous l’arrêtiez : systemctl disable --now sentinel-edr.

Le téléchargement nécessite une licence ou l’essai gratuit de 30 jours.