Partager via


Déployer Microsoft Defender pour point de terminaison sur Linux avec Puppet

S’applique à :

Vous voulez découvrir Defender pour point de terminaison ? Inscrivez-vous pour bénéficier d’un essai gratuit.

Cet article explique comment déployer Defender pour point de terminaison sur Linux à l’aide de Puppet. Un déploiement réussi nécessite l’exécution de toutes les tâches suivantes :

Importante

Cet article contient des informations sur les outils tiers. Cela est fourni pour faciliter la réalisation des scénarios d’intégration. Toutefois, Microsoft ne fournit pas de support de résolution des problèmes pour les outils tiers.
Contactez le fournisseur tiers pour obtenir de l’aide.

Conditions préalables et configuration système requise

Pour obtenir une description des prérequis et de la configuration système requise, consultez Microsoft Defender pour point de terminaison sur Linux.

En outre, pour le déploiement de Puppet, vous devez être familiarisé avec les tâches d’administration puppet, avoir configuré Puppet et savoir comment déployer des packages. Puppet a de nombreuses façons d’effectuer la même tâche. Ces instructions supposent la disponibilité des modules Puppet pris en charge, comme apt pour aider à déployer le package. Votre organization peut utiliser un autre workflow. Pour plus d’informations, consultez la documentation Puppet.

Télécharger le package d’intégration

Téléchargez le package d’intégration à partir de Microsoft Defender portail.

Avertissement

Le repackaging du package d’installation de Defender pour point de terminaison n’est pas un scénario pris en charge. Cela peut avoir un impact négatif sur l’intégrité du produit et entraîner des résultats négatifs, y compris, mais sans s’y limiter, le déclenchement d’alertes de falsification et l’échec de l’application des mises à jour.

  1. Dans le portail Microsoft Defender, accédez à Paramètres Points> determinaison> Gestiondes> appareilsIntégration.

  2. Dans le premier menu déroulant, sélectionnez Serveur Linux comme système d’exploitation. Dans le deuxième menu déroulant, sélectionnez Votre outil de gestion de configuration Linux préféré comme méthode de déploiement.

  3. Sélectionnez Télécharger le package d’intégration. Enregistrez le fichier sous WindowsDefenderATPOnboardingPackage.zip.

    Option permettant de télécharger le package intégré.

  4. Extrayez le contenu de l’archive.

    unzip WindowsDefenderATPOnboardingPackage.zip
    
    Archive:  WindowsDefenderATPOnboardingPackage.zip
    inflating: mdatp_onboard.json
    

Créer un manifeste Puppet

Vous devez créer un manifeste Puppet pour déployer Defender pour point de terminaison sur Linux sur des appareils gérés par un serveur Puppet. Cet exemple utilise les apt modules et yumrepo disponibles à partir de puppetlabs, et suppose que les modules sont installés sur votre serveur Puppet.

  1. Sous le dossier modules si vous avez installé Puppet, créez les dossiers install_mdatp/files et install_mdatp/manifests. Le dossier modules se trouve généralement à l’emplacement /etc/puppetlabs/code/environments/production/modules de votre serveur Puppet.

  2. Copiez le mdatp_onboard.json fichier créé précédemment dans le install_mdatp/files dossier .

  3. Créez un init.pp fichier qui contient les instructions de déploiement :

    pwd
    
    /etc/puppetlabs/code/environments/production/modules
    
    tree install_mdatp
    
    install_mdatp
    ├── files
    │   └── mdatp_onboard.json
    └── manifests
        └── init.pp
    

Créer un fichier manifeste

Il existe deux façons de créer un fichier manifeste :

  • Utiliser un script de programme d’installation ; ou
  • Configurez vos référentiels manuellement.

Créer un manifeste pour déployer Defender pour point de terminaison à l’aide d’un script de programme d’installation

  1. Téléchargez le script bash du programme d’installation. Extrayez le script bash du programme d’installation à partir du référentiel Microsoft GitHub ou utilisez la commande suivante pour le télécharger.
wget https://raw.githubusercontent.com/microsoft/mdatp-xplat/refs/heads/master/linux/installation/mde_installer.sh /etc/puppetlabs/code/environments/production/modules/install_mdatp/files/
  1. Ajoutez le contenu suivant au install_mdatp/manifests/init.pp fichier. Vous pouvez également télécharger le fichier directement à partir de GitHub

