Dela via


Distribuera Microsoft Defender för Endpoint i Linux med Puppet

Gäller för:

Vill du uppleva Microsoft Defender för Endpoint? Registrera dig för en kostnadsfri utvärderingsversion.

Den här artikeln beskriver hur du distribuerar Defender för Endpoint i Linux med Puppet.

Viktigt

Den här artikeln innehåller information om verktyg från tredje part. Detta tillhandahålls för att hjälpa till att slutföra integreringsscenarier, men Microsoft tillhandahåller inte felsökningsstöd för verktyg från tredje part.
Kontakta tredjepartsleverantören för support.

Krav och systemkrav

En beskrivning av krav och systemkrav finns i Microsoft Defender för Endpoint i Linux.

För Puppet-distribution behöver du dessutom vara bekant med Puppet-administrationsuppgifter, ha Puppet konfigurerat och veta hur du distribuerar paket. Puppet har många sätt att utföra samma uppgift. De här anvisningarna förutsätter tillgänglighet för Puppet-moduler som stöds, till exempel apt för att distribuera paketet. Din organisation kan använda ett annat arbetsflöde. Mer information finns i Puppet-dokumentationen.

Ladda ned onboarding-paketet

Ladda ned registreringspaketet från Microsoft Defender-portalen.

Varning

Det går inte att paketera om installationspaketet för Defender för Endpoint. Detta kan påverka produktens integritet negativt och leda till negativa resultat, inklusive men inte begränsat till att utlösa manipuleringsaviseringar och uppdateringar som inte kan tillämpas.

  1. I Microsoft Defender-portalen går du till Inställningar>Slutpunkter>Registrering av enhetshantering>.

  2. I den första nedrullningsbara menyn väljer du Linux Server som operativsystem. I den andra nedrullningsbara menyn väljer du Önskat Linux-konfigurationshanteringsverktyg som distributionsmetod.

  3. Välj Ladda ned registreringspaket. Spara filen som WindowsDefenderATPOnboardingPackage.zip.

    Alternativet att ladda ned det registrerade paketet.

  4. Extrahera innehållet i arkivet.

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

Skapa en katalogstruktur

Du måste skapa en katalogstruktur för att distribuera Defender för Endpoint på Linux till enheter som hanteras av en Puppet-server. I det här exemplet används modulerna apt och yumrepo som är tillgängliga från puppetlabsoch förutsätter att modulerna är installerade på Puppet-servern.

  1. Under mappen modules om puppet-installationen skapar du mapparna install_mdatp/files och install_mdatp/manifests. Modulmappen finns vanligtvis på /etc/puppetlabs/code/environments/production/modules Puppet-servern.

  2. Kopiera filen som mdatp_onboard.json skapades install_mdatp/files tidigare till mappen .

  3. Skapa en init.pp fil som innehåller distributionsanvisningarna:

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

Skapa ett Puppet-manifest

Det finns två sätt att skapa en manifestfil:

  • Använd ett installationsskript; eller
  • Konfigurera dina lagringsplatser manuellt.

Skapa ett manifest för att distribuera Defender för Endpoint med hjälp av ett installationsskript

  1. Ladda ned bash-skriptet för installationsprogrammet. Hämta bash-skriptet för installationsprogrammet från Microsoft GitHub-lagringsplatsen eller använd följande kommando för att ladda ned det.
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. Lägg till följande innehåll i install_mdatp/manifests/init.pp filen. Du kan också ladda ned filen direkt från 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
  }

}

Obs!

Installationsskriptet stöder även andra parametrar som kanal, realtidsskydd, version osv. Om du vill välja från listan över tillgängliga alternativ kontrollerar du hjälpen. ./mde_installer.sh --help

Skapa ett manifest för att distribuera Defender för Endpoint genom att konfigurera lagringsplatser manuellt

Lägg till följande innehåll i install_mdatp/manifests/init.pp filen. Du kan också ladda ned den från 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.")}
  }
}

Obs!

Defender för Endpoint på Linux kan distribueras från någon av följande kanaler: insiders-fast, insiders-slow, prod. Varje kanal motsvarar en Linux-programvarulagringsplats. Valet av kanal avgör typ och frekvens för de uppdateringar som erbjuds till din enhet. Enheter i insiders-fast är de första som tar emot uppdateringar och nya funktioner i förhandsversionen, följt av insiders-slow, och slutligen av prod. Observera distributionen och versionen och identifiera den närmaste posten för den under https://packages.microsoft.com/config/[distro]/[version].

Varning

Om du byter kanal efter den första installationen måste produkten installeras om. Så här växlar du produktkanalen: avinstallera det befintliga paketet, konfigurera om enheten så att den använder den nya kanalen och följ stegen i det här dokumentet för att installera paketet från den nya platsen.

Inkludera manifestet i filen site.pp

Inkludera manifestet som beskrivs tidigare i den här artikeln i filen site.pp :

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

Registrerade agentenheter avsöker regelbundet Puppet Server och installerar nya konfigurationsprofiler och principer så snart de identifieras.

Övervaka puppet-distributionen

På agentenheten kan du också kontrollera distributionsstatusen genom att köra följande kommando:

mdatp health
...
healthy                                 : true
health_issues                           : []
licensed                                : true
org_id                                  : "[your organization identifier]"
...
  • healthy: Bekräfta att Defender för Endpoint har distribuerats och fungerar.
  • health_issues: Anger de problem som gjorde att den felfria statusen blev falsk.
  • licensed: Bekräftar att enheten är kopplad till din organisation.
  • orgId: Organisationsidentifierare för Defender för Endpoint.

Felsöka installationsproblem

Om du stöter på problem under installationen kan du prova följande självfelsökningssteg:

  1. Mer information om hur du hittar den automatiskt genererade loggen som skapas av installationsprogrammet när ett fel uppstår finns i Logginstallationsproblem .

  2. Mer information om vanliga installationsproblem finns i Installationsproblem

  3. Om enhetens hälsotillstånd är falskt kan du läsa MDE problem med agenthälsa

  4. Information om problem med produktprestanda finns i Felsöka prestandaproblem, prestandajustering

  5. Information om proxy- och anslutningsproblem finns i Felsöka problem med molnanslutning

Om du vill få support från Microsoft skapar du ett supportärende och tillhandahåller loggfiler med hjälp av klientanalysen

Så här konfigurerar du principer för Microsoft Defender i Linux

Du kan konfigurera inställningar för antivirus och EDR på dina slutpunkter. Mer information finns i följande artiklar:

Uppgraderingar av operativsystem

När du uppgraderar operativsystemet till en ny huvudversion måste du först avinstallera Defender för Endpoint på Linux, installera uppgraderingen och sedan konfigurera om Defender för Endpoint på Linux på enheten.

Avinstallation

Skapa en modul remove_mdatp som liknar install_mdatp med följande innehåll i init.pp filen:

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

Tips

Vill du veta mer? Engage med Microsofts säkerhetscommunity i vår Tech Community: Microsoft Defender för Endpoint Tech Community.