Archives par mot-clé : Script

Jamf Pro : contrôler quand installer un profil durant le déploiement

Allez, ça faisait un longtemps, un article bien technique, à l’attention d’un public averti. Je vais d’ailleurs cette année essayer de pousser un peu plus ces articles techniques destinés aux administrateurs systèmes et gestionnaires de MDM Apple.

Dans le cadre d’une intégration Jamf Pro chez un des mes clients, j’ai du gérer la problématique suivante :

Comment contrôler à quel moment un profil de configuration doit être installé sur un Mac ?

En effet, une fois un Mac enrôlé dans le MDM (que ça soit automatiquement au démarrage via le programme Apple Business Manager ou Apple School Manager, ou manuellement), à partir du moment où l’on souhaite par exemple déployer un profil Wi-Fi, il est déployé automatiquement via la magie du push. Ce qui pose le risque de casser le déploiement si le profil Wi-Fi impose une bascule automatique.

Exemple : vous êtes employé de Gete.Net Consulting, et vous recevez votre nouveau Mac rutilant. Votre nouveau boss, qui a tout prévu, vous a fait livrer votre Mac, et vous devez l’enrôler dans votre solution de gestion. Ce Mac a été prévu pour se connecter automatiquement au réseau GeteOuEssayéMaisRienNWiFi, dont le mot de passe particulièrement complexe est intégré au profil. Ce qui peut présenter l’avantage d’éviter de devoir transmettre le mot de passe oralement ou par écrit, et de lui donner une complexité bien plus importante. Le profil pourrait aussi permettre de pousser une authentification au Wi-Fi via certificat, ce qui est bien plus sécurisé.

Cependant, si le réseau est à portée d’antenne, le Mac aura tendance durant l’enrôlement à basculer sur ce réseau Wi-Fi sécurisé dès qu’il sera disponible, sans s’occuper de savoir si le reste de l’enrôlement (installation de logiciels par ex) est terminé. Ce qui peut être gênant, vous en conviendrez.

Pour éviter cette rupture dans le déploiement, on peut avoir deux approches :

  1. Fournir le profil à l’utilisateur via le Self Service de Jamf Pro ;
  2. Utiliser une méthode un peu plus complexe, mais entièrement automatisée.

Si nous optons pour l’approche automatisée, voici comment faire. Attention, c’est particulièrement sioux.

Créer un attribut d’extension

Dans la console Jamf Pro, cliquez sur Réglages > Ordinateur et sélectionnez Attributs d’extension.

Cliquez sur Nouveau

Appliquez les différents réglages comme sur la capture d’écran ci-dessous. Pour ce qui est du script lui-même, voici son contenu :

!/usr/bin/env bash
RESULT="Wifi KO"
if [ -f "/var/db/.wifi-ok" ] ; then
RESULT="Wifi OK"
fi
/bin/echo "$RESULT"

Par défaut, on aura donc un attribut d’extension dont le résultat est Wi-Fi KO. Les chemins et les noms de fichier choisis ici sont par ailleurs totalement arbitraires, vous pouvez donc les customiser comme vous le souhaitez.

Variante : vous pouvez aussi créer le fichier à la fin d’un script d’enrôlement pour indiquer que l’enrôlement est bien terminé pour appliquer d’autres conditions. Vous pourriez donc nommer le fichier .EnrolementFini si ça vous chante. Par contre, je vous conseille de le laisser invisible. Perso, je génère un dossier au nom du client dans /usr/local et j’essaie de créer une petite hiérarchie propre dedans, donc ça pourrait être /usr/local/getenet/.EnrolementFini.

Créez un groupe intelligent

Une fois votre attribut étendu généré :

  1. Cliquez sur Groupe intelligent d’ordinateurs > Nouveau ;
  2. Cliquez sur Afficher les critères avancés ;
  3. Choisissez votre critère Activation Wi-Fi ;
  4. Dans la case Valeur, tapez Wifi OK (ou toute autre valeur générée dans le script).
  5. Enregistrez.

Associer le groupe au profil Wi-Fi

Il nous faut maintenant créer notre profil Wi-Fi pour l’associer au Groupe intelligent. Pas l’opération la plus dure :

  1. Cliquez sur Profils de configuration ;
  2. Cliquez sur Nouveau ;
  3. Remplissez votre profil de configuration Wi-Fi comme d’habitude ;
  4. Cliquez sur Périmètre ;
  5. Cliquez sur Computer Groups ;
  6. Cliquez sur le bouton Add en face de votre groupe intelligent créé précédemment (oui, la régionalisation de Jamf Pro, c’est pas toujours ça…) ;
  7. Validez, comme Johnny.

Pfiouuuu. Allez, c’est presque fini.

Activer l’état Wi-Fi Ready

Mais comment lui faire changer son état ? Facile : il suffit de générer le fichier /var/db/.wifi-ok via une simple commande, par exemple en ajoutant dans le script de déploiement la commande :

touch /var/db/.wifi-ok

Suivie d’une mise à jour de l’inventaire :

jamf recon

Notez que tout cela doit se faire dans le contexte du compte root (mais Jamf lance tous les scripts en tant que root, donc c’est OK).

Personnellement, j’ai utilisé cette méthode chez deux clients différents, et elle fonctionne parfaitement avec une version modifiée du script DEPNotify Starter, en générant le fichier à la fin du script.

Et si vous avez besoin d’aide pour mettre cette solution en place, il suffit de demander.

Un service de compteur de signes, mots et paragraphes (10.6 et 10.7)

[MàJ] Ajout de la compatibilité avec Snow Leopard.  Merci à Didier Lazzarollo pour son correctif :-) Vous pouvez le télécharger à nouveau ici.

J’avais développé il y a longtemps un AppleScript pour Quark XPress permettant de facilement compter les signes d’un document, ainsi que le nombre de mots et de paragraphes contenus dans un bloc. Comme je m’amusais un peu avec les services aujourd’hui, j’ai décidé d’essayer d’adapter ce script pour le faire tourner sous la forme de service, afin de le rendre ainsi disponible dans toutes les applications de Mac OS X.

Voici donc le résultat : un compteur de signes que vous pouvez installer sur votre Mac et utiliser dans 99% des applications, y compris dans des pages web. Il suffit de sélectionner un texte, puis de faire un clic droit (ou via le menu de l’application > Services), et zou, un joli dialogue apparaît avec le nombre de caractères, de mots et de paragraphes de la sélection. Et tout ça sans passer par un copier-coller, c’est ça la magie des services !

Compteur de signes resultat

Le service Compteur de mots se télécharge ici (75 Ko) et fonctionne sous Lion et Snow Leopard). Pour l’utiliser, copiez le dans le dossier Bibliothèque/Services. Si vous cherchez encore le dossier Bibliothèque sous Lion, je vous rappelle que vous pouvez le retrouver en enfonçant la touche Option et en cliquant sur le menu Option. Double-cliquer dessus permet également de l’installer au bon endroit.

Et au passage, rappel d’une autre astuce (qui se trouve sûrement dans Lion Efficace mais j’ai la flemme de chercher…) : n’oubliez pas que vous pouvez attribuer un équivalent-clavier à ce service via la préférence Système Clavier…

Compteur de signes