Del via


Distribuer Microsoft Defender for endepunkt på Linux med Ansible

Gjelder for:

Vil du oppleve Defender for endepunkt? Registrer deg for en gratis prøveperiode.

Denne artikkelen beskriver hvordan du distribuerer Defender for Endpoint på Linux ved hjelp av Ansible. En vellykket distribusjon krever fullføring av alle følgende oppgaver:

Viktig

Denne artikkelen inneholder informasjon om tredjepartsverktøy. Dette tilbys for å fullføre integreringsscenarioer, men Microsoft tilbyr ikke feilsøkingsstøtte for tredjepartsverktøy.
Kontakt tredjepartsleverandøren for å få støtte.

Innledning

Distribuer Microsoft Defender for endepunkt på Linux-servere ved hjelp av Ansible for å automatisere distribusjonsprosessen for maskiner i stor skala. Følgende er de to metodene for å automatisere:

  • Bruk installasjonsskriptet (anbefales). Denne metoden forenkler automatiseringsprosessen betraktelig og bidrar til å installere Defender for Endpoint-agenten og om bord på enheten til Microsoft Defender-portalen ved hjelp av bare noen få trinn uten å måtte konfigurere for ulike distroer separat.

  • Konfigurer repositorier manuelt for hver distro. Med denne metoden kan du automatisere distribusjonsprosessen ved å konfigurere repositorier manuelt, installere agenten og pålaste enheten for hver distro. Denne metoden gir mer detaljert kontroll over distribusjonsprosessen.

Forutsetninger og systemkrav som gjelder for begge metodene

Før du begynner, kan du se hovedsiden for Defender for Endpoint på Linux for en beskrivelse av forutsetninger og systemkrav.

I tillegg, for Ansible-distribusjon, må du være kjent med ansible administrasjonsoppgaver, ha Ansible konfigurert og vite hvordan du distribuerer strategibøker og oppgaver. Ansible har mange måter å fullføre den samme oppgaven på. Disse instruksjonene forutsetter tilgjengelighet av støttede Ansible-moduler, for eksempel apt og unarchive for å hjelpe til med å distribuere pakken. Organisasjonen kan bruke en annen arbeidsflyt. Hvis du vil ha mer informasjon, kan du se dokumentasjonen for Ansible.

  • Ansible må installeres på minst én datamaskin (Ansible kaller denne datamaskinen kontrollnoden).

  • SSH må konfigureres for en administratorkonto mellom kontrollnoden og alle administrerte noder (enheter som har Defender for Endpoint installert på dem), og det anbefales å konfigureres med offentlig nøkkelgodkjenning.

  • Følgende programvare må være installert på alle administrerte noder:

    • krølle
    • python-apt (hvis du distribuerer på distribusjoner ved hjelp av apt som pakkebehandling)
  • Alle administrerte noder må være oppført i følgende format i den eller relevante /etc/ansible/hosts filen:

    [servers]
    host1 ansible_ssh_host=10.171.134.39
    host2 ansible_ssh_host=51.143.50.51
    
  • Ping-test:

    ansible -m ping all
    

Last ned pålastingspakken som gjelder for begge metodene

Last ned pålastingspakken fra Microsoft Defender portal.

Advarsel

Ompakking av installasjonspakken defender for endepunkt er ikke et støttet scenario. Dette kan påvirke integriteten til produktet negativt og føre til uønskede resultater, inkludert, men ikke begrenset til å utløse manipuleringsvarsler og oppdateringer som ikke gjelder.

  1. Gå tilPålasting forenhetsbehandling>> for innstillinger> for endepunkter i Microsoft Defender-portalen.

  2. Velg Linux Server som operativsystem i den første rullegardinmenyen. I den andre rullegardinmenyen velger du ditt foretrukne administrasjonsverktøy for Linux-konfigurasjon som distribusjonsmetode.

  3. Velg Last ned pålastingspakke. Lagre filen som WindowsDefenderATPOnboardingPackage.zip.

    Alternativet Last ned pålastingspakke

  4. Kontroller at du har filen fra en ledetekst. Trekk ut innholdet i arkivet:

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

Distribuer Defender for endepunkt ved hjelp av mde_installer.sh med Ansible

