Planowanie aktualizacji analizy zabezpieczeń dla Ochrona punktu końcowego w usłudze Microsoft Defender w systemie Linux

Aby uruchomić aktualizację Ochrona punktu końcowego w usłudze Microsoft Defender na Linux, zobacz Wdrażanie aktualizacji dla Ochrona punktu końcowego w usłudze Microsoft Defender na Linux.

Linux i Unix mają narzędzie o nazwie crontab (podobne do harmonogramu zadań), które umożliwia uruchamianie zaplanowanych zadań.

Wymagania wstępne

Uwaga

Aby uzyskać listę wszystkich stref czasowych, uruchom następujące polecenie: timedatectl list-timezones

Przykłady stref czasowych:

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

Ustawianie zadania cron

Użyj następujących poleceń:

Tworzenie kopii zapasowych wpisów crontab

Użyj następującego polecenia, aby utworzyć kopię zapasową bieżących wpisów crontab przed wprowadzeniem zmian:

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

Uwaga

W naszym przykładzie: 201118 == YYMMDD.

Wskazówka

Przed ich edycją lub usunięciem należy utworzyć kopię zapasową wpisów crontab.

Aby edytować crontab użytkownika głównego i dodać nowe zadanie:

sudo crontab -e

Uwaga

Domyślny edytor to VIM.

Mogą zostać wyświetlone następujące informacje:

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

I

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

Aby uzyskać instrukcje dotyczące tworzenia zaplanowanego zadania skanowania antywirusowego, zobacz Planowanie skanowania przy użyciu Ochrona punktu końcowego w usłudze Microsoft Defender (Linux).

Naciśnij klawisz "Wstaw"

Dodaj następujące wpisy. CRON_TZ Użyj ustawienia , aby upewnić się, że zaplanowane zadania cron działają w zamierzonej strefie czasowej:

CRON_TZ=America/Los_Angeles

#!RHEL i warianty (CentOS i Oracle Linux)

0 6 * * sun [ $(date +\%d) -le 15 ] && sudo yum update mdatp -y >> ~/mdatp_cron_job.log

#! SLES i warianty

0 6 * * sun [ $(date +\%d) -le 15 ] && sudo zypper update mdatp >> ~/mdatp_cron_job.log

#! Systemy Ubuntu i Debian

0 6 * * sun [ $(date +\%d) -le 15 ] && sudo apt-get install --only-upgrade mdatp >> ~/mdatp_cron_job.log

Uwaga

We wpisach cron w systemach RHEL, SLES, Ubuntu i Debian element 0 6 * * sun oznacza 00 minut, godzinę 6 (w formacie 24-godzinnym), dowolny dzień miesiąca, dowolny miesiąc, w niedziele. [$(date +\%d) -le 15] nie jest uruchamiany, chyba że jest równy lub mniejszy niż 15 dzień (trzeci tydzień). Pełny wpis cron oznacza, że zadanie jest uruchamiane o 6 rano w każdą niedzielę, ale tylko wtedy, gdy dzień miesiąca jest 15 lub wcześniej.

Naciśnij klawisz "Esc"

Wpisz ":wq" bez podwójnych cudzysłowów.

Uwaga

w == zapisz, q == wyjdź

Aby wyświetlić zadania cron, wpisz sudo crontab -l

aktualizowanie usługi Defender dla punktu końcowego na Linux.

Aby sprawdzić, czy uruchomiono zadania cron związane z programem Defender, wyszukaj w dzienniku cron wpisy mdatp:

sudo grep mdatp /var/log/cron

Aby otworzyć plik dziennika i przejrzeć dane wyjściowe z zaplanowanych zadań aktualizacji Defender:

sudo nano mdatp_cron_job.log

Konfigurowanie zaplanowanych aktualizacji za pomocą rozwiązania Ansible, Chef lub Puppet

Użyj następujących poleceń:

Aby ustawić zadania cron w aplikacji Ansible

Użyj modułu cron rozwiązania Ansible do zarządzania zadaniami cron:

cron - Manage cron.d and crontab entries

