Planifier une analyse antivirus à l’aide de crontab avec Microsoft Defender pour point de terminaison sur Linux

Pour exécuter une analyse de Linux, consultez Commandes prises en charge.

Pour Linux (et Unix), vous pouvez utiliser un outil appelé crontab (similaire au Planificateur de tâches dans Windows) pour exécuter des tâches planifiées.

Conditions préalables

Remarque

Pour obtenir la liste de tous les fuseaux horaires, exécutez la commande suivante : timedatectl list-timezones
Exemples de fuseaux horaires :

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

Définir le travail Cron

Pour définir le travail cron, utilisez les commandes de cet article.

Sauvegarder les entrées crontab

Conseil

Effectuez cette étape avant de modifier ou de supprimer des entrées.

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

Où 200919 = AAAAMMJJ

Pour modifier le crontab et ajouter un nouveau travail en tant qu’utilisateur racine :

sudo crontab -e

Remarque

L’éditeur par défaut est VIM.

Vous pouvez voir :

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

Appuyez sur Insertion, puis ajoutez les entrées suivantes :

CRON_TZ=America/Los_Angeles

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

Remarque

Dans cet exemple, nous l’avons défini sur 00 minutes, 2 heures du matin (heure au format 24 heures), n’importe quel jour du mois, n’importe quel mois, le samedi. Ce paramètre signifie que le travail s’exécute le samedi à 2h00 du matin. Pacifique (UTC -8).

Appuyez sur Échap, puis tapez «:wq » sans les guillemets doubles.

Remarque

w == write, q == quitter

Pour afficher vos travaux cron, tapez sudo crontab -l

Capture d’écran de la page mdatp linux.

Pour inspecter les exécutions de travaux cron

sudo grep mdatp /var/log/cron

Pour inspecter le mdatp_cron_job.log*

sudo nano mdatp_cron_job.log

Vérifier l’exécution de l’analyse

Linux ne fournit pas de moyen direct de confirmer qu’une analyse planifiée a été exécutée.

Les analyses planifiées configurées via crontab ne font pas apparaître de champ status ou de confirmation dédiée dans Microsoft Defender pour point de terminaison sur Linux.

Pour vérifier qu’une analyse a été exécutée, exécutez la commande suivante :

mdatp scan list

mdatp scan listretourne un historique des 7 dernières analyses effectuées sur l’appareil par Microsoft Defender pour point de terminaison. Pour chaque entrée d’analyse, vous pouvez voir :

  • Type d’analyse : rapide ou complet
  • Heure de début de l’analyse : par exemple, 5 janvier 2023 à 15:18:39
  • État de l’analyse : par exemple, Réussite, Échec ou Annulation

Utilisez cette commande pour vérifier que les analyses planifiées ont été exécutées à la date, à l’heure et à la fréquence attendues.

La sortie couvre uniquement les sept dernières analyses. Si vous avez besoin de case activée si les analyses rapides et complètes sont en cours d’exécution régulière, surveillez-les au fil du temps ou créez un script autour de celle-ci.

Vous pouvez également vérifier l’analyse exécutée par :

Exécution d’analyses à la demande :

  • Analyse rapide

    mdatp scan quick
    
  • Analyse complète

     mdatp scan full
    
  • Analyser un chemin d’accès spécifique

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

Vérification des résultats de l’analyse

  • Répertorier toutes les menaces détectées.

    mdatp threat list
    
  • Obtenez des détails sur une menace spécifique.

    mdatp threat get --id [threat-id]
    

Si vous utilisez Ansible, Chef, Puppet ou SaltStack

Utilisez les commandes suivantes :

Pour définir des travaux cron dans Ansible

cron - Manage cron.d and crontab entries

Pour plus d’informations, consultez la documentation Ansible.

Pour définir crontabs dans Chef

cron resource

Pour plus d’informations, consultez la documentation Chef.

Pour définir des travaux cron dans Puppet

Resource Type: cron

Pour plus d’informations, consultez documentation Puppet : Type de ressource : cron.

Automatisation avec Puppet : travaux Cron et tâches planifiées

Pour plus d’informations, consultez la documentation Puppet sur les travaux et les tâches planifiées.

Pour gérer les travaux cron dans SaltStack

Resource Type: salt.states.cron

Exemple :

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

Pour plus d’informations, consultez la documentation Salt.States.Cron.

Informations supplémentaires

Pour obtenir de l’aide avec crontab

man crontab

Pour obtenir la liste des fichiers crontab pour l’utilisateur actuel

crontab -l

Pour obtenir la liste des fichiers crontab pour un autre utilisateur

crontab -u username -l

Pour sauvegarder les entrées crontab

Conseil

Effectuez cette étape avant de modifier ou de supprimer des entrées.

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

Pour restaurer les entrées crontab

crontab /var/tmp/cron_backup.dat

Pour modifier le crontab et ajouter un nouveau travail en tant qu’utilisateur racine

sudo crontab -e

Pour modifier le crontab et ajouter un nouveau travail

crontab -e

Pour modifier les entrées crontab d’un autre utilisateur

crontab -u username -e

Pour supprimer toutes les entrées crontab

crontab -r

Pour supprimer les entrées crontab d’autres utilisateurs

crontab -u username -r

Explication

+—————- 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

Voir aussi