Før du begynner, må du laste ned pålastingspakken og oppfylle forutsetningene for å distribuere Defender for Endpoint på Linux ved hjelp av bash-skriptet for installasjonsprogrammet.

Last ned bash-skriptet for installasjonsprogrammet

Hent bash-skriptet for installasjonsprogrammet fra Microsoft GitHub Repository, eller bruk følgende kommando til å laste det ned.

  wget https://raw.githubusercontent.com/microsoft/mdatp-xplat/refs/heads/master/linux/installation/mde_installer.sh

Opprett ansible YAML-filer

Opprett YAML-installasjonsfil. Du kan også laste ned filen direkte fra GitHub

- name: Install and Onboard MDE
  hosts: servers
  tasks:
   - name: Create a directory if it does not exist
     ansible.builtin.file:
       path: /tmp/mde_install
       state: directory
       mode: '0755'

   - name: Copy Onboarding script
     ansible.builtin.copy:
       src: "{{ onboarding_json }}"
       dest: /tmp/mde_install/mdatp_onboard.json
   - name: Install MDE on host
     ansible.builtin.script: "{{ mde_installer_script }} --install --channel {{ channel | default('insiders-fast') }} --onboard /tmp/mde_install/mdatp_onboard.json"
     register: script_output
     args:
       executable: sudo

   - name: Display the installation output
     debug:
       msg: "Return code [{{ script_output.rc }}] {{ script_output.stdout }}"

   - name: Display any installation errors
     debug:
       msg: "{{ script_output.stderr }}"

Obs!

Installasjonsskriptet støtter også andre parametere, for eksempel kanal, sanntidsbeskyttelse, versjon osv. Hvis du vil velge fra listen over tilgjengelige alternativer, kan du se hjelpen gjennom følgende kommando: ./mde_installer.sh --help

Bruke strategiplanen

Bruk strategiplanen ved hjelp av følgende kommando, og erstatt de tilsvarende banene og kanalene i henhold til kravene dine:

ansible-playbook -i  /etc/ansible/hosts /etc/ansible/playbooks/install_mdatp.yml --extra-vars "onboarding_json=<path to mdatp_onboard.json > mde_installer_script=<path to mde_installer.sh> channel=<channel to deploy for: insiders-fast / insiders-slow / prod> "

Kontroller om distribusjonen er vellykket

  1. Åpne enhetsbeholdningen i Microsoft Defender-portalen. Det kan ta 5–20 minutter før enheten vises i portalen.

  2. Utfør følgende kontroller etter installasjonen, som inkluderer kontroller som tilstand, tilkobling, antivirus og EDR-gjenkjenningstester for å sikre vellykket distribusjon og arbeid av Defender for Endpoint.

- name: Run post-installation basic MDE test
  hosts: myhosts
  tasks:
    - name: Check health
      ansible.builtin.command: mdatp health --field healthy
      register: health_status

    - name: MDE health test failed
      fail: msg="MDE is not healthy. health status => \n{{ health_status.stdout       }}\nMDE deployment not complete"
      when: health_status.stdout != "true"

    - name: Run connectivity test
      ansible.builtin.command: mdatp connectivity test
      register: connectivity_status

    - name: Connectivity failed
      fail: msg="Connectivity failed. Connectivity result => \n{{ connectivity_status.stdout }}\n MDE deployment not complete"
      when: connectivity_status.rc != 0

    - name: Check RTP status
      ansible.builtin.command: mdatp health --field real_time_protection_enabled
      register: rtp_status

    - name: Enable RTP
      ansible.builtin.command: mdatp config real-time-protection --value enabled
      become: yes
      become_user: root
      when: rtp_status.stdout != "true"

    - name: Pause for 5 second to enable RTP
      ansible.builtin.pause:
        seconds: 5

    - name: Download EICAR
      ansible.builtin.get_url:
        url: https://secure.eicar.org/eicar.com.txt
        dest: /tmp/eicar.com.txt

    - name: Pause for 5 second to detect eicar 
      ansible.builtin.pause:
        seconds: 5

    - name: Check for EICAR file
      stat: path=/tmp/eicar.com.txt
      register: eicar_test

    - name: EICAR test failed
      fail: msg="EICAR file not deleted. MDE deployment not complete"
      when: eicar_test.stat.exists

    - name: MDE Deployed
      debug:
      msg: "MDE succesfully deployed"