# Puppet manifest to install Microsoft Defender for Endpoint on Linux.
# @param channel The release channel based on your environment, insider-fast or prod.

class install_mdatp (
  $channel = 'prod',
) {
  # Ensure that the directory /tmp/mde_install exists
  file { '/tmp/mde_install':
    ensure => directory,
    mode   => '0755',
  }

  # Copy the installation script to the destination
  file { '/tmp/mde_install/mde_installer.sh':
    ensure => file,
    source => 'puppet:///modules/install_mdatp/mde_installer.sh',
    mode   => '0777',
  }

  # Copy the onboarding script to the destination
  file { '/tmp/mde_install/mdatp_onboard.json':
    ensure => file,
    source => 'puppet:///modules/install_mdatp/mdatp_onboard.json',
    mode   => '0777',
  }

  # Install MDE on the host using an external script
  exec { 'install_mde':
    command     => "/tmp/mde_install/mde_installer.sh --install --channel ${channel} --onboard /tmp/mde_install/mdatp_onboard.json",
    path        => '/bin:/usr/bin',
    user        => 'root',
    logoutput   => true,
    require     => File['/tmp/mde_install/mde_installer.sh', '/tmp/mde_install/mdatp_onboard.json'], # Ensure the script is copied before running the installer
  }

}

Remarque

Le script d’installation prend également en charge d’autres paramètres tels que le canal, la protection en temps réel, la version, etc. Pour effectuer une sélection dans la liste des options disponibles, case activée aide. ./mde_installer.sh --help

Créer un manifeste pour déployer Defender pour point de terminaison en configurant les référentiels manuellement

Ajoutez le contenu suivant au install_mdatp/manifests/init.pp fichier. Vous pouvez également le télécharger à partir de GitHub.

# Puppet manifest to install Microsoft Defender for Endpoint on Linux.
# @param channel The release channel based on your environment, insider-fast or prod.

class install_mdatp::configure_debian_repo (
  String $channel,
  String $distro,
  String $version ) {
  # Configure the APT repository for Debian-based systems

  $release = $channel ? {
    'prod'  => $facts['os']['distro']['codename'],
    default => $channel
    }
  
  apt::source { 'microsoftpackages':
    location => "https://packages.microsoft.com/${distro}/${version}/prod",
    release  => $release,
    repos    => 'main',
    key      => {
      'id'     => 'BC528686B50D79E339D3721CEB3E94ADBE1229CF',
      'server' => 'keyserver.ubuntu.com',
    },
  }
}

class install_mdatp::configure_redhat_repo (
  String $channel,
  String $distro,
  String $version) {
  # Configure the Yum repository for RedHat-based systems
  
  yumrepo { 'microsoftpackages':
    baseurl  => "https://packages.microsoft.com/rhel/${version}/prod",
    descr    => 'packages-microsoft-com-prod',
    enabled  => 1,
    gpgcheck => 1,
    gpgkey   => 'https://packages.microsoft.com/keys/microsoft.asc',
  }
}

class install_mdatp::install {
  # Common configurations for both Debian and RedHat
  
  file { ['/etc/opt', '/etc/opt/microsoft', '/etc/opt/microsoft/mdatp']:
    ensure  => directory,
    owner   => 'root',
    group   => 'root',
    mode    => '0755',
  }

  file { '/etc/opt/microsoft/mdatp/mdatp_onboard.json':
    source  => 'puppet:///modules/install_mdatp/mdatp_onboard.json',
    owner   => 'root',
    group   => 'root',
    mode    => '0600',
    require => File['/etc/opt/microsoft/mdatp'],
  }

  # Install mdatp package
  package { 'mdatp':
    ensure  => installed,
    require => [
      File['/etc/opt/microsoft/mdatp/mdatp_onboard.json'],
    ],
  }
}


class install_mdatp (
  $channel = 'prod'
) {
  # Include the appropriate class based on the OS family
  
  $distro = downcase($facts['os']['name'])
  $version = $facts['os']['release']['major']
  
  case $facts['os']['family'] {
    'Debian': {
      class { 'install_mdatp::configure_debian_repo':
        channel => 'prod',
        distro => $distro,
        version => $version
        } -> class { 'install_mdatp::install': }
    }
    'RedHat': {
      class { 'install_mdatp::configure_redhat_repo':
        channel => 'prod',
        distro => $distro,
        version => $version,
        } -> class { 'install_mdatp::install': }
    }
    default: { fail("${facts['os']['family']} is currently not supported.")}
  }
}

Remarque

Defender pour point de terminaison sur Linux peut être déployé à partir de l’un des canaux suivants : insiders-fast, insiders-slow, prod. Chaque canal correspond à un référentiel de logiciels Linux. Le choix du canal détermine le type et la fréquence des mises à jour proposées à votre appareil. Les appareils dans insiders-fast sont les premiers à recevoir les mises à jour et les nouvelles fonctionnalités en préversion, suivis de insiders-slowet enfin de prod.

Notez votre distribution et votre version et identifiez l’entrée la plus proche sous https://packages.microsoft.com/config/[distro]/[version].

Avertissement

Le basculement du canal après l’installation initiale nécessite la réinstallation du produit. Pour changer de canal de produit : désinstallez le package existant, reconfigurez votre appareil pour utiliser le nouveau canal et suivez les étapes décrites dans ce document pour installer le package à partir du nouvel emplacement.

Inclure le manifeste dans le fichier site.pp

Incluez le manifeste décrit précédemment dans cet article dans votre site.pp fichier :

cat /etc/puppetlabs/code/environments/production/manifests/site.pp
node "default" {
    include install_mdatp
}

Les appareils d’agent inscrits interrogent régulièrement le serveur Puppet Server et installent de nouveaux profils et stratégies de configuration dès qu’ils sont détectés.

Surveiller le déploiement de Puppet

Sur l’appareil de l’agent, vous pouvez également case activée le status de déploiement en exécutant la commande suivante :

mdatp health
...
healthy                                 : true
health_issues                           : []
licensed                                : true
org_id                                  : "[your organization identifier]"
...
  • healthy: vérifiez que Defender pour point de terminaison est correctement déployé et opérationnel.
  • health_issues: indique les problèmes qui ont provoqué la status saine deviennent false.
  • licensed: confirme que l’appareil est lié à votre organization.
  • orgId: votre identificateur de organization Defender pour point de terminaison.

Résoudre des problèmes d’installation

Si vous rencontrez des problèmes lors de l’installation, procédez comme suit :

  1. Reportez-vous à Problèmes d’installation du journal pour plus d’informations sur la façon de trouver le journal généré automatiquement qui est créé par le programme d’installation lorsqu’une erreur se produit.

  2. Reportez-vous à Problèmes d’installation pour plus d’informations sur les problèmes d’installation courants

  3. Si l’intégrité de l’appareil est false, reportez-vous à MDE problèmes d’intégrité de l’agent

  4. Pour les problèmes de performances du produit, consultez Résoudre les problèmes de performances, réglage des performances

  5. Pour les problèmes de proxy et de connectivité, consultez Résoudre les problèmes de connectivité cloud

Pour obtenir le support de Microsoft, créez un ticket de support et fournissez des fichiers journaux à l’aide de l’analyseur client

Comment configurer des stratégies pour Microsoft Defender sur Linux

Vous pouvez configurer les paramètres antivirus et EDR sur vos points de terminaison à l’aide des méthodes suivantes :

Mises à niveau du système d’exploitation

Lors de la mise à niveau de votre système d’exploitation vers une nouvelle version majeure, vous devez d’abord désinstaller Defender pour point de terminaison sur Linux, installer la mise à niveau, puis reconfigurer Defender pour point de terminaison sur Linux sur votre appareil.

Désinstallation

Créez un module remove_mdatp similaire à install_mdatp avec le contenu suivant dans le init.pp fichier :

class remove_mdatp {
    package { 'mdatp':
        ensure => 'purged',
    }
}

Conseil

Voulez-vous en savoir plus ? Engage avec la communauté Microsoft Security dans notre communauté technique : Microsoft Defender pour point de terminaison Tech Community.