PatchMon : Installation et configuration

PatchMon : Installation et configuration

Introduction

Dans la situation actuel, maintenir ses serveurs à jour n’est plus une option, mais une nécessité. Entre les correctifs de sécurité critiques, les mises à jour système et la gestion de multiples machines, il devient vite difficile de garder une vision claire de l’état de son infrastructure.

C’est là qu’intervient PatchMon, une solution open source conçue pour simplifier le suivi des mises à jour sur vos serveurs Linux. Grâce à un tableau de bord centralisé et à des agents légers, PatchMon permet de détecter rapidement les correctifs manquants et d’anticiper les risques liés aux vulnérabilités.

Dans cet article, nous allons découvrir comment PatchMon peut vous aider à améliorer la sécurité et la gestion de votre parc Linux.

Présentation de PatchMon

PatchMon est un outil open source dédié à la supervision des mises à jour sur les serveurs Linux. Il permet de centraliser les informations liées aux correctifs disponibles et de visualiser rapidement l’état de chaque machine depuis un tableau de bord unique. Grâce à son système d’agents légers, PatchMon collecte automatiquement les données et aide à identifier les mises à jour manquantes, notamment celles liées à la sécurité. Il constitue ainsi une solution efficace pour améliorer la gestion des patchs et renforcer la sécurité d’une infrastructure Linux.

Prérequis

Pour le bon fonctionnement de Patchmon, il y a quelques prérequis à installer.

Docker

L'installation de Docker et Docker Compose est requise. Vous pouvez retrouver notre article sur ce sujet ci-dessous !

Docker : Installation sur Debian
Installer Docker sur Debian 12 – Tutoriel Complet et Simple.

Curl

Nous aurons besoin de curl pour récupérer le docker sur le dépôt officiel de Patchmon

sudo apt install curl

Installation

Rien de plus simple pour l'installation, Patchmon a son docker déjà fait sur leur github.

Dans un premier temps, nous allons créer un dossier et se déplacer dedans pour avoir une arborescence propre.

mkdir patchmon
cd patchmon

Puis exécutez la commande suivante qui permet de télécharger et exécuter automatiquement un script d’installation depuis le dépôt GitHub de PatchMon. Le script setup-env.sh de PatchMon sert à préparer automatiquement votre environnement pour faire tourner l’application via Docker : il vérifie que Docker (et parfois Docker Compose) est installé, crée ou configure les variables d’environnement (.env), télécharge les images nécessaires, puis initialise la configuration pour que vous puissiez lancer PatchMon rapidement.

bash -c "$(curl -fsSL https://raw.githubusercontent.com/PatchMon/PatchMon/refs/heads/main/docker/setup-env.sh)"

Vous pouvez retrouver le dépot Github ci-dessous :

GitHub - PatchMon/PatchMon: Linux Patch Monitoring Automation Platform
Linux Patch Monitoring Automation Platform. Contribute to PatchMon/PatchMon development by creating an account on GitHub.

Une fois le installé, démarré alors le docker

docker compose up -d

Configuration sur l'interface web

Une fois le docker lancé, vous pouvez vous rendre sur l'interface web en tapant l'adresse IP de votre appareil, suivit du port 3000 (exemple : 192.168.1.20:3000)

En arrivant sur la page, vous devez créer le compte administrateur principal qui vous permettra de gérer PatchMon ; pour cela, renseignez votre prénom et votre nom, choisissez un nom d’utilisateur, indiquez une adresse email valide, puis définissez un mot de passe sécurisé respectant les critères demandés (au moins 8 caractères avec majuscule, minuscule, chiffre et caractère spécial), confirmez ce mot de passe en le saisissant à nouveau, puis cliquez sur « Next ».

💡
Pour générer un mot de passe sécurisé, vous pouvez utiliser notre générateur de mot de passe Minp :
Minp - Générateur de mots de passe
Minp est un générateur de mots de passe en ligne gratuit. Créez des mots de passe sécurisés et personnalisés pour protéger vos comptes.

Cette étape vous propose d’activer l’authentification multi-facteurs (MFA) afin de renforcer la sécurité de votre compte en ajoutant un code temporaire (TOTP) en plus de votre mot de passe, que vous pouvez configurer dès maintenant ou ultérieurement.

Si vous choisissez de configurer la MFA, vous pouvez utiliser l'application Microsoft Authenticator. Vous devrez scanner le QR code avec l’application sur votre téléphone.

Puis saisir le code temporaire généré par celle-ci pour valider l’activation et sécuriser votre compte.

Cette étape vous permet de confirmer l’URL du serveur utilisée par les agents pour se connecter, en choisissant le protocole (HTTP ou HTTPS), en renseignant l’adresse et le port, ainsi que l’utilisation éventuelle d’un certificat SSL auto-signé.

À cette étape, vous devez confirmer l’URL que les agents utiliseront pour se connecter au serveur PatchMon.

Concrètement, vous définissez ici :

  • le protocole (HTTP ou HTTPS),
  • l’adresse du serveur (IP ou nom de domaine),
  • ainsi que le port utilisé.

