Aller au contenu principal

Déployer sur beaucoup de machines

Ce que fait un jeton de déploiement​

Un jeton de déploiement enrôle plusieurs machines d'un même client avec une seule valeur. Vous le donnez à votre outil de déploiement : GPO, Intune, SCCM, Ansible ou cloud-init. Chaque machine qui s'enrôle reçoit sa propre identité, son propre secret et son propre dépôt. Le jeton ne donne accès à aucune donnée de sauvegarde.

Un jeton de déploiement a un nombre maximal de machines, une durée de validité, des plages d'adresses IP autorisées et des tags. Le portail compte les machines enrôlées et les liste.

Un jeton d'enrôlement, lui, sert une seule fois, pour une seule machine. Voir Créer un jeton d'enrôlement.

Prérequis​

  • Le rôle Technicien ou Administrateur. Un rôle Lecture seule lit la liste des jetons de déploiement, mais il n'en crée aucun et n'en révoque aucun. Voir Rôles et droits.
  • Un client déjà créé. Un jeton de déploiement appartient à un seul client. Voir Clients.
  • Des machines prêtes. Voir Avant d'installer.
  • Un outil de déploiement qui lance une commande en root sur Linux, ou avec un compte administrateur sur Windows.

Créer un jeton de déploiement​

  1. Ouvrez la fiche du client qui reçoit les machines. Voir Clients.

  2. Cliquez sur Ajouter un endpoint.

  3. Choisissez le type Machine.

  4. Sous Combien de machines ?, choisissez Déploiement en masse.

  5. Remplissez le formulaire :

    ChampCe qu'il fait
    Nombre maximal de machinesLe nombre de machines que le jeton enrôle. Laissez le champ vide pour ne pas fixer de limite. Valeur maximale : 1 000 000.
    Durée de validité (jours)La durée de vie du jeton, à partir de sa création. Valeur par défaut : 30 jours. Valeur maximale : 365 jours.
    Plages IP autoriséesLes adresses sources qui ont le droit de s'enrôler. Facultatif. Voir « Limiter les adresses autorisées » plus bas.
    TagsLes tags que chaque machine enrôlée reçoit. Facultatif. Un jeton porte une seule valeur par clé, et 20 tags au plus.
  6. Cliquez sur Créer le jeton de déploiement.

Le portail remplace le formulaire par le résultat. Il affiche :

Ce que le portail afficheÀ quoi cela sert
Linux : à lancer en root sur la machineLa commande complète pour Linux, avec le jeton.
Windows : à lancer dans PowerShell en administrateurLa commande complète pour Windows, avec le jeton.
Jeton de déploiement, pour votre outil de déploiementLe jeton seul.
Nombre maximal de machines, Expiration, Plages IP autorisées, TagsLes réglages du jeton.
  1. Cliquez sur Copier, à côté de la commande de votre système ou du jeton seul. Faites-le maintenant : le portail n'affiche le jeton qu'une seule fois.
  2. Cliquez sur Fermer.

Le serveur ne garde pas le jeton en clair. Personne ne le relit, ni vous, ni le support. Perdu, il faut créer un autre jeton, puis révoquer le premier.

Vous ouvrez aussi cette fenêtre depuis la page Parc, avec le bouton Ajouter un endpoint. Le formulaire demande alors le client.

Limiter les adresses autorisées​

Une plage d'adresses IP réduit le risque d'un jeton qui fuite : une machine hors de la plage ne s'enrôle pas.

  1. Dans le champ Plages IP autorisées, saisissez les plages au format CIDR, par exemple 192.0.2.0/24. IPv4 et IPv6 sont acceptés. Pour une seule adresse, écrivez /32 (IPv4) ou /128 (IPv6).
  2. Séparez les plages par une virgule ou par une espace. Saisissez 50 plages au plus.
  3. Laissez le champ vide pour accepter toutes les adresses.

Le serveur garde l'adresse réseau de chaque plage. Une saisie 10.0.0.1/24 est donc enregistrée comme 10.0.0.0/24.

Le serveur compare l'adresse source de la demande d'enrôlement aux plages du jeton. Une adresse hors des plages est refusée. Une demande dont l'adresse source est inconnue est aussi refusée, quand le jeton porte des plages.

Déployer sur des machines Windows​

La commande Windows met le jeton dans une variable d'environnement de la session PowerShell, puis elle lance le script d'installation depuis la mémoire. Le jeton ne passe jamais dans la ligne de commande du programme.

  1. Copiez la commande Windows affichée à la création du jeton.
  2. Collez-la dans un script PowerShell de votre outil de déploiement (Intune, GPO ou SCCM).
  3. Réglez l'outil pour lancer le script avec un compte administrateur local, en 64 bits.
  4. Ajoutez un test avant la commande : arrêtez le script quand le fichier %ProgramData%\BaaStide\agent.conf existe déjà. Ce test évite une deuxième installation sur la même machine.
  5. Lancez le déploiement sur un seul poste de test. Vérifiez que la machine apparaît dans les endpoints du client.
  6. Lancez le déploiement sur le reste du parc.

Déployer sur des machines Linux​