Zobacz https://docs.ansible.com/ansible/latest , aby uzyskać więcej informacji.

Aby ustawić crontabs w programie Chef

Użyj zasobu cron programu Chef do zarządzania zadaniami cron:

cron resource

Zobacz https://docs.chef.io/resources/cron/ , aby uzyskać więcej informacji.

Aby ustawić zadania cron w puppet

Typ zasobu: cron

Zobacz https://puppet.com/docs/puppet/5.5/types/cron.html , aby uzyskać więcej informacji.

Automatyzowanie za pomocą platformy Puppet: zadania Cron i zaplanowane zadania

Zobacz https://puppet.com/blog/automating-puppet-cron-jobs-and-scheduled-tasks/ , aby uzyskać więcej informacji.

Typowe polecenia i przykłady crontab

Następujące polecenia obejmują typowe zadania crontab, takie jak wyświetlanie listy, tworzenie kopii zapasowych, edytowanie i usuwanie wpisów cron.

Aby uzyskać pomoc dotyczącą programu crontab

Uruchom następujące polecenie, aby wyświetlić stronę ręczną crontab:

man crontab

Aby uzyskać listę wpisów w pliku crontab dla bieżącego użytkownika

Uruchom następujące polecenie, aby wyświetlić listę wpisów crontab bieżącego użytkownika:

crontab -l

Aby uzyskać listę pliku crontab innego użytkownika

Uruchom następujące polecenie, aby wyświetlić listę wpisów crontab innego użytkownika:

crontab -u username -l

Aby utworzyć kopię zapasową wpisów crontab

Użyj następującego polecenia, aby utworzyć kopię zapasową bieżących wpisów crontab:

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

Wskazówka

Zrób to przed edycją lub usunięciem.

Aby przywrócić wpisy crontab

Uruchom następujące polecenie, aby przywrócić wpisy crontab z pliku kopii zapasowej:

crontab /var/tmp/cron_backup.dat

Aby edytować plik crontab i dodać nowe zadanie jako użytkownik root

Użyj następującego polecenia, aby edytować crontab użytkownika głównego i dodać nowe zadanie:

sudo crontab -e

Aby edytować kartę crontab i dodać nowe zadanie

Uruchom następujące polecenie, aby edytować crontab bieżącego użytkownika i dodać nowe zadanie:

crontab -e

Aby edytować wpisy crontab innych użytkowników

Uruchom następujące polecenie, aby edytować wpisy crontab innego użytkownika:

crontab -u username -e

Aby usunąć wszystkie wpisy crontab

Warning

To polecenie usuwa wszystkie wpisy crontab dla bieżącego użytkownika bez monitowania o potwierdzenie. Najpierw należy utworzyć kopię zapasową pliku crontab, crontab -l > /var/tmp/cron_backup.dat jeśli może być konieczne jego przywrócenie.

Użyj następującego polecenia, aby usunąć wszystkie wpisy crontab dla bieżącego użytkownika:

crontab -r

Aby usunąć wpisy crontab innego użytkownika

Warning

To polecenie trwale usuwa wszystkie wpisy crontab dla określonego użytkownika bez monitowania o potwierdzenie. Przed uruchomieniem tego polecenia należy utworzyć kopię zapasową crontab użytkownika.

Użyj następującego polecenia, aby usunąć wszystkie zaplanowane zadania dla określonego użytkownika, usuwając wpisy crontab tego użytkownika:

crontab -u username -r

Informacje o polu wyrażenia Cron

Na poniższym diagramie objaśniono pola w wyrażeniu cron:

+—————- minuty (wartości: 0–59) (znaki specjalne: , - * /) 
| +————- godzina (wartości: 0-23) (znaki specjalne: , - * /)
| | +———- dzień miesiąca (wartości: 1-31) (znaki specjalne: , - * / L W C)
| | | +——- miesiąc (wartości: 1–12) (znaki specjalne: ,- * / )
| | | | +— dzień tygodnia (wartości: 0–6) (niedziela=0 lub 7) (znaki specjalne: , - * / L W C)
| | | | |*****command to be executed