Si vous avez configuré PatchMon en HTTPS via un reverse proxy (comme Nginx), il est recommandé de sélectionner HTTPS, d’indiquer l’adresse du serveur, et d’utiliser le port 443 (ou de laisser le champ vide selon la configuration).

L’option “self-signed SSL certificate” doit être activée si vous utilisez un certificat auto-signé. Cela permettra aux agents d’ignorer les erreurs de certificat lors de la connexion.

Pour mettre votre interface Patchmon en HTTPS vous pouvez suivre le tutoriel ci-dessous

Comment sécuriser son site web en HTTPS ?
Découvrez pourquoi il est important de sécuriser son site web en HTTPS et suivez son installation pas à pas.

Cette étape vous propose de choisir si vous souhaitez recevoir des notifications concernant la sécurité et les informations importantes liées à votre instance PatchMon, il s’agit d’une option facultative que vous pouvez activer ou laisser désactivée selon vos préférences.

Une fois ces étapes terminées, vous pouvez accéder au dashboard.

Présentation du Dashboard

Le dashboard PatchMon constitue la page principale et apporte une vue d’ensemble claire et en temps réel de votre infrastructure. Il permet de visualiser rapidement l’état global de vos machines, notamment le nombre total d'hôte, leur niveau de mise à jour, les éventuels correctifs de sécurité à appliquer ainsi que leur disponibilité. Des graphiques et indicateurs viennent compléter ces informations afin de suivre l’évolution des packages, le statut des mises à jour et la conformité des systèmes. Il est bien sur personnalisable !

Le menu situé à gauche est organisé en plusieurs sections. La partie "Assets" regroupe les éléments essentiels de votre infrastructure : l’onglet "Hosts" permet de gérer et suivre vos machines, Repos sert à administrer les dépôts de paquets, et Packages offre une vue détaillée des logiciels installés et de leur état.

La section "Operations" est dédiée aux actions de gestion. L’onglet "Patching" permet de planifier et appliquer les mises à jour, "Compliance" sert à vérifier la conformité des systèmes selon des règles définies, "Reporting" permet de générer des rapports, et "Docker "(en version bêta) propose une gestion des environnements conteneurisés.

Enfin, la section "System" regroupe les paramètres globaux de la plateforme. L’onglet "Automation" permet d’automatiser certaines tâches, "Settings" donne accès à la configuration générale, et "Links" propose des raccourcis ou intégrations utiles.

En complément, une barre de recherche en haut de l’écran facilite l’accès rapide aux différents éléments, tandis que le profil utilisateur, affiché en bas à gauche, permet de consulter les informations du compte et son rôle. Ainsi, le dashboard PatchMon centralise toutes les informations nécessaires pour superviser efficacement votre infrastructure.

Ajouter des hôtes

Pour ajouter des machines, il vous suffit de vous rendre dans le menu "Hosts"

Puis de cliquer sur "Add Host". Dans cet onglet, vous pouvez retrouver toutes les machines que vous aurez remontées.

Dans un premier temps, le type d'OS va vous être demandé

Puis entrer le nom du serveur que vous souhaitez remonter.

Les deux options proposées dans cette étape sont des intégrations facultatives que vous pouvez activer selon vos besoins :

  • Docker : cette option permet à PatchMon de superviser les environnements Docker présents sur l'hôte. En l’activant, vous pourrez suivre les conteneurs, leurs images et leur état, ce qui est utile si votre machine utilise des applications conteneurisées.
  • Compliance : cette option active le suivi de conformité de l'hôte. Elle permet de vérifier que la machine respecte certaines règles ou standards de sécurité (benchmarks, politiques internes, etc.), et d’identifier les éventuels écarts à corriger.

Ces options ne sont pas obligatoires et peuvent être activées uniquement si elles correspondent à votre usage.

Cela va vous demandez d’exécuter une commande sur votre machine Linux afin d’installer l’agent PatchMon. Il suffit de copier la commande fournie puis de la lancer dans le terminal du serveur concerné. Une fois l’agent installé et lancé, celui-ci va automatiquement se connecter à votre instance PatchMon, et l’assistant attendra cette connexion pour finaliser l’ajout de l'hôte.

Le temps que la remontée se fasse, il attend la connexion entre le serveur et l'hôte

Collez alors la commande sur la machine que vous souhaitez remonter. Aucune autre action à effectuer après le lancement de la commande, le terminal vous rendra la main une fois l'installation de l'agent terminée.

Une fois terminé, vous retrouverez alors l'hôte dans la liste

L’option “Agent Auto Update” dans un hôte permet d’activer la mise à jour automatique de l’agent PatchMon installé sur la machine.

Concrètement, lorsque cette option est activée :

  • l’agent vérifie régulièrement s’il existe une nouvelle version
  • si une mise à jour est disponible, il se met à jour automatiquement
  • cela garantit que l’agent reste compatible avec le serveur et bénéficie des dernières corrections et amélioration

Je vous conseille donc de l'activer sur tous vos hôtes !

Création d'un groupe

Les groupes d'hôtes permettent de regrouper plusieurs machines afin de faciliter leur gestion, notamment pour appliquer des "policies de patching" ou de conformité en une seule fois.