Slik avinstallerer du Microsoft Defender for endepunkt på Linux-servere

Først oppretter du en YAML-fil for avinstallasjon (for eksempel: /etc/ansible/playbooks/uninstall_mdatp.yml) som bruker mde_installer.sh. Du kan også laste ned filen direkte fra GitHub

- name: Uninstall MDE
  hosts: myhosts
  tasks:
   - name: Uninstall MDE
     ansible.builtin.script: "{{ mde_installer_script }} --remove"
     register: script_output
     args:
       executable: sudo


- name: Display the installation output
  debug:
    msg: "Return code [{{ script_output.rc }}] {{ script_output.stdout }}"

- name: Display any installation errors
  debug:
    msg: "{{ script_output.stderr }}"

Kjør følgende kommando for å avinstallere Defender for Endpoint ved hjelp av strategiplanen:

ansible-playbook -i /etc/ansible/hosts /etc/ansible/playbooks/uninstall_mdatp.yml --extra-vars "mde_installer_script=<path to mde_installer.sh>"

Distribuer Defender for endepunkt ved hjelp av Ansible ved å konfigurere repositorier manuelt

Følg trinnene i denne delen etter at du har lastet ned pålastingspakken og forutsetningene for å distribuere Defender for Endpoint ved å konfigurere repositoriene manuelt for hver Linux-distribusjon.

Opprett ansible YAML-filer

Opprett en deloppgave eller rollefiler som bidrar til en strategiplan eller oppgave.

  1. Opprett pålastingsoppgaven: onboarding_setup.yml

    - name: Create MDATP directories
      file:
        path: /etc/opt/microsoft/mdatp/
        recurse: true
        state: directory
        mode: 0755
        owner: root
        group: root
    
    - name: Register mdatp_onboard.json
      stat:
        path: /etc/opt/microsoft/mdatp/mdatp_onboard.json
      register: mdatp_onboard
    
    - name: Extract WindowsDefenderATPOnboardingPackage.zip into /etc/opt/microsoft/mdatp
      unarchive:
        src: WindowsDefenderATPOnboardingPackage.zip
        dest: /etc/opt/microsoft/mdatp
        mode: 0600
        owner: root
        group: root
      when: not mdatp_onboard.stat.exists
    
  2. Legg til Defender for endepunkt-repositoriet og nøkkelen, add_apt_repo.yml. Defender for Endpoint på Linux kan distribueres fra en av følgende kanaler:

    Hver kanal tilsvarer et Linux-programvarerepositorium.

    Valget av kanalen bestemmer hvilken type og hyppighet oppdateringer som tilbys til enheten. Enheter i insiders-fast er de første til å motta oppdateringer og nye funksjoner, etterfulgt senere av insiders-slow, og til slutt av prod.

    For å forhåndsvise nye funksjoner og gi tidlig tilbakemelding, anbefales det at du konfigurerer enkelte enheter i bedriften til å bruke enten insiders-fast eller insiders-slow.

    Advarsel

    Hvis du bytter kanal etter den første installasjonen, må produktet installeres på nytt. Slik bytter du produktkanal: avinstaller den eksisterende pakken, konfigurer enheten på nytt til å bruke den nye kanalen, og følg fremgangsmåten i dette dokumentet for å installere pakken fra den nye plasseringen.

  3. Legg merke til distribusjonen og versjonen, og identifiser den nærmeste oppføringen for den under https://packages.microsoft.com/config/[distro]/.

  4. I følgende kommandoer erstatter du [distro] og [version] med informasjonen du har identifisert.

    Obs!

    Hvis oracle Linux og Amazon Linux 2 erstatt [distro] med "rhel". For Amazon Linux 2 erstatter du [versjon] med «7». For Oracle Linux erstatter du [version] med versjonen av Oracle Linux.

    - name: Add Microsoft APT key
      apt_key:
        url: https://packages.microsoft.com/keys/microsoft.asc
        state: present
      when: ansible_os_family == "Debian"
    
    - name: Add Microsoft apt repository for MDATP
      apt_repository:
        repo: deb [arch=arm64,armhf,amd64] https://packages.microsoft.com/[distro]/[version]/prod [codename] main
        update_cache: yes
        state: present
        filename: microsoft-[channel]
      when: ansible_os_family == "Debian"
    
    - name: Add Microsoft DNF/YUM key
      rpm_key:
        state: present
        key: https://packages.microsoft.com/keys/microsoft.asc
      when: ansible_os_family == "RedHat"
    
    - name: Add  Microsoft yum repository for MDATP
      yum_repository:
        name: packages-microsoft-[channel]
        description: Microsoft Defender for Endpoint
        file: microsoft-[channel]
        baseurl: https://packages.microsoft.com/[distro]/[version]/[channel]/ 
        gpgcheck: yes
        enabled: Yes
      when: ansible_os_family == "RedHat"
    
  5. Opprett ansible installerings- og avinstaller YAML-filer.

    • Bruk følgende YAML-fil for apt-baserte distribusjoner:

      cat install_mdatp.yml
      
      - hosts: servers
         tasks:
           - name: include onboarding tasks
             import_tasks:
               file: ../roles/onboarding_setup.yml
           - name: add apt repository
             import_tasks:
               file: ../roles/add_apt_repo.yml
           - name: Install MDATP
             apt:
               name: mdatp
               state: latest
               update_cache: yes
      
      cat uninstall_mdatp.yml
      
      - hosts: servers
         tasks:
           - name: Uninstall MDATP
             apt:
               name: mdatp
               state: absent
      
    • Bruk følgende YAML-fil for dnf-baserte distribusjoner:

      cat install_mdatp_dnf.yml
      
      - hosts: servers
         tasks:
           - name: include onboarding tasks
             import_tasks:
               file: ../roles/onboarding_setup.yml
           - name: add apt repository
             import_tasks:
               file: ../roles/add_yum_repo.yml
           - name: Install MDATP
             dnf:
               name: mdatp
               state: latest
               enablerepo: packages-microsoft-[channel]
      
      cat uninstall_mdatp_dnf.yml
      
      - hosts: servers
         tasks:
           - name: Uninstall MDATP
             dnf:
               name: mdatp
               state: absent
      