La commande Linux met le jeton dans une variable d'environnement de l'interpréteur, puis elle télécharge et lance le script d'installation. Le jeton ne passe jamais dans la ligne de commande du programme.

  1. Copiez la commande Linux affichée à la création du jeton.
  2. Collez-la dans votre outil : une tâche Ansible, la section runcmd d'un fichier cloud-init, ou un script de première installation.
  3. Vérifiez que l'outil lance la commande en root.
  4. Ajoutez un test avant la commande : arrêtez le script quand le fichier /etc/baastide/agent.conf existe déjà. Ce test évite une deuxième installation sur la même machine.
  5. Lancez le déploiement sur une seule machine de test. Vérifiez qu'elle apparaît dans les endpoints du client.
  6. Lancez le déploiement sur le reste du parc.

Quand votre MSP a changé les noms de l'agent, les chemins des deux tests suivent ces noms. Voir Marque blanche de l'agent.

Suivre les machines enrôlées​

  1. Ouvrez la fiche du client.

  2. Allez au bloc Jetons de déploiement.

  3. Lisez le tableau. Il donne les jetons du client, le plus récent en premier.

    ColonneCe qu'elle donne
    MachinesLe nombre de machines enrôlées, sur le nombre maximal. Le lien ouvre la page du jeton.
    StatutActif, Plein, Révoqué ou Expiré.
    Expire leLa date de fin du jeton.
    TagsLes tags que le jeton donne à ses machines.
    Plages IPLes plages autorisées, ou Toutes les adresses.
    Créé leLa date de création.
  4. Choisissez un Statut dans la liste déroulante pour ne garder qu'un statut.

  5. Cliquez sur le nombre de la colonne Machines. La page du jeton s'ouvre.

  6. Lisez le bloc Machines enrôlées. Il donne une ligne par machine, la plus récente en premier.

    ColonneCe qu'elle donne
    MachineLe nom de la machine. Le lien ouvre la fiche de l'endpoint. Une machine supprimée n'a plus de lien.
    StatutActif ou Supprimé.
    EnrôléeLa date de l'enrôlement.
    Adresse IP sourceL'adresse d'où l'enrôlement est parti.
    Identifiant de machineL'identifiant que l'agent a envoyé.

Une machine enrôlée ne sauvegarde rien avant de recevoir une politique de sauvegarde. Créez la politique de chaque machine après le déploiement.

Révoquer un jeton de déploiement​

Révoquez le jeton dès la fin de la campagne de déploiement, ou dès que le jeton a pu fuiter.

  1. Ouvrez le bloc Jetons de déploiement du client, ou la page du jeton.
  2. Cliquez sur Révoquer.
  3. Lisez la fenêtre Révoquer ce jeton de déploiement ?. Elle donne la date de création du jeton et le nombre de machines enrôlées. Vérifiez-les.
  4. Cliquez sur Révoquer le jeton.

Aucune nouvelle machine ne s'enrôle avec ce jeton. Les machines déjà enrôlées continuent de fonctionner. L'action est définitive.

Un jeton Plein se révoque aussi : il reste valable jusqu'à son expiration.

Limites et précautions​

  • Le portail affiche le jeton une seule fois, à sa création.
  • Un jeton de déploiement est un secret. Il enrôle de nouvelles machines dans votre client. Ne l'écrivez pas dans un ticket, un message ou un dépôt de code.
  • La commande d'installation contient le jeton. Le fichier de script de votre outil de déploiement le contient donc aussi. Limitez l'accès à ce fichier, puis retirez-le et révoquez le jeton à la fin de la campagne.
  • Gardez le jeton dans une variable d'environnement, comme la commande du portail le fait. Un jeton passé en argument de commande est lisible par tous les comptes de la machine.
  • Lancez la commande une seule fois par machine. Avec le jeton dans la variable d'environnement, une deuxième exécution demande un nouvel enrôlement. Le serveur le refuse, parce qu'une autre machine active du client porte déjà le même identifiant machine. L'installation s'arrête en erreur, et une alerte s'ouvre sur la machine déjà enrôlée.
  • Une machine clonée garde l'identifiant machine de son modèle. Son enrôlement est refusé pour la même raison. Donnez un nouvel identifiant machine au clone avant d'installer l'agent : Sysprep sous Windows, un nouveau /etc/machine-id sous Linux. Puis relancez l'installation. Voir Avant d'installer.
  • Un enrôlement refusé pour identifiant machine en double ouvre une alerte sur l'endpoint déjà enrôlé. Cette alerte est toujours active. Le résumé par email la nomme « Enrôlement refusé : machine déjà enrôlée (VM clonée ?) ». Le portail ajoute une seule alerte par identifiant machine.
  • Le Journal d'audit trace la création du jeton, sa révocation et chaque refus d'enrôlement, sous les actions « Jeton de déploiement créé », « Jeton de déploiement révoqué » et « Enrôlement refusé ». Le journal ne contient jamais le jeton.
  • La création d'un jeton de déploiement ne vérifie pas la licence. Chaque enrôlement, lui, la vérifie. Une licence qui n'accepte plus de machine refuse l'enrôlement, et le compteur du jeton ne bouge pas : le jeton sert encore dès que la licence le permet.
  • Un statut Révoqué ou Expiré gagne sur le statut Plein.
  • Un client dont la suppression est demandée n'accepte aucun nouveau jeton.
  • Les machines enrôlées ne sauvegardent rien tant qu'elles n'ont pas de politique de sauvegarde.
  • Le compteur de machines ne dépasse jamais le nombre maximal, même quand beaucoup de machines s'enrôlent en même temps.

Référence​