Déployer Apex One sur macOS avec Microsoft Intune

By | 6 décembre 2022

Cette semaine, je vous propose un article différent et sur un plateforme sur laquelle je n’ai pas l’habitude de poster. Je travaille actuellement sur le déploiement d’appareils Apple (iOS/macOS) chez un client et même si ce n’est pas une découverte, l’évolution de la gestion de ces appareils avec la plateforme de Microsoft mérite quelques articles dédiés.

Pour ce billet, nous allons nous pencher sur l’installation et la configuration de la solution APEX One (Trend Micro).

Préambule

Même si ce n’est pas un prérequis à l’installation d’Apex One mais plutôt histoire de planter le décor, l’ensemble des appareils Apple chez le client sont déployés au travers d’Apple Business Manager (anciennement DEP). J’ai également eu l’occasion de mettre en place la fédération Apple/Azure AD afin de générer automatiquement des compte Apple gérés, cette partie sera décrite dans un billet dédié.

Approche initiale

Soyons honnête, le déploiement d’applications macOS (pkg/dmg) reste un sujet épineux à gérer avec Microsoft Intune, même si désormais il n’est plus nécessaire de recourir à une wrapper, j’ai souvent rencontré des problèmes d’installation. J’ai donc tenté une première approche en créant un nouveau LOB dans Microsoft Intune avec la source d’installation issue de la console Trend.

Au-delà d’un phénomène d’installation aléatoire, je me suis rendu compte que le package ne comportait pas les variables du fichiers de préférences (avec entre autre l’adresse du serveur et quelques informations obligatoires) mais surtout le certificat pour enregistrer la machine sur le serveur de gestion.

La bonne nouvelle, c’est que je peux publier le certificat et le fichier de préférences avec le MDM, mais la mauvaise nouvelle c’est que je ne peux orchestrer le tout lors du déploiement. Apres vérification, le déploiement « peut » fonctionner, mais c’est aléatoire, donc non recevable.

Solution

Après quelques recherches, j’ai décidé de recycler un script trouvé sur le forum Jamf afin de déployer l’application via le Microsoft Intune Scripting Agent. En réalité, le Scripting Agent va indiquer un chemin ou récupérer le fichier zip via Curl, le décompresser (avec les fichiers paramètres présent dans l’archive) puis exécuter l’installation.

#!/bin/bash

#Switch to the /tmp directory
cd /tmp

#Download the Trend installer from Trend Console
curl -O -k https://**YOURSERVERNAME**:4343/officescan/console/html/TMSM_HTML/ActiveUpdate/ClientInstall/tmsminstall.zip

#Unzip the installer
unzip tmsminstall.zip

#Install Trend Micro APEX One
installer -pkg /tmp/tmsminstall/tmsminstall.pkg -target /

#Clean up the folder
rm tmsminstall.zip
rm -rf /tmp/tmsminstall

exit 0

Pour déployer le script via Intune:

  1. Dans le Microsoft Endpoint Manager admin center.
  2. Select Devices > macOS > Shell scripts > Add
  3. Enter a Name and Description for the script and click Next
  4. Script details
    • Selectionner the ~/Downloads/TrendMicroApex1forMac.sh script
    • Run script as signed in user: No
    • Hide script notification on devices: Not configured
    • Script frequency: Not configured
    • Number of times to retry if script fails: 3

Afin de vérifier l’installation du produit, on collecte les logs depuis la console Microsoft Intune (j’utilise /Library/Logs/Microsoft/IntuneScripts/ApexOne.log comme chemin de stockage

Résultat

Apex One est installé correctement et enregistré dans la console Apex.

Il reste maintenant à configurer les préférences du produit afin de ne pas demander à l’utilisateur des autorisations complémentaires ou afficher des pop-ups. Nous verrons cela dans le prochain article.

Références