Déployer l'agent Onagre sous Windows (Service via sc.exe)

Ce guide explique comment installer l'agent Onagre en tant que service Windows à l'aide du Service Control Manager (sc.exe). Une fois installé, l'agent s'exécute en arrière-plan, démarre automatiquement au boot et communique avec la plateforme Onagre.

Prérequis

  • Windows Server 2016/2019/2022
  • Un token d'agent depuis la plateforme Onagre
  • Connectivité HTTPS sortante vers l'API Onagre (via votre proxy le cas échéant)

Téléchargement de l'agent

L'agent Onagre est disponible pour plusieurs architectures. Utilisez la commande appropriée pour votre système afin de télécharger et installer l'agent :

Windows x64

https://d.onag.re/agent-win-x64.exe

Windows x86

https://d.onag.re/agent-win-x86.exe

Créez un dossier pour l'agent et placez-y le binaire. Les exemples ci-dessous utilisent :

C:\Program Files\Onagre\agent.exe

Si votre organisation utilise la distribution logicielle (SCCM, Intune, etc.), déployez le binaire vers le chemin cible avec les permissions appropriées.

Permissions (recommandé)

mkdir "C:\Program Files\Onagre"
rem Accorder le contrôle total aux administrateurs et restreindre l'héritage si nécessaire
icacls "C:\Program Files\Onagre" /inheritance:r
icacls "C:\Program Files\Onagre" /grant Administrators:(OI)(CI)F

Copiez agent.exe dans ce dossier.

Fournir le token de l'agent (variable d'environnement)

L'agent lit son token depuis la variable d'environnement TOKEN. Définissez une variable d'environnement système afin que le service Windows puisse en hériter :

setx TOKEN "<YOUR_TOKEN>" /M

Note : Vous devez ouvrir une nouvelle invite de commandes administrateur après avoir défini la variable afin que l'environnement mis à jour soit visible pour les commandes suivantes.

Création du service Windows

Utilisez sc.exe pour enregistrer l'agent en tant que service Windows. La configuration la plus simple s'exécute sous LocalSystem et démarre automatiquement.

sc.exe create OnagreAgent ^
  binPath= "\"C:\\Program Files\\Onagre\\agent.exe\"" ^
  start= auto ^
  DisplayName= "Onagre Agent"

Démarrez le service :

sc.exe start OnagreAgent

Vérifiez le statut :

sc.exe query OnagreAgent

Vous pouvez également utiliser Services (services.msc) pour confirmer que le service est en cours d'exécution.

Optionnel : Exécuter sous un compte de service dédié

Pour les environnements avec une séparation des responsabilités plus stricte, vous pouvez exécuter l'agent sous un compte de domaine ou local qui dispose uniquement des permissions nécessaires.

  1. Créez ou choisissez le compte (par ex. DOMAIN\\svc-onagre).
  2. Accordez les droits Lecture et Exécution sur C:\Program Files\Onagre\ à ce compte.
  3. Assurez-vous que le compte peut atteindre les ressources réseau que l'agent doit vérifier.
  4. Mettez à jour le service pour utiliser ce compte :
sc.exe config OnagreAgent obj= "DOMAIN\svc-onagre" password= "<PASSWORD>"

Si vous effectuez une rotation du mot de passe, répétez la commande sc.exe config.

Vérification de la connectivité

  • Confirmez que le service est en état Running (sc query OnagreAgent).
  • Dans l'interface web Onagre, l'agent devrait apparaître en ligne après un court délai.
  • Si un proxy est requis, configurez-le globalement au niveau du système d'exploitation ou pour le compte de service.

Logs et diagnostics

  • Consultez l'Observateur d'événementsJournaux WindowsApplication pour les entrées de l'agent
  • Si vous exécutez temporairement l'agent en mode interactif pour tester, ouvrez une invite élevée et lancez :
    "C:\Program Files\Onagre\agent.exe"
    

Mise à jour de l'agent

  1. Arrêtez le service :
    sc.exe stop OnagreAgent
    
  2. Remplacez agent.exe par la nouvelle version (conservez le même chemin).
  3. Démarrez et vérifiez :
    sc.exe start OnagreAgent
    sc.exe query OnagreAgent
    

Pour les déploiements en entreprise, distribuez le binaire mis à jour avec votre outil de déploiement logiciel.

Gestion du service

  • Statut
    sc.exe query OnagreAgent
    
  • Redémarrage
    sc.exe stop OnagreAgent
    sc.exe start OnagreAgent
    
  • Désactiver le démarrage automatique
    sc.exe config OnagreAgent start= disabled
    
  • Supprimer le service (désinstallation)
    sc.exe stop OnagreAgent
    sc.exe delete OnagreAgent
    

Pare-feu et proxy

  • Assurez-vous que le trafic HTTPS sortant est autorisé depuis l'hôte (vers les endpoints de la plateforme Onagre).
  • Si votre environnement impose un proxy, configurez-le pour le compte de service ou au niveau système. Validez avec netsh winhttp show proxy et configurez avec netsh winhttp set proxy si nécessaire.

Dépannage

  • Le service ne démarre pas
    • Vérifiez que TOKEN est défini au niveau machine : reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v TOKEN
    • Confirmez que le chemin dans binPath est correct et correctement entre guillemets
    • Consultez l'Observateur d'événements pour les erreurs de démarrage
  • Agent non visible dans l'interface
    • Vérifiez l'accès réseau sortant ; confirmez les paramètres de proxy
    • Revérifiez la valeur du TOKEN ; redémarrez le service après les modifications
  • Erreurs de permissions
    • Si l'exécution se fait sous un compte de service, assurez-vous qu'il dispose des droits Lecture et Exécution sur le dossier de l'agent et de l'accès aux ressources surveillées

Résumé

Vous avez installé l'agent Onagre en tant que service Windows natif à l'aide de sc.exe. Le service démarre automatiquement, hérite du TOKEN depuis l'environnement système et communique avec la plateforme Onagre. Maintenez le binaire à jour et surveillez les logs pour un fonctionnement optimal.