Udostępnij za pośrednictwem


Wdrażanie Ochrona punktu końcowego w usłudze Microsoft Defender w systemie Linux przy użyciu rozwiązania Ansible

Dotyczy:

Chcesz poznać usługę ochrony punktu końcowego w usłudze Microsoft Defender? Utwórz konto, aby skorzystać z bezpłatnej wersji próbnej.

W tym artykule opisano sposób wdrażania usługi Defender for Endpoint w systemie Linux przy użyciu rozwiązania Ansible. Pomyślne wdrożenie wymaga wykonania wszystkich następujących zadań:

Ważna

Ten artykuł zawiera informacje o narzędziach innych firm. Zapewnia to pomoc w ukończeniu scenariuszy integracji, jednak firma Microsoft nie zapewnia obsługi rozwiązywania problemów z narzędziami innych firm.
Skontaktuj się z dostawcą innej firmy w celu uzyskania pomocy technicznej.

Wprowadzenie

Wdrażanie Ochrona punktu końcowego w usłudze Microsoft Defender na serwerach z systemem Linux przy użyciu rozwiązania Ansible w celu zautomatyzowania procesu wdrażania maszyn na dużą skalę. Poniżej przedstawiono dwie metody automatyzacji:

  • Użyj skryptu instalatora (zalecane). Ta metoda znacznie upraszcza proces automatyzacji i pomaga zainstalować agenta usługi Defender for Endpoint i dołączyć urządzenie do portalu Microsoft Defender przy użyciu zaledwie kilku kroków bez konieczności oddzielnego konfigurowania różnych dystrybucji.

  • Ręcznie skonfiguruj repozytoria dla każdej dystrybucji. Ta metoda umożliwia zautomatyzowanie procesu wdrażania przez ręczne skonfigurowanie repozytoriów, zainstalowanie agenta i dołączenie urządzenia dla każdej dystrybucji. Ta metoda zapewnia bardziej szczegółową kontrolę nad procesem wdrażania.

Wymagania wstępne i wymagania systemowe mające zastosowanie do obu metod

Przed rozpoczęciem zapoznaj się z główną stroną usługi Defender for Endpoint w systemie Linux , aby zapoznać się z opisem wymagań wstępnych i wymagań systemowych.

Ponadto w przypadku wdrożenia rozwiązania Ansible musisz znać zadania administracyjne rozwiązania Ansible, skonfigurować rozwiązanie Ansible i wiedzieć, jak wdrażać podręczniki i zadania. Rozwiązania Ansible mają wiele sposobów wykonania tego samego zadania. W tych instrukcjach założono dostępność obsługiwanych modułów rozwiązania Ansible, takich jak apt i unarchive , aby ułatwić wdrożenie pakietu. Twoja organizacja może używać innego przepływu pracy. Aby uzyskać więcej informacji, zobacz dokumentację rozwiązania Ansible.

  • Rozwiązania Ansible należy zainstalować na co najmniej jednym komputerze (aplikacja Ansible wywołuje ten komputer jako węzeł sterowania).

  • Protokół SSH musi być skonfigurowany dla konta administratora między węzłem kontroli a wszystkimi węzłami zarządzanymi (urządzeniami, na których zainstalowano usługę Defender for Endpoint), i zaleca się skonfigurowanie uwierzytelniania za pomocą klucza publicznego.

  • Na wszystkich węzłach zarządzanych należy zainstalować następujące oprogramowanie:

    • lok
    • python-apt (jeśli wdrażasz w dystrybucjach przy użyciu narzędzia apt jako menedżera pakietów)
  • Wszystkie węzły zarządzane muszą być wymienione w następującym formacie lub /etc/ansible/hosts odpowiednim pliku:

    [servers]
    host1 ansible_ssh_host=10.171.134.39
    host2 ansible_ssh_host=51.143.50.51
    
  • Test ping:

    ansible -m ping all
    

Pobierz pakiet dołączania mający zastosowanie do obu metod

Pobierz pakiet dołączania z portalu Microsoft Defender.

Ostrzeżenie

