Cet article explique comment déployer l'agent CrowdStrike Falcon sur les appareils macOS et Windows à l'aide de FleetDM et Factorial IT MDM. Vous apprendrez à télécharger les packages d'installation depuis la console d'administration CrowdStrike, à récupérer votre ID client, à importer les packages dans FleetDM, à configurer les scripts d'installation et à créer des politiques de conformité pour les deux systèmes d'exploitation.
Prérequis
- Factorial IT MDM correctement configuré et opérationnel
- Accès à la console d'administration Crowdstrike
- Accès à votre instance FleetDM : https://yourdomain.mdm.getprimo.com
Déployer l'agent Faucon de Crowstrike
Étape 1 : Téléchargez les fichiers d’installation et récupérez l’identifiant client.
- Connectez-vous à la console d'administration de Crowdstrike
- Accédez à Configuration et gestion de l'hôte → Déploiement → Téléchargements de capteurs
- Téléchargez les fichiers suivants :
- macOS : installateur .pkg
- Windows : programme d'installation .exe
- Copiez votre identifiant client (également appelé CID), qui sera nécessaire pour activer l'agent après l'installation.
Étape 2 : Importer les fichiers d’installation dans FleetDM
- Importer le package macOS
- Dans FleetDM, accédez à Logiciel → Ajouter un logiciel → Package personnalisé
- Cliquez sur « Téléverser le package » et sélectionnez le fichier .pkg précédemment téléchargé.
- Cliquez sur Enregistrer
- Importer le package Windows
- Dans FleetDM, accédez à Logiciel → Ajouter un logiciel → Package personnalisé
- Cliquez sur « Téléverser le package » et sélectionnez le fichier .exe précédemment téléchargé.
- Cliquez sur Enregistrer
Étape 3 : Ajoutez les commandes d’installation avec l’ID client
- script d'installation macOS
- Dans la configuration du package .pkg macOS, repérez le champ Script d'installation (afficher les options avancées).
- Ajoutez la ligne suivante à la fin du script (remplacez CustomerID par votre CID réel) :
/Applications/Falcon.app/Contentes/Resources/falconctl license CustomerID- Cliquez sur Enregistrer les modifications.
- script d'installation Windows
- Dans la configuration du package .msi Windows, repérez le champ du script d'installation (afficher les options avancées).
- Copiez/collez ceci dans le script d'installation (remplacez CustomerID par votre CID réel) :
$exeFilePath = "${env:INSTALLER_PATH}"try {# Add argument to install silently# Argument to make install silent depends on installer,# each installer might use different argument (usually it's "/S" or "/s")$processOptions = @{ FilePath = "$exeFilePath" ArgumentList = "/install /quiet /norestart CID=CustomerID" PassThru = $true Wait = $true} # Start process and track exit code$process = Start-Process @processOptions$exitCode = $process.ExitCode# Prints the exit codeWrite-Host "Install exit code: $exitCode"Exit $exitCode} catch { Write-Host "Error: $_" Exit 1}- Copiez/collez ce script comme script de désinstallation
# Fleet extracts name from installer (EXE) and saves it to PACKAGE_ID# variable$softwareName = $PACKAGE_ID# It is recommended to use exact software name here if possible to avoid# uninstalling unintended software.$softwareNameLike = "*$softwareName*"# Some uninstallers require a flag to run silently.# Each uninstaller might use different argument (usually it's "/S" or "/s")$uninstallArgs = "/S"$machineKey = ` 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*'$machineKey32on64 = ` 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*'$exitCode = 0try {[array]$uninstallKeys = Get-ChildItem ` -Path @($machineKey, $machineKey32on64) ` -ErrorAction SilentlyContinue | ForEach-Object { Get-ItemProperty $_.PSPath }$foundUninstaller = $falseforeach ($key in $uninstallKeys) { # If needed, add -notlike to the comparison to exclude certain similar # software if ($key.DisplayName -like $softwareNameLike) { $foundUninstaller = $true # Get the uninstall command. Some uninstallers do not include # 'QuietUninstallString' and require a flag to run silently. $uninstallCommand = if ($key.QuietUninstallString) { $key.QuietUninstallString } else { $key.UninstallString } # The uninstall command may contain command and args, like: # "C:\Program Files\Software\uninstall.exe" --uninstall --silent # Split the command and args $splitArgs = $uninstallCommand.Split('"') if ($splitArgs.Length -gt 1) { if ($splitArgs.Length -eq 3) { $uninstallArgs = "$( $splitArgs[2] ) $uninstallArgs".Trim() } elseif ($splitArgs.Length -gt 3) { Throw ` "Uninstall command contains multiple quoted strings. " + "Please update the uninstall script.`n" + "Uninstall command: $uninstallCommand" } $uninstallCommand = $splitArgs[1] } Write-Host "Uninstall command: $uninstallCommand" Write-Host "Uninstall args: $uninstallArgs" $processOptions = @{ FilePath = $uninstallCommand PassThru = $true Wait = $true } if ($uninstallArgs -ne '') { $processOptions.ArgumentList = "$uninstallArgs" } # Start process and track exit code $process = Start-Process @processOptions $exitCode = $process.ExitCode # Prints the exit code Write-Host "Uninstall exit code: $exitCode" # Exit the loop once the software is found and uninstalled. break }}if (-not $foundUninstaller) { Write-Host "Uninstaller for '$softwareName' not found." # Change exit code to 0 if you don't want to fail if uninstaller is not # found. This could happen if program was already uninstalled. $exitCode = 1}} catch { Write-Host "Error: $_" $exitCode = 1}Exit $exitCode- Cliquez sur Enregistrer les modifications
Étape 4 : Créer des politiques de conformité dans FleetDM
Créez deux politiques distinctes pour confirmer que l'agent CrowdStrike est installé à la fois sur les appareils macOS et Windows.
4.1 Politique macOS
- Dans FleetDM, accédez à Politiques > Ajouter une politique.
- Utilisez la requête suivante :
SELECT 1 FROM apps WHERE bundle_identifier = 'com.crowdstrike.falcon';- Nom de la politique : CrowdStrike installé (Windows)
- Sauvegardez la police d'assurance.
4.2 Politique Windows
- Dans FleetDM, accédez à Politiques > Ajouter une politique.
- Utilisez la requête suivante :
SELECT 1 FROM programs WHERE name = 'Falcon';- Nom de la politique : CrowdStrike installé (macOS)
- Sauvegardez la police d'assurance.
Étape 5 : Attribuer l’application aux politiques de conformité
- Dans FleetDM, accédez à la section Politiques.
- Cliquez sur Gérer les automatisations > Logiciels.
- Sélectionnez les stratégies que vous venez de créer et auxquelles vous avez attribué le logiciel correspondant.
Félicitations, vous venez de déployer CrowdStrike !