Dans le menu de gauche, allez dans :
"Settings" puis "Host Groups" puis "Create Group"

Entrez alors le nom du groupe et choisissez la couleur

Ajouter les machines au groupe

Pour ajouter les machines au groupe, rendez-vous dans l'onglet "Hosts", sélectionnez tous les hôtes que vous voulez dans ce groupe et cliquez sur "Assign to Group"

Cela va vous afficher tous les hôtes que vous avez sélectionnés. Sélectionnez le groupe que vous souhaitez si vous en avez créé plusieurs et cliquez une nouvelle fois sur "Assign to Groups" et toutes les machines seront affectées.

Communication entre l’agent et le serveur PatchMon

Le fonctionnement de PatchMon repose sur une communication directe entre les agents installés sur les machines et le serveur.

Une fois installé sur un hôte, l’agent établit une connexion sortante vers le serveur PatchMon via l’URL configurée (HTTP ou HTTPS). Cette connexion est initiée par l’agent, ce qui signifie qu’il n’est généralement pas nécessaire d’ouvrir des ports entrants sur les machines supervisées.

L’agent a pour rôle de :

  • remonter les informations système (OS, packages, état des mises à jour)
  • envoyer régulièrement des données de statut (santé, sécurité, conformité)
  • exécuter des actions demandées par le serveur (comme le patching)

De son côté, le serveur :

  • centralise toutes les données reçues
  • analyse l’état des machines
  • envoie des instructions aux agents (mises à jour, scans, etc.)

Les échanges se font via une API sécurisée, et peuvent être chiffrés si vous utilisez le protocole HTTPS. L’agent communique de manière périodique pour récupérer les éventuelles actions à exécuter et envoyer ses rapports.

Mise à jour des machines

PatchMon permet de gérer les mises à jour de deux façons : manuelle ou automatique.

Mise à jour manuelle

Dans un premier temps, rendez-vous dans la section Packages depuis le menu principal. Cette vue affiche la liste des paquets installés sur vos hôtes, ainsi que leur état (à jour ou nécessitant une mise à jour). Vous pouvez alors repérer les packages qui disposent d’une version plus récente.

Ensuite, en sélectionnant un package (ou plusieurs), vous avez la possibilité de lancer une action de mise à jour.

Les machines qui sont impactées sont alors sélectionnées

Vous pouvez sélectionner les packages à mettre à jour ou tout sélectionner

Une validation va être effectuée, cliquer alors sur "Run Validation"

Un récapitulatif va être alors affiché pour dire que tout est bon et prêt à être effectué

Vous pouvez alors sélectionner si vous souhaitez le faire maintenant ou plus tard à une heure précise

Ou l'effectuer immédiatement

Ensuite, il faut donner son accord pour le faire dans l'immédiat.

Ou vous avez une seconde option,qui permet de soumettre le patch à validation avant exécution. Au lieu de lancer immédiatement l’opération, elle crée une demande d’approbation qui devra être examinée par un second validateur, puis le patch pourra être lancé plus tard depuis l’historique des exécutions (Runs & History).

Il vous affiche un récapitulatif de toutes les machines, cliquez alors sur "Queue & Patch X hosts"

L’agent sur la machine exécute alors la mise à jour du package

Mise à jour automatique

Pour les mises à jour automatique, rendez vous dans l'onglet "Patching" et dans "Policies". Cliquez alors sur "Create policy".

Une policy dans PatchMon est une règle de gestion automatisée qui permet de définir comment, quand et sur quelles machines appliquer des actions, notamment les mises à jour.

Entrez le nom de votre "policy" et sélectionnez le "patch delay" sur "Fixed time", puis entrez l'heure à laquelle vous souhaitez qu'elle s'exécute.

Une fois le groupe créé, il faut ajouter les machines. Cliquez alors sur "assignement(s)"

L'intérêt d'avoir créé un groupe auparavant est que vous avez juste à le sélectionner et de l'ajouter. Une fois ajoutées, les paquets des machines se mettront automatiquement à jour à l'heure que vous avez renseignée

Récapitulatif mise à jour

Une fois les mises à jour effectué, vous pouvez retrouver le récapitulatif dans l'onglet "overview"

Conclusion

PatchMon est une solution complète qui permet de centraliser la gestion, la supervision et la mise à jour de vos machines de manière simple et efficace. Grâce à son architecture basée sur un serveur central et des agents, il offre une visibilité en temps réel sur l’état de votre infrastructure tout en automatisant des tâches essentielles comme le patching et le suivi de sécurité.


Pour nous aider à nous améliorer, n'hésitez pas à faire part de vos avis en commentaires ou même à poser vos questions si vous avez besoin d'aide supplémentaire.

Vous pouvez également partager cet article et nous suivre sur Twitter/X :

x.com

ainsi que sur Instagram :

Makeinlab (@ma.in.lab) • Instagram photos and videos
20 Followers, 5 Following, 79 Posts - See Instagram photos and videos from Makeinlab (@ma.in.lab)

Et même sur TikTok :

@makeinlab.fr

Lire plus