Ponowne pakowanie pakietu instalacyjnego usługi Defender for Endpoint nie jest obsługiwanym scenariuszem. Może to negatywnie wpłynąć na integralność produktu i prowadzić do niekorzystnych wyników, w tym między innymi do wyzwalania niestosowania alertów i aktualizacji powodujących naruszenie.

  1. W portalu Microsoft Defender przejdź do pozycji Ustawienia>Punkty końcowe>Dołączanie urządzeń dozarządzania urządzeniami>.

  2. W pierwszym menu rozwijanym wybierz pozycję Linux Server jako system operacyjny. W drugim menu rozwijanym wybierz preferowane narzędzie do zarządzania konfiguracją systemu Linux jako metodę wdrażania.

  3. Wybierz pozycję Pobierz pakiet dołączania. Zapisz plik jako WindowsDefenderATPOnboardingPackage.zip.

    Opcja Pobierz pakiet dołączania

  4. W wierszu polecenia sprawdź, czy masz plik. Wyodrębnij zawartość archiwum:

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

Wdrażanie usługi Defender dla punktu końcowego przy użyciu mde_installer.sh z rozwiązaniem Ansible

Przed rozpoczęciem upewnij się, że pakiet dołączania został pobrany i spełnia wymagania wstępne dotyczące wdrażania usługi Defender for Endpoint w systemie Linux przy użyciu skryptu bash instalatora.

Pobieranie skryptu powłoki bash instalatora

Pobierz skrypt powłoki bash instalatora z repozytorium Microsoft GitHub lub użyj następującego polecenia, aby go pobrać.

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

Tworzenie plików YAML rozwiązania Ansible

Utwórz plik YAML instalacji. Możesz również pobrać plik bezpośrednio z usługi 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 }}"

Uwaga

Skrypt instalatora obsługuje również inne parametry, takie jak kanał, ochrona w czasie rzeczywistym, wersja itp. Aby wybrać z listy dostępnych opcji, sprawdź pomoc za pomocą następującego polecenia: ./mde_installer.sh --help

Stosowanie podręcznika

Zastosuj podręcznik przy użyciu następującego polecenia, zastępując odpowiednie ścieżki i kanał zgodnie z wymaganiami:

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> "

Sprawdzanie, czy wdrożenie zakończyło się pomyślnie

  1. W portalu Microsoft Defender otwórz spis urządzeń. Wyświetlenie urządzenia w portalu może potrwać od 5 do 20 minut.

  2. Wykonaj następujące testy po instalacji, takie jak testy kondycji, łączności, oprogramowania antywirusowego i wykrywania EDR, aby zapewnić pomyślne wdrożenie i działanie usługi 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"


Jak odinstalować Ochrona punktu końcowego w usłudze Microsoft Defender na serwerach z systemem Linux

Najpierw utwórz plik YAML dezinstalacji (na przykład /etc/ansible/playbooks/uninstall_mdatp.yml), który używa polecenia mde_installer.sh. Możesz również pobrać plik bezpośrednio z usługi 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 }}"

Uruchom następujące polecenie, aby odinstalować usługę Defender for Endpoint przy użyciu podręcznika:

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

Wdrażanie usługi Defender for Endpoint przy użyciu rozwiązania Ansible przez ręczne konfigurowanie repozytoriów

Wykonaj kroki opisane w tej sekcji po pobraniu pakietu dołączania i spełnieniu wymagań wstępnych dotyczących wdrożenia usługi Defender for Endpoint, ręcznie konfigurując repozytoria dla każdej dystrybucji systemu Linux.

Tworzenie plików YAML rozwiązania Ansible

Utwórz podzadania lub pliki ról, które współtworzą element playbook lub zadanie.

  1. Utwórz zadanie dołączania: 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. Dodaj repozytorium usługi Defender for Endpoint i klucz . add_apt_repo.yml Usługę Defender for Endpoint w systemie Linux można wdrożyć z jednego z następujących kanałów:

    Każdy kanał odpowiada repozytorium oprogramowania systemu Linux.

    Wybór kanału określa typ i częstotliwość aktualizacji oferowanych urządzeniu. Urządzenia w insiders-fast są pierwszymi, które otrzymują aktualizacje i nowe funkcje, a następnie przez wewnętrznych wolno, a na koniec przez prod.

    Aby zapoznać się z nowymi funkcjami i przekazać wczesne opinie, zaleca się skonfigurowanie niektórych urządzeń w przedsiębiorstwie tak, aby korzystały z funkcji insiders-fast lub insiders-slow.

    Ostrzeżenie

    Przełączenie kanału po początkowej instalacji wymaga ponownej instalacji produktu. Aby przełączyć kanał produktu: odinstaluj istniejący pakiet, skonfiguruj ponownie urządzenie do korzystania z nowego kanału i wykonaj kroki opisane w tym dokumencie, aby zainstalować pakiet z nowej lokalizacji.

  3. Zanotuj dystrybucję i wersję oraz zidentyfikuj najbliższy wpis w obszarze https://packages.microsoft.com/config/[distro]/.

  4. W poniższych poleceniach zastąp ciąg [dystrybucja] i [wersja] zidentyfikowanymi informacjami.

    Uwaga

    W przypadku systemów Oracle Linux i Amazon Linux 2 zastąp ciąg [dystrybucja] ciągiem "rhel". W przypadku systemu Amazon Linux 2 zastąp ciąg [wersja] ciągiem "7". W przypadku systemu Oracle Linux zastąp wartość [version] wersją systemu 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. Utwórz instalację rozwiązania Ansible i odinstaluj pliki YAML.

    • W przypadku dystrybucji opartych na apt użyj następującego pliku YAML:

      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
      
    • W przypadku dystrybucji opartych na pliku dnf użyj następującego pliku YAML:

      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
      

Stosowanie podręcznika

W tym kroku zastosujesz podręcznik. Uruchom pliki zadań w katalogu /etc/ansible/playbooks/ lub odpowiednim katalogu.

  1. Instalacja:

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

    Ważna

    Gdy produkt zostanie uruchomiony po raz pierwszy, pobierze najnowsze definicje ochrony przed złośliwym kodem. W zależności od połączenia internetowego może to potrwać do kilku minut.

  2. Walidacja/konfiguracja:

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

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

Rozwiąż problemy z instalacją

W celu samodzielnego rozwiązywania problemów wykonaj następujące kroki:

  1. Aby uzyskać informacje na temat znajdowania dziennika wygenerowanego automatycznie po wystąpieniu błędu instalacji, zobacz Problemy z instalacją dziennika.

  2. Aby uzyskać informacje o typowych problemach z instalacją, zobacz Problemy z instalacją.

  3. Jeśli kondycja urządzenia to false, zobacz Problemy z kondycją agenta punktu końcowego w usłudze Defender for Endpoint.

  4. W przypadku problemów z wydajnością produktu zobacz Rozwiązywanie problemów z wydajnością.

  5. Aby uzyskać informacje o problemach z serwerem proxy i łącznością, zobacz Rozwiązywanie problemów z łącznością w chmurze.

  6. Aby uzyskać pomoc techniczną od firmy Microsoft, otwórz bilet pomocy technicznej i podaj pliki dziennika utworzone przy użyciu analizatora klienta.

Jak skonfigurować zasady dla Microsoft Defender w systemie Linux

Ustawienia programu antywirusowego lub EDR w punktach końcowych można skonfigurować przy użyciu następujących metod:

Uaktualnienia systemu operacyjnego

Podczas uaktualniania systemu operacyjnego do nowej wersji głównej należy najpierw odinstalować usługę Defender for Endpoint w systemie Linux, zainstalować uaktualnienie, a na koniec ponownie skonfigurować usługę Defender dla punktu końcowego w systemie Linux na urządzeniu.

Zobacz też

Porada

Chcesz dowiedzieć się więcej? Engage ze społecznością microsoft security w naszej społeczności technicznej: Ochrona punktu końcowego w usłudze Microsoft Defender Tech Community.