Este artículo explica cómo implementar el agente Falcon de CrowdStrike en dispositivos macOS y Windows con FleetDM y Factorial IT MDM. Aprenderá a descargar los paquetes de instalación desde la consola de administración de CrowdStrike, recuperar su CustomerID, importar los paquetes a FleetDM, configurar los scripts de instalación y crear políticas de cumplimiento para ambos sistemas operativos.
Prerrequisitos
- Factorial IT MDM correctamente configurado y operativo
- Acceso a la consola de administración de Crowdstrike
- Acceso a su instancia de FleetDM: https://yourdomain.mdm.getprimo.com
Desplegar agente Crowstrike Falcon
Paso 1: Descargue los archivos de instalación y recupere el CustomerID
- Inicie sesión en la consola de administración de Crowdstrike
- Vaya a Configuración y administración del host → Implementar → Descargas de sensores
- Descargue los siguientes archivos:
- macOS: instalador .pkg
- Windows: instalador .exe
- Copie su CustomerID (también conocido como CID), que será necesario para activar el agente después de la instalación
Paso 2: Importe los archivos de instalación a FleetDM
- Importe el paquete macOS
- En FleetDM, vaya a Software → Agregar software → Paquete personalizado
- Haga clic en Cargar paquete y seleccione el archivo .pkg descargado previamente
- Haga clic en Guardar
- Importe el paquete de Windows
- En FleetDM, vaya a Software → Agregar software → Paquete personalizado
- Haga clic en Cargar paquete y seleccione el archivo .exe descargado previamente
- Haga clic en Guardar
Paso 3: Agregue los comandos de instalación con el CustomerID
- Script de instalación de macOS
- En la configuración del paquete .pkg de macOS, ubique el campo Script de instalación (mostrar opciones avanzadas)
- Agregue la siguiente línea al final del script (reemplace CustomerID con su CID real):
/Applications/Falcon.app/Contentes/Resources/falconctl license CustomerID- Haga clic en Guardar cambios.
- Script de instalación de Windows
- En la configuración del paquete .msi de Windows, ubique el campo de script de instalación (mostrar opciones avanzadas)
- Copie y pegue esto en el script de instalación (reemplace CustomerID con su CID real):
$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}- Copie y pegue este script como script de desinstalación
# 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- Haga clic en Guardar cambios
Paso 4: Crear políticas de cumplimiento en FleetDM
Cree dos políticas independientes para confirmar que el agente CrowdStrike esté instalado en dispositivos macOS y Windows.
4.1 Política de macOS
- En FleetDM, vaya a Políticas → Agregar política
- Utilice la siguiente consulta:
SELECT 1 FROM apps WHERE bundle_identifier = 'com.crowdstrike.falcon';- Nombre de la política: CrowdStrike instalado (Windows)
- Guardue la política.
4.2 Política de Windows
- En FleetDM, vaya a Políticas > Agregar política.
- Utilice la siguiente consulta:
SELECT 1 FROM programs WHERE name = 'Falcon';- Nombre la política: CrowdStrike instalado (macOS)
- Guarde la política
Paso 5: Asigne la aplicación a las políticas de cumplimiento
- En FleetDM, vaya a Políticas.
- Haga clic en Administrar automatizaciones → Software
- Seleccione las políticas que acaba de crear y asígneles el Software correspondiente
¡Felicitaciones, acaba de implementar CrowdStrike!