Programar un examen antivirus mediante crontab con Microsoft Defender para punto de conexión en Linux

Para realizar un análisis para Linux, consulte Comandos admitidos.

Para Linux (y Unix), puede usar una herramienta denominada crontab (similar a Programador de tareas en Windows) para ejecutar tareas programadas.

Requisito previo

Nota:

Para obtener una lista de todas las zonas horarias, ejecute el siguiente comando: timedatectl list-timezones
Ejemplos de zonas horarias:

  • America/Los_Angeles
  • America/New_York
  • America/Chicago
  • America/Denver

Configurar la tarea cron

Para establecer el trabajo cron, use los comandos de este artículo.

Hacer una copia de seguridad de las entradas de crontab

Sugerencia

Realice este paso antes de editar o quitar entradas.

sudo crontab -l > /var/tmp/cron_backup_200919.dat

Donde 200919 = AAMMDD

Para editar la crontab y agregar un nuevo trabajo como usuario raíz:

sudo crontab -e

Nota:

El editor predeterminado es VIM.

Es posible que vea lo siguiente:

0 * * * * /etc/opt/microsoft/mdatp/logrorate.sh

Presione Insertar y agregue las siguientes entradas:

CRON_TZ=America/Los_Angeles

0 2 * * sat /usr/bin/mdatp scan quick > ~/mdatp_cron_job.log

Nota:

En este ejemplo, lo hemos establecido en 00 minutos, 2 a.m. (hora en formato de 24 horas), cualquier día del mes, cualquier mes, los sábados. Esta configuración significa que el trabajo se ejecuta los sábados a las 2:00 a.m. Pacífico (UTC -8).

Presione Esc y escriba ":wq" sin comillas dobles.

Nota:

w == escribir, q == salir

Para ver los trabajos cron, escriba sudo crontab -l

Captura de pantalla de la página mdatp de Linux.

Para inspeccionar las ejecuciones de tareas cron

sudo grep mdatp /var/log/cron

Para examinar el archivo mdatp_cron_job.log*

sudo nano mdatp_cron_job.log

Verificar la ejecución del escaneo

Linux no proporciona una manera directa de confirmar que se ejecutó un examen programado.

Los análisis programados configurados mediante crontab no presentan un campo de estado ni una confirmación específica en Microsoft Defender para Endpoint en Linux.

Para verificar que se ejecutó un análisis, ejecute el siguiente comando:

mdatp scan list

mdatp scan list Devuelve un historial de los últimos 7 análisis realizados en el dispositivo por Microsoft Defender para punto de conexión. Para cada entrada de escaneo, puede ver:

  • Tipo de examen: rápido o completo
  • Hora de inicio del escaneo - Por ejemplo, 05 de enero de 2023 a las 03:18:39 p. m.
  • Estado del escaneo: por ejemplo, completado correctamente, fallido o cancelado

Utilice este comando para verificar que los análisis programados se ejecutaron en la fecha, hora y frecuencia esperadas.

El resultado solo cubre los últimos siete escaneos. Si necesita comprobar si tanto los análisis rápidos como los completos se ejecutan con regularidad, supervíselo a lo largo del tiempo o cree un script para ello.

También puede comprobar que el análisis se realizó de la siguiente manera:

Ejecución de análisis bajo demanda:

  • Examen rápido

    mdatp scan quick
    
  • Análisis completo

     mdatp scan full
    
  • Examen de una ruta de acceso específica

    mdatp scan custom --path /home/user/downloads
    

Comprobación de los resultados del examen

  • Enumera todas las amenazas detectadas.

    mdatp threat list
    
  • Obtenga detalles sobre una amenaza específica.

    mdatp threat get --id [threat-id]
    

Si usa Ansible, Chef, Puppet o SaltStack

Use los siguientes comandos:

Para establecer trabajos cron en Ansible

cron - Manage cron.d and crontab entries

Para obtener más información, consulte la documentación de Ansible.

Para establecer crontabs en Chef

cron resource

Para obtener más información, consulte la documentación de Chef.

Para establecer trabajos cron en Puppet

Resource Type: cron

Para obtener más información, vea Documentación de Puppet: Tipo de recurso: cron.

Automatización con Puppet: trabajos de Cron y tareas programadas

Para obtener más información, consulte documentación de Puppet sobre trabajos y tareas programadas.

Para administrar trabajos cron en SaltStack

Resource Type: salt.states.cron

Ejemplo:

mdatp scan quick > /tmp/mdatp_scan_log.log:
  cron.present:
    - special: '@hourly'

Para obtener más información, consulte la documentación de Salt.States.Cron.

Información adicional

Para obtener ayuda con crontab

man crontab

Para obtener una lista de archivos crontab para el usuario actual

crontab -l

Para obtener una lista de archivos crontab para otro usuario

crontab -u username -l

Para realizar una copia de seguridad de entradas de crontab

Sugerencia

Realice este paso antes de editar o quitar entradas.

crontab -l > /var/tmp/cron_backup.dat

Para restaurar entradas de crontab

crontab /var/tmp/cron_backup.dat

Para editar la crontab y agregar un nuevo trabajo como usuario raíz

sudo crontab -e

Para editar el crontab y agregar un nuevo trabajo

crontab -e

Para editar las entradas de crontab de otro usuario

crontab -u username -e

Para quitar todas las entradas de crontab

crontab -r

Para quitar las entradas de crontab de otro usuario

crontab -u username -r

Explicación

+—————- minute (values: 0 - 59) (special characters: , \- \* /)  <br>
| +————- hour (values: 0 - 23) (special characters: , \- \* /) <br>
| | +———- day of month (values: 1 - 31) (special characters: , \- \* / L W C)  <br>
| | | +——- month (values: 1 - 12) (special characters: , \- \* /)  <br>
| | | | +—- day of week (values: 0 - 6) (Sunday=0 or 7) (special characters: , \- \* / L W C) <br>
| | | | |*****command to be executed

Vea también