Déployer Microsoft Defender pour point de terminaison sur Linux avec Ansible
S’applique à :
- Microsoft Defender pour point de terminaison Server.
- Microsoft Defender pour les serveurs
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 d’Ansible. Un déploiement réussi nécessite l’exécution de toutes les tâches suivantes :
- Conditions préalables et configuration système requise
- Télécharger le package d’intégration
- Déployer Defender pour point de terminaison sur Linux à l’aide de mde_installer.sh avec Ansible
- Déployer Defender pour point de terminaison sur Linux à l’aide d’Ansible en configurant les référentiels manuellement
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.
Introduction
Déployez Microsoft Defender pour point de terminaison sur des serveurs Linux à l’aide d’Ansible pour automatiser le processus de déploiement des machines à grande échelle. Voici les deux méthodes à automatiser.
- Utilisation du script du programme d’installation (recommandé). Cette méthode simplifie considérablement le processus d’automatisation et permet d’installer l’agent Defender pour point de terminaison et d’intégrer l’appareil au portail Microsoft Defender en quelques étapes seulement sans avoir à configurer pour différentes distributions séparément.
2. Configuration manuelle des référentiels pour chaque distribution. Cette méthode vous permet d’automatiser le processus de déploiement en configurant manuellement les référentiels, en installant l’agent et en intégrant l’appareil pour chaque distribution. Cette méthode donne un contrôle plus précis sur le processus de déploiement.
Conditions préalables et configuration système requise applicables aux deux méthodes
Avant de commencer, consultez la page main Defender pour point de terminaison sur Linux pour obtenir une description des prérequis et de la configuration système requise.
En outre, pour le déploiement d’Ansible, vous devez être familiarisé avec les tâches d’administration Ansible, disposer d’Ansible configuré et savoir déployer des playbooks et des tâches. Ansible propose de nombreuses façons d’effectuer la même tâche. Ces instructions supposent la disponibilité des modules Ansible pris en charge, tels que apt et unarchive pour faciliter le déploiement du package. Votre organization peut utiliser un autre workflow. Pour plus d’informations, reportez-vous à la documentation Ansible .
Ansible doit être installé sur au moins un ordinateur (Ansible appelle cet ordinateur le nœud de contrôle).
SSH doit être configuré pour un compte d’administrateur entre le nœud de contrôle et tous les nœuds managés (appareils sur lesquels Defender pour point de terminaison est installé), et il est recommandé d’être configuré avec l’authentification par clé publique.
Les logiciels suivants doivent être installés sur tous les nœuds gérés :
- friser
- python-apt (si vous effectuez un déploiement sur des distributions à l’aide d’apt comme gestionnaire de package)
Tous les nœuds managés doivent être répertoriés au format suivant dans le
/etc/ansible/hosts
fichier ou approprié :[servers] host1 ansible_ssh_host=10.171.134.39 host2 ansible_ssh_host=51.143.50.51
Test ping :
ansible -m ping all
Télécharger le package d’intégration applicable aux deux méthodes
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.
Dans le portail Microsoft Defender, accédez à Paramètres Points> determinaison> Gestiondes> appareilsIntégration.
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.
Sélectionnez Télécharger le package d’intégration. Enregistrez le fichier sous
WindowsDefenderATPOnboardingPackage.zip
.À partir d’une invite de commandes, vérifiez que vous disposez du fichier . Extrayez le contenu de l’archive :
ls -l
total 8 -rw-r--r-- 1 test staff 4984 Feb 18 11:22 WindowsDefenderATPOnboardingPackage.zip
unzip WindowsDefenderATPOnboardingPackage.zip
Archive: WindowsDefenderATPOnboardingPackage.zip inflating: mdatp_onboard.json
Déployer Defender pour point de terminaison à l’aide de mde_installer.sh avec Ansible
Avant de commencer, veillez à télécharger le package d’intégration et à respecter les prérequis pour déployer Defender pour point de terminaison sur Linux à l’aide du script bash du programme d’installation.
Télécharger le script bash du programme d’installation
Extrayez le script bash du programme d’installation à partir du référentiel Microsoft GitHub ou utilisez la commande suivante pour le télécharger.
wget https://raw.githubusercontent.com/microsoft/mdatp-xplat/refs/heads/master/linux/installation/mde_installer.sh
Créer des fichiers YAML Ansible
Créez un fichier YAML d’installation. Vous pouvez également télécharger le fichier directement à partir de 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 }}"
Appliquer le playbook
Appliquez le playbook à l’aide de la commande suivante, en remplaçant les chemins et le canal correspondants en fonction de vos besoins :
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> "
Vérifier si le déploiement est réussi
Dans le portail Microsoft Defender, ouvrez l’inventaire des appareils. L’affichage de l’appareil dans le portail peut prendre 5 à 20 minutes.
Effectuez les vérifications post-installation suivantes, qui incluent des vérifications telles que des tests d’intégrité, de connectivité, d’antivirus et de détection EDR pour garantir la réussite du déploiement et du fonctionnement de Defender pour point de terminaison.
- 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"
Comment désinstaller Microsoft Defender pour point de terminaison sur des serveurs Linux
Créez un fichier YAML de désinstallation (par exemple : /etc/ansible/playbooks/uninstall_mdatp.yml) qui utilise mde_installer.sh. Vous pouvez également télécharger le fichier directement à partir de 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 }}"
Exécutez la commande suivante pour désinstaller Defender pour point de terminaison à l’aide du playbook :
ansible-playbook -i /etc/ansible/hosts /etc/ansible/playbooks/uninstall_mdatp.yml --extra-vars "mde_installer_script=<path to mde_installer.sh>"
Déployer Defender pour point de terminaison à l’aide d’Ansible en configurant les référentiels manuellement
Suivez les étapes décrites dans cette section après avoir téléchargé le package d’intégration et respecté les prérequis pour déployer Defender pour point de terminaison en configurant manuellement les référentiels pour chaque distribution Linux.
Créer des fichiers YAML Ansible
Créez une tâche subordonnée ou des fichiers de rôle qui contribuent à un playbook ou à une tâche.
Créez la tâche d’intégration :
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
Ajoutez le référentiel et la clé Defender pour point de terminaison,
add_apt_repo.yml
:Defender pour point de terminaison sur Linux peut être déployé à partir de l’un des canaux suivants :
-
insiders-rapide, désigné comme
[channel]
-
insiders-lents, désigné comme
[channel]
-
prod, indiqué comme
[channel]
utilisant le nom de version (voir Référentiel de logiciels Linux pour les produits Microsoft)
Chaque canal 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-slow, 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 suivantes, remplacez [distribution] et [version] par les informations que vous avez identifiées.
Remarque
Dans le cas d’Oracle Linux et Amazon Linux 2, remplacez [distribution] par « rhel ». Pour Amazon Linux 2, remplacez [version] par « 7 ». Pour Oracle Linux, remplacez [version] par la version d’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"
-
insiders-rapide, désigné comme
Créez les fichiers YAML d’installation et de désinstallation d’Ansible.
Pour les distributions basées sur apt, utilisez le fichier YAML suivant :
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
Pour les distributions basées sur dnf, utilisez le fichier YAML suivant :
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
Appliquer le playbook
Dans cette étape, vous appliquez le playbook. Exécutez les fichiers de tâches sous /etc/ansible/playbooks/
ou le répertoire approprié.
Installation:
ansible-playbook /etc/ansible/playbooks/install_mdatp.yml -i /etc/ansible/hosts
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.
Validation/configuration :
ansible -m shell -a 'mdatp connectivity test' all
ansible -m shell -a 'mdatp health' all
Désinstallation :
ansible-playbook /etc/ansible/playbooks/uninstall_mdatp.yml -i /etc/ansible/hosts
Résoudre des problèmes d’installation
Pour le dépannage automatique, procédez comme suit :
Pour plus d’informations sur la recherche du journal généré automatiquement lorsqu’une erreur d’installation se produit, consultez Problèmes d’installation du journal.
Pour plus d’informations sur les problèmes d’installation courants, consultez Problèmes d’installation.
Si l’intégrité de l’appareil est
false
, consultez Problèmes d’intégrité de l’agent Defender pour point de terminaison.Pour connaître les problèmes de performances du produit, consultez Résoudre les problèmes de performances.
Pour les problèmes de proxy et de connectivité, consultez Résoudre les problèmes de connectivité cloud.
Pour obtenir le support de Microsoft, ouvrez un ticket de support et fournissez les fichiers journaux créés à l’aide de l’analyseur client.
Comment configurer des stratégies pour Microsoft Defender sur Linux
Vous pouvez configurer des paramètres antivirus ou EDR sur vos points de terminaison à l’aide des méthodes suivantes :
- Consultez Définir des préférences pour Microsoft Defender pour point de terminaison sur Linux.
- Consultez Gestion des paramètres de sécurité pour configurer les paramètres dans le portail Microsoft Defender.
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.
Voir aussi
Conseil
Voulez-vous en savoir plus ? Engage avec la communauté Microsoft Security dans notre communauté technique : Microsoft Defender pour point de terminaison Tech Community.