Implementación de Microsoft Defender para punto de conexión en Linux con Ansible
Se aplica a:
- Servidor de Microsoft Defender para punto de conexión
- Microsoft Defender para servidores
¿Quiere experimentar Defender para punto de conexión? Regístrese para obtener una prueba gratuita.
En este artículo se describe cómo implementar Defender para punto de conexión en Linux mediante Ansible. Una implementación correcta requiere la finalización de todas las tareas siguientes:
- Requisitos previos y requisitos del sistema
- Descarga del paquete de incorporación
- Implementación de Defender para punto de conexión en Linux mediante mde_installer.sh con Ansible
- Implementación de Defender para punto de conexión en Linux mediante Ansible mediante la configuración manual de repositorios
Importante
Este artículo contiene información sobre herramientas de terceros. Esto se proporciona para ayudar a completar escenarios de integración; sin embargo, Microsoft no proporciona compatibilidad con la solución de problemas para herramientas de terceros.
Póngase en contacto con el proveedor de terceros para obtener soporte técnico.
Introducción
Implemente Microsoft Defender para punto de conexión en servidores Linux mediante Ansible para automatizar el proceso de implementación de máquinas a escala. Estos son los dos métodos para automatizar:
Use el script del instalador (recomendado). Este método simplifica en gran medida el proceso de automatización y ayuda a instalar el agente de Defender para punto de conexión e incorporar el dispositivo al portal de Microsoft Defender con solo unos pasos sin tener que configurar para diferentes distribuciones por separado.
Configure manualmente los repositorios para cada distribución. Este método permite automatizar el proceso de implementación mediante la configuración manual de repositorios, la instalación del agente y la incorporación del dispositivo para cada distribución. Este método proporciona un control más pormenorizado sobre el proceso de implementación.
Requisitos previos y requisitos del sistema aplicables a ambos métodos
Antes de empezar, consulte la página principal de Defender para punto de conexión en Linux para obtener una descripción de los requisitos previos y los requisitos del sistema.
Además, para la implementación de Ansible, debe estar familiarizado con las tareas de administración de Ansible, tener Ansible configurado y saber cómo implementar cuadernos de estrategias y tareas. Ansible tiene muchas maneras de completar la misma tarea. Estas instrucciones asumen la disponibilidad de los módulos de Ansible admitidos, como apt y unarchive para ayudar a implementar el paquete. Su organización podría usar un flujo de trabajo diferente. Para obtener más información, consulte la documentación de Ansible.
Ansible debe instalarse en al menos un equipo (Ansible llama a este equipo el nodo de control).
SSH debe configurarse para una cuenta de administrador entre el nodo de control y todos los nodos administrados (dispositivos que tengan Instalado Defender para punto de conexión) y se recomienda configurar con la autenticación de clave pública.
El software siguiente debe instalarse en todos los nodos administrados:
- rizo
- python-apt (si va a implementar en distribuciones mediante apt como administrador de paquetes)
Todos los nodos administrados deben aparecer en el siguiente formato en el archivo o en el
/etc/ansible/hosts
archivo correspondiente:[servers] host1 ansible_ssh_host=10.171.134.39 host2 ansible_ssh_host=51.143.50.51
Prueba de ping:
ansible -m ping all
Descargar el paquete de incorporación aplicable a ambos métodos
Descargue el paquete de incorporación desde Microsoft Defender portal.
Advertencia
Volver a empaquetar el paquete de instalación de Defender para punto de conexión no es un escenario compatible. Esto puede afectar negativamente a la integridad del producto y dar lugar a resultados adversos, incluidos, entre otros, el desencadenamiento de alertas de manipulación y la no aplicación de actualizaciones.
En el portal de Microsoft Defender, vaya a Configuración>Puntos de conexión>Administración de> dispositivosIncorporación.
En el primer menú desplegable, seleccione Servidor Linux como sistema operativo. En el segundo menú desplegable, seleccione La herramienta de administración de configuración de Linux preferida como método de implementación.
Seleccione Descargar el paquete de incorporación Guarde el archivo como
WindowsDefenderATPOnboardingPackage.zip
.Desde un símbolo del sistema, compruebe que tiene el archivo. Extraiga el contenido del archivo:
unzip WindowsDefenderATPOnboardingPackage.zip
Archive: WindowsDefenderATPOnboardingPackage.zip inflating: mdatp_onboard.json
Implementación de Defender para punto de conexión mediante mde_installer.sh con Ansible
Antes de empezar, asegúrese de descargar el paquete de incorporación y cumplir los requisitos previos para implementar Defender para punto de conexión en Linux mediante el script de Bash del instalador.
Descarga del script de Bash del instalador
Extraiga el script de Bash del instalador del repositorio de Microsoft GitHub o use el siguiente comando para descargarlo.
wget https://raw.githubusercontent.com/microsoft/mdatp-xplat/refs/heads/master/linux/installation/mde_installer.sh
Creación de archivos YAML de Ansible
Cree el archivo YAML de instalación. También puede descargar el archivo directamente desde 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 }}"
Nota:
El script del instalador también admite otros parámetros, como el canal, la protección en tiempo real, la versión, etc. Para seleccionar en la lista de opciones disponibles, consulte la ayuda a través del siguiente comando: ./mde_installer.sh --help
Aplicar el cuaderno de estrategias
Aplique el cuaderno de estrategias mediante el siguiente comando, reemplazando las rutas de acceso y el canal correspondientes según sus requisitos:
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> "
Comprobación de si la implementación se realiza correctamente
En el portal de Microsoft Defender, abra el inventario de dispositivos. El dispositivo puede tardar entre 5 y 20 minutos en aparecer en el portal.
Realice las siguientes comprobaciones posteriores a la instalación, que incluyen comprobaciones como el estado, la conectividad, el antivirus y las pruebas de detección de EDR para garantizar una implementación y un funcionamiento correctos de Defender para punto de conexión.
- 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"
Cómo desinstalar Microsoft Defender para punto de conexión en servidores Linux
En primer lugar, cree un archivo YAML de desinstalación (por ejemplo: /etc/ansible/playbooks/uninstall_mdatp.yml) que use mde_installer.sh
. También puede descargar el archivo directamente desde 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 }}"
Ejecute el siguiente comando para desinstalar Defender para punto de conexión mediante el cuaderno de estrategias:
ansible-playbook -i /etc/ansible/hosts /etc/ansible/playbooks/uninstall_mdatp.yml --extra-vars "mde_installer_script=<path to mde_installer.sh>"
Implementación de Defender para punto de conexión mediante Ansible mediante la configuración manual de repositorios
Siga los pasos de esta sección después de descargar el paquete de incorporación y cumplir los requisitos previos para implementar Defender para punto de conexión mediante la configuración manual de los repositorios para cada distribución de Linux.
Creación de archivos YAML de Ansible
Cree una subtarea o archivos de roles que contribuyan a un cuaderno de estrategias o una tarea.
Cree la tarea de incorporación,
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
Agregue el repositorio de Defender para punto de conexión y la clave ,
add_apt_repo.yml
. Defender para punto de conexión en Linux se puede implementar desde uno de los canales siguientes:-
insiders-fast, se indica como
[channel]
insiders-slow, se indica como[channel]
-
prod, que se indica como
[channel]
mediante el nombre de versión (consulte Repositorio de software de Linux para productos de Microsoft)
Cada canal corresponde a un repositorio de software linux.
La elección del canal determina el tipo y la frecuencia de las actualizaciones que se ofrecen al dispositivo. Los dispositivos de insiders-fast son los primeros en recibir actualizaciones y nuevas características, seguidos más adelante por los usuarios internos lentos y, por último, por producción.
Para obtener una vista previa de las nuevas características y proporcionar comentarios anticipados, se recomienda configurar algunos dispositivos en la empresa para usar insiders-fast o insiders-slow.
Advertencia
Cambiar el canal después de la instalación inicial requiere que se vuelva a instalar el producto. Para cambiar el canal del producto: desinstale el paquete existente, vuelva a configurar el dispositivo para que use el nuevo canal y siga los pasos de este documento para instalar el paquete desde la nueva ubicación.
-
insiders-fast, se indica como
Anote la distribución y la versión e identifique la entrada más cercana en
https://packages.microsoft.com/config/[distro]/
.En los comandos siguientes, reemplace [distro] y [version] por la información que ha identificado.
Nota:
En el caso de Oracle Linux y Amazon Linux 2, reemplace [distro] por "rhel". Para Amazon Linux 2, reemplace [versión] por "7". Para Oracle Linux, reemplace [versión] por la versión de 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"
Cree la instalación de Ansible y desinstale los archivos YAML.
Para las distribuciones basadas en apt, use el siguiente archivo 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
Para distribuciones basadas en dnf, use el siguiente archivo 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
Aplicar el cuaderno de estrategias
En este paso, aplicará el cuaderno de estrategias. Ejecute los archivos de tareas en /etc/ansible/playbooks/
el directorio o en el directorio correspondiente.
Instalación:
ansible-playbook /etc/ansible/playbooks/install_mdatp.yml -i /etc/ansible/hosts
Importante
Cuando el producto se inicia por primera vez, descarga las definiciones de antimalware más recientes. Dependiendo de la conexión a Internet, esto puede tardar hasta unos minutos.
Validación/configuración:
ansible -m shell -a 'mdatp connectivity test' all
ansible -m shell -a 'mdatp health' all
Desinstalación:
ansible-playbook /etc/ansible/playbooks/uninstall_mdatp.yml -i /etc/ansible/hosts
Solucionar de problemas de instalación y actualización
Para solucionar problemas por sí mismo, siga estos pasos:
Para obtener información sobre cómo buscar el registro que se genera automáticamente cuando se produce un error de instalación, consulte Problemas de instalación de registros.
Para obtener información sobre problemas comunes de instalación, consulte Problemas de instalación.
Si el estado del dispositivo es
false
, consulte Problemas de estado del agente de Defender para punto de conexión.Para ver los problemas de rendimiento del producto, consulte Solución de problemas de rendimiento.
Para ver los problemas de proxy y conectividad, consulte Solución de problemas de conectividad en la nube.
Para obtener soporte técnico de Microsoft, abra una incidencia de soporte técnico y proporcione los archivos de registro creados mediante el analizador de cliente.
Configuración de directivas para Microsoft Defender en Linux
Puede configurar los valores de antivirus o EDR en los puntos de conexión mediante los métodos siguientes:
- Consulte Establecimiento de preferencias para Microsoft Defender para punto de conexión en Linux.
- Consulte administración de la configuración de seguridad para configurar las opciones en el portal de Microsoft Defender.
Actualizaciones del sistema operativo
Al actualizar el sistema operativo a una nueva versión principal, primero debe desinstalar Defender para punto de conexión en Linux, instalar la actualización y, por último, volver a configurar Defender para punto de conexión en Linux en el dispositivo.
Recursos adicionales
- Adición o eliminación de repositorios YUM
- Administración de paquetes con el administrador de paquetes dnf
- Adición y eliminación de repositorios APT
- Administración de apt-packages
- Problemas de eventos que faltan
Sugerencia
¿Desea obtener más información? Engage con la comunidad de seguridad de Microsoft en nuestra comunidad tecnológica: Microsoft Defender para punto de conexión Tech Community.