Nasazení Microsoft Defender for Endpoint na Linux pomocí Puppetu

Defender for Endpoint můžete nasadit na Linux pomocí různých nástrojů a metod. Tento článek popisuje, jak nasadit Defender for Endpoint na Linux pomocí Puppetu. Pokud chcete použít jinou metodu, přejděte do části Související obsah.

Důležité

Pokud chcete souběžně spouštět několik řešení zabezpečení, přečtěte si téma Důležité informace o výkonu, konfiguraci a podpoře.

Možná jste už nakonfigurovali vzájemné vyloučení zabezpečení pro zařízení nasazená k Microsoft Defender for Endpoint. Pokud stále potřebujete nastavit vzájemná vyloučení, abyste se vyhnuli konfliktům, přečtěte si téma Přidání Microsoft Defender for Endpoint do seznamu vyloučení pro vaše stávající řešení.

Důležité

Tento článek obsahuje informace o nástrojích třetích stran. To je poskytováno jako pomoc při dokončení scénářů integrace, ale Microsoft neposkytuje podporu pro řešení potíží s nástroji třetích stran.
Požádejte o podporu externího dodavatele.

Požadavky a požadavky na systém

Než začnete, přečtěte si téma Požadavky pro Defender for Endpoint na Linux, kde najdete popis požadavků a požadavků na systém.

Kromě toho pro nasazení Puppetu musíte znát úlohy správy Puppetu, mít puppet nakonfigurovaný a vědět, jak nasazovat balíčky. Puppet má mnoho způsobů, jak dokončit stejný úkol. Tyto pokyny předpokládají dostupnost podporovaných modulů Puppet, například apt , které vám pomůžou s nasazením balíčku. Vaše organizace může použít jiný pracovní postup. Další informace najdete v dokumentaci puppetu.

Stažení balíčku pro onboarding

Stáhněte balíček pro onboarding z portálu Microsoft Defender.

Upozornění

Opětovné zabalení instalačního balíčku Defenderu for Endpoint není podporovaným scénářem. To může negativně ovlivnit integritu produktu a vést k nepříznivým výsledkům, mimo jiné včetně aktivace upozornění na manipulaci a selhání aktualizace.

  1. Přihlaste se k portálu Microsoft Defender a pak přejděte do>části System Settings>Endpoints>Onboardingsprávy> zařízení.

  2. V první rozevírací nabídce vyberte jako operační systém Linux Server. V druhé rozevírací nabídce jako metodu nasazení vyberte Preferovaný nástroj pro správu konfigurace Linux.

  3. Vyberte Stáhnout onboardingový balíček a uložte soubor jako WindowsDefenderATPOnboardingPackage.zip.

  4. Extrahujte obsah archivu pomocí následujícího příkazu:

    unzip WindowsDefenderATPOnboardingPackage.zip
    

    Očekávaný výstup je:

    Archive:  WindowsDefenderATPOnboardingPackage.zip
    inflating: mdatp_onboard.json
    

Vytvoření adresářové struktury

Potřebujete vytvořit adresářovou strukturu pro nasazení Defenderu for Endpoint na Linux do zařízení spravovaných serverem Puppet. Tento příklad využívá apt moduly a yumrepo dostupné z puppetlabsnástroje a předpokládá, že moduly jsou nainstalovány na vašem serveru Puppet.

  1. Ve složce modules (pokud je vaše instalace Puppetu) vytvořte složky install_mdatp/files a install_mdatp/manifests. Složka modules se obvykle nachází na /etc/puppetlabs/code/environments/production/modules vašem serveru Puppet.

  2. mdatp_onboard.json Zkopírujte soubor vytvořený dříve do install_mdatp/files složky.

  3. init.pp Vytvořte soubor, který obsahuje pokyny k nasazení:

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

Vytvoření manifestu Puppet

Soubor manifestu můžete vytvořit dvěma způsoby:

  • Použijte instalační skript; Nebo
  • Nakonfigurujte úložiště ručně.

Vytvoření manifestu pro nasazení Defenderu for Endpoint pomocí instalačního skriptu

  1. Stáhněte si skript Bash instalačního programu. Stáhněte si skript instalačního programu Bash z úložiště Microsoft GitHub nebo ho stáhněte pomocí následujícího příkazu.
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. Do souboru přidejte následující obsah install_mdatp/manifests/init.pp . Soubor si také můžete stáhnout přímo z GitHubu.

# 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
  }

}

Poznámka

Instalační skript také podporuje další parametry, jako je kanál, ochrana v reálném čase, verze, instalace vlastního umístění atd. Pokud chcete vybrat ze seznamu dostupných možností, podívejte se na nápovědu: ./mde_installer.sh --help

Vytvoření manifestu pro nasazení Defenderu for Endpoint ruční konfigurací úložišť

Do souboru přidejte následující obsah install_mdatp/manifests/init.pp . Můžete si ho také stáhnout z GitHubu.

# 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.")}
  }
}

Poznámka

Defender for Endpoint na Linux je možné nasadit z jednoho z následujících kanálů: insiders-fast, insiders-slow, prod. Každý kanál odpovídá úložišti Linux softwaru. Volba kanálu určuje typ a frekvenci aktualizací nabízených vašemu zařízení. Zařízení ve insiders-fast službě prodjsou první, která obdrží aktualizace a nové funkce ve verzi Preview, následovaná insiders-slowa nakonec nástrojem . Poznamenejte si svoji distribuci a verzi a v části https://packages.microsoft.com/config/[distro]/[version]identifikujte nejbližší položku.

Upozornění

Přepnutí kanálu po počáteční instalaci vyžaduje přeinstalaci produktu. Přepnutí kanálu produktu: Odinstalujte existující balíček, znovu nakonfigurujte zařízení tak, aby používalo nový kanál, a podle pokynů v tomto dokumentu nainstalujte balíček z nového umístění.

Zahrnutí manifestu do souboru site.pp

Do souboru zahrňte site.pp manifest popsaný výše v tomto článku:

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

Zaregistrovaná zařízení agenta se pravidelně dotazují na Puppet Server a instalují nové konfigurační profily a zásady hned po jejich zjištění.

Monitorování nasazení Puppetu

Na zařízení agenta můžete také zkontrolovat stav nasazení spuštěním následujícího příkazu:

mdatp health
...
healthy                                 : true
health_issues                           : []
licensed                                : true
org_id                                  : "[your organization identifier]"
...
  • healthy: Ověřte, že je Defender for Endpoint úspěšně nasazený a funkční.
  • health_issues: Uvádí problémy, které způsobily, že stav v pořádku se stal nepravdivým.
  • licensed: Potvrdí, že je zařízení svázané s vaší organizací.
  • orgId: Identifikátor organizace defenderu for Endpoint.

Řešení potíží s instalací

Pokud narazíte na jakékoli problémy s instalací, postupujte při řešení potíží sami takto:

  1. Informace o tom, jak najít protokol, který se automaticky vygeneruje, když dojde k chybě instalace, najdete v tématu Problémy s instalací protokolu.

  2. Informace o běžných problémech s instalací najdete v tématu Problémy s instalací.

  3. Pokud je stav zařízení , přečtěte si falsetéma Problémy se stavem agenta Defenderu for Endpoint.

  4. Informace o problémech s výkonem produktu najdete v tématu Řešení potíží s výkonem.

  5. Informace o problémech s proxy serverem a připojením najdete v tématu Řešení potíží s připojením ke cloudu.

Pokud chcete získat podporu od Microsoftu, otevřete lístek podpory a zadejte soubory protokolu vytvořené pomocí analyzátoru klienta.

Konfigurace zásad pro Microsoft Defender na Linux

Informace o konfiguraci nastavení antivirové ochrany a EDR najdete v následujících článcích:

Upgrady operačního systému

Při upgradu operačního systému na novou hlavní verzi musíte nejprve odinstalovat Defender for Endpoint na Linux, nainstalovat upgrade a pak překonfigurovat Defender for Endpoint na Linux na vašem zařízení.

Odinstalace

Vytvořte modul remove_mdatp podobný install_mdatp modulu s následujícím obsahem v init.pp souboru:

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