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 pour la version actuelle du logiciel, consultez la page main 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, reportez-vous à 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 Microsoft Defender portail, accédez à Paramètres Points > de terminaison > Intégration de la gestion des appareils>.

  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 en tant que WindowsDefenderATPOnboardingPackage.zip.

    Option de téléchargement du package intégré

  4. À partir d’une invite de commandes, vérifiez que vous disposez du fichier .

    ls -l
    
    total 8
    -rw-r--r-- 1 test  staff  4984 Feb 18 11:22 WindowsDefenderATPOnboardingPackage.zip
    
  5. Extrayez le contenu de l’archive.

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

Create 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 modules apt et yumrepo disponibles à partir de puppetlabs, et suppose que les modules ont été installés sur votre serveur Puppet.

Create les dossiers install_mdatp/files et install_mdatp/manifestes sous le dossier modules de votre installation Puppet. Ce dossier se trouve généralement dans /etc/puppetlabs/code/environments/production/modules sur votre serveur Puppet. Copiez le fichier mdatp_onboard.json créé ci-dessus dans le dossier install_mdatp/files . Create un fichier init.pp 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

Contenu de install_mdatp/manifests/init.pp

Defender pour point de terminaison sur Linux peut être déployé à partir de l’un des canaux suivants (désigné ci-dessous comme [canal]) : insiders-fast, insiders-slow ou prod. Chacun de ces canaux 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 des mises à jour et de nouvelles fonctionnalités, suivis ultérieurement par les insiders - lents et enfin par prod.

Pour afficher un aperçu des nouvelles fonctionnalités et fournir des commentaires précoces, il est recommandé de configurer certains appareils de votre entreprise pour qu’ils utilisent des insiders rapides ou des insiders lents.

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.

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

Dans les commandes ci-dessous, remplacez [distribution] et [version] par les informations que vous avez identifiées :

Remarque

Dans le cas de RedHat, Oracle Linux, Amazon Linux 2 et CentOS 8, remplacez [distribution] par « rhel ».

# Puppet manifest to install Microsoft Defender for Endpoint on Linux.
# @param channel The release channel based on your environment, insider-fast or prod.
# @param distro The Linux distribution in lowercase. In case of RedHat, Oracle Linux, Amazon Linux 2, and CentOS 8, the distro variable should be 'rhel'.
# @param version The Linux distribution release number, e.g. 7.4.

class install_mdatp (
  $channel = 'insiders-fast',
  $distro = undef,
  $version = undef
) {
  case $facts['os']['family'] {
    'Debian' : {
      $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',
        },
      }
    }
    'RedHat' : {
      yumrepo { 'microsoftpackages' :
        baseurl  => "https://packages.microsoft.com/${distro}/${version}/${channel}",
        descr    => "packages-microsoft-com-prod-${channel}",
        enabled  => 1,
        gpgcheck => 1,
        gpgkey   => 'https://packages.microsoft.com/keys/microsoft.asc',
      }
    }
    default : { fail("${facts['os']['family']} is currently not supported.") }
  }

  case $facts['os']['family'] {
    /(Debian|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'],
      }

      package { 'mdatp':
        ensure  => 'installed',
        require => File['/etc/opt/microsoft/mdatp/mdatp_onboard.json'],
      }
    }
    default : { fail("${facts['os']['family']} is currently not supported.") }
  }
}

Déploiement

Incluez le manifeste ci-dessus dans votre fichier site.pp :

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 d’intégration en exécutant :

mdatp health
...
licensed                                : true
org_id                                  : "[your organization identifier]"
...
  • sous licence : cela confirme que l’appareil est lié à votre organization.

  • orgId : il s’agit de votre identificateur organization Defender pour point de terminaison.

Vérifier les status d’intégration

Vous pouvez case activée que les appareils ont été correctement intégrés en créant un script. Par exemple, le script suivant vérifie les appareils inscrits pour l’intégration status :

mdatp health --field healthy

La commande ci-dessus indique 1 si le produit est intégré et fonctionne comme prévu.

Importante

Lorsque le produit démarre pour la première fois, il télécharge les dernières définitions de logiciel anti-programme malveillant. Selon votre connexion Internet, cela peut prendre jusqu’à quelques minutes. Pendant ce temps, la commande ci-dessus retourne une valeur de 0.

Si le produit n’est pas sain, le code de sortie (qui peut être vérifié via echo $?) indique le problème :

  • 1 si l’appareil n’est pas encore intégré.
  • 3 si la connexion au démon ne peut pas être établie.

Problèmes d’installation des journaux

Pour plus d’informations sur la recherche du journal généré automatiquement créé par le programme d’installation lorsqu’une erreur se produit, consultez Problèmes d’installation du journal.

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 et enfin reconfigurer Defender pour point de terminaison sur Linux sur votre appareil.

Désinstallation

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

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.