Bruke strategiplanen

I dette trinnet bruker du strategiplanen. Kjør oppgavefilene under /etc/ansible/playbooks/ eller relevant katalog.

  1. Installasjon:

    ansible-playbook /etc/ansible/playbooks/install_mdatp.yml -i /etc/ansible/hosts
    

    Viktig

    Når produktet starter for første gang, laster det ned de nyeste definisjonene for beskyttelse mot skadelig programvare. Dette kan ta opptil noen minutter, avhengig av Internett-tilkoblingen.

  2. Validering/konfigurasjon:

    ansible -m shell -a 'mdatp connectivity test' all
    
    ansible -m shell -a 'mdatp health' all
    
  3. Avinstallasjon:

    ansible-playbook /etc/ansible/playbooks/uninstall_mdatp.yml -i /etc/ansible/hosts
    

Feilsøke installasjonsproblemer

Følg disse trinnene for selvfeilsøking:

  1. Hvis du vil ha informasjon om hvordan du finner loggen som genereres automatisk når det oppstår en installasjonsfeil, kan du se Logginstallasjonsproblemer.

  2. Hvis du vil ha informasjon om vanlige installasjonsproblemer, kan du se Installasjonsproblemer.

  3. Hvis tilstanden til enheten er false, kan du se defender for endepunktagentens tilstandsproblemer.

  4. Hvis du vil ha informasjon om problemer med produktytelsen, kan du se Feilsøke ytelsesproblemer.

  5. Hvis du vil ha informasjon om proxy- og tilkoblingsproblemer, kan du se Feilsøke problemer med skytilkoblingen.

  6. Hvis du vil ha støtte fra Microsoft, åpner du en støtteforespørsel og oppgir loggfilene som opprettes ved hjelp av klientanalysen.

Slik konfigurerer du policyer for Microsoft Defender på Linux

Du kan konfigurere antivirus- eller EDR-innstillinger på endepunktene ved hjelp av følgende metoder:

Operativsystemoppgraderinger

Når du oppgraderer operativsystemet til en ny hovedversjon, må du først avinstallere Defender for Endpoint på Linux, installere oppgraderingen og til slutt konfigurere Defender for Endpoint på Linux på enheten.

Se også

Tips

Vil du lære mer? Engage med Microsoft Security-fellesskapet i teknisk fellesskap: Microsoft Defender for endepunkt teknisk fellesskap.