Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym dokumencie opisano funkcję aktualizacji analizy zabezpieczeń w trybie offline Ochrona punktu końcowego w usłudze Microsoft Defender w systemie macOS.
Ta funkcja umożliwia organizacji korzystanie z lokalnego serwera hostingu (nazywanego serwerem dublowanym w tym dokumencie) w celu zaktualizowania analizy zabezpieczeń (określanej w tym dokumencie jako definicje lub podpisy) w punktach końcowych systemu macOS, które mają ograniczoną lub żadną ekspozycję na Internet.
Serwer dublowania to dowolny serwer w środowisku klienta, który może połączyć się z chmurą firmy Microsoft w celu pobrania podpisów. Inne punkty końcowe systemu macOS ściągają podpisy z serwera dublowanego w wstępnie zdefiniowanym interwale.
Kluczowe korzyści
Twój zespół ds. zabezpieczeń może kontrolować częstotliwość pobierania podpisów na serwer lokalny i zarządzać nimi oraz częstotliwością pobierania podpisów z serwera lokalnego przez punkty końcowe.
Masz dodatkową warstwę ochrony i kontroli, ponieważ pobrane podpisy można przetestować na urządzeniu testowym, zanim zostaną rozpropagowane do całej floty.
Potrzebujesz mniejszej przepustowości sieci, ponieważ tylko jeden serwer lokalny sonduje chmurę firmy Microsoft, aby uzyskać najnowsze podpisy w imieniu całej floty.
Serwer dublowania może działać w systemach Windows, Mac lub Linux i nie trzeba instalować usługi Defender for Endpoint na tym serwerze.
Uzyskujesz najbardziej aktualną ochronę antywirusową, ponieważ podpisy są zawsze pobierane wraz z najnowszym zgodnym aparatem antywirusowym.
Starsze wersje podpisów (n-1) są przenoszone do folderu kopii zapasowej na serwerze dublowania w każdej iteracji. Jeśli wystąpił problem z najnowszymi aktualizacjami, możesz ściągnąć wersję podpisu n-1 z folderu kopii zapasowej na urządzenia.
W rzadkich przypadkach, gdy aktualizacja w trybie offline kończy się niepowodzeniem, można skonfigurować opcję rezerwową w celu pobierania aktualizacji online z chmury firmy Microsoft.
Jak działa aktualizacja analizy zabezpieczeń w trybie offline
Organizacje muszą skonfigurować serwer dublowania, który jest lokalnym serwerem sieci Web/NFS dostępnym dla chmury firmy Microsoft.
Sygnatury są pobierane z chmury firmy Microsoft na ten serwer dublowany przez wykonanie skryptu przy użyciu harmonogramu zadań/zadań cron na serwerze lokalnym.
Punkty końcowe systemu macOS z uruchomioną usługą Defender for Endpoint ściągają pobrane podpisy z tego serwera dublowanego w przedziale czasu zdefiniowanym przez użytkownika.
Podpisy pobierane do punktów końcowych systemu macOS z serwera lokalnego są najpierw weryfikowane przed załadowaniem do aparatu antywirusowego.
Aby wyzwolić i skonfigurować proces aktualizacji, zaktualizuj zarządzany plik json konfiguracji w punktach końcowych systemu macOS.
Stan aktualizacji można wyświetlić w interfejsie wiersza polecenia mdatp.
Przepływ procesu pobierania aktualizacji analizy zabezpieczeń na serwerze dublowanym został zilustrowany na poniższym diagramie.
Przepływ procesu aktualizacji analizy zabezpieczeń w punkcie końcowym systemu macOS został zilustrowany na poniższym diagramie.
Serwer dublowania może uruchamiać dowolny z następujących systemów operacyjnych:
- Linux (dowolny smak)
- Windows (dowolna wersja)
- Mac (dowolna wersja)
Wymagania wstępne
Usługa Defender for Endpoint w wersji 101.25012.0003 lub nowszej musi być zainstalowana w punktach końcowych systemu macOS.
Punkty końcowe systemu macOS muszą mieć łączność z serwerem dublowanym.
Punkt końcowy systemu macOS musi uruchamiać dowolne dystrybucje obsługiwane przez usługę Defender for Endpoint.
Serwer dublowania może być serwerem HTTP/HTTPS lub serwerem udziału sieciowego, na przykład serwerem NFS.
Serwer dublowania musi mieć dostęp do następujących adresów URL:
https://github.com/microsoft/mdatp-xplat.githttps://go.microsoft.com/fwlink/?linkid=2144709
Serwer dublowania powinien obsługiwać powłokę bash lub program PowerShell.
Dla serwera dublowanego są wymagane następujące minimalne specyfikacje systemowe:
Rdzenie procesora CPU Pamięci ram Bezpłatny dysk Wymiany 2 rdzenie (preferowane 4 rdzenie) 1 GB min (preferowane 4 GB) 2 GB Zależne od systemu Uwaga
Ta konfiguracja może się różnić w zależności od liczby obsługiwanych żądań i obciążenia, które musi zostać przetworzone przez każdy serwer.
Konfigurowanie serwera dublowania
Uwaga
Zarządzanie serwerem dublowania i jego własność spoczywa wyłącznie na kliencie, ponieważ znajduje się on w środowisku prywatnym klienta.
Dowolny serwer HTTP może być używany jako serwer dublowania. Serwer dublowany nie musi mieć zainstalowanego programu Defender for Endpoint.
Chociaż zarządzanie serwerem dublowania i jego własność spoczywa wyłącznie na kliencie, w tej sekcji przedstawiono dwa przykładowe skrypty powłoki Bash, które pokazują, jak za pomocą języka Python 3 i caddy skonfigurować podstawowy serwer plików HTTP w systemie macOS. Te skrypty są podawane wyłącznie na potrzeby ilustracji i powinny być dostosowane do twoich własnych potrzeb i środowiska.
-
python_http_server.sh: używa wbudowanego modułu serwera HTTP języka Python 3 do obsługi plików z określonego katalogu. -
caddy_http_server.sh: instaluje i konfiguruje serwer internetowy Caddy tak, aby obsługiwał pliki z określonego katalogu.
Aby sprawdzić, czy usługa jest poprawnie skonfigurowana po skonfigurowaniu serwera, przejdź do pozycji "https://localhost:8080".
W przypadku produkcyjnych lub zaawansowanych przypadków użycia zapoznaj się z oficjalną dokumentacją każdego serwera:
Zawsze przeglądaj i dostosuj skrypty do wymagań dotyczących środowiska i zabezpieczeń.
Przykładowy skrypt: konfigurowanie podstawowego serwera plików HTTP w systemie macOS przy użyciu języka Python 3
#!/bin/bash
# python_http_server.sh
# Starts a simple HTTP server using Python 3
# Check for Python 3
if ! command -v python3 &> /dev/null; then
echo "Python 3 is not installed. Please install it first."
exit 1
fi
PORT=8080
FOLDER="."
if [ ! -z "$1" ]; then
PORT=$1
fi
if [ ! -z "$2" ]; then
FOLDER=$2
fi
echo "Starting Python HTTP server on port $PORT (localhost only), serving folder: $FOLDER..."
python3 -m http.server "$PORT" --bind 127.0.0.1 --directory "$FOLDER"
Przykładowy skrypt: konfigurowanie podstawowego serwera plików HTTP w systemie macOS przy użyciu programu Caddy
#!/bin/bash
# caddy_http_server.sh
# Installs and configures Caddy HTTP server on macOS
PORT=8080
FOLDER="."
if [ ! -z "$1" ]; then
PORT=$1
fi
if [ ! -z "$2" ]; then
FOLDER=$2
fi
check_homebrew() {
if ! command -v brew &> /dev/null; then
echo "Homebrew is required to install Caddy."
read -p "Would you like to install Homebrew? (y/n): " install_brew
if [[ "$install_brew" =~ ^[Yy]$ ]]; then
echo "Installing Homebrew..."
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
export PATH="/opt/homebrew/bin:$PATH"
else
echo "Please install Caddy manually and restart this script."
exit 1
fi
fi
}
install_caddy() {
if ! brew list caddy &> /dev/null; then
echo "Installing Caddy via Homebrew..."
brew install caddy
else
echo "Caddy is already installed."
fi
}
# Check for Caddy
if ! command -v caddy &> /dev/null; then
echo "Caddy is not installed."
check_homebrew
install_caddy
else
echo "Caddy is already installed."
fi
# Create a simple Caddyfile
cat <<EOL > Caddyfile
localhost:${PORT} {
root * ${FOLDER}
file_server browse
}
EOL
echo "Caddyfile created. Starting Caddy server on port $PORT..."
caddy run --config ./Caddyfile
Pobieranie skryptu pobierania analizy zabezpieczeń w trybie offline
Firma Microsoft hostuje skrypt pobierania analizy zabezpieczeń w trybie offline w następującym repozytorium GitHub: https://github.com/microsoft/mdatp-xplat.
Wykonaj następujące kroki, aby pobrać skrypt pobierania:
Opcja 1. Klonowanie repozytorium (preferowane)
Zainstaluj narzędzie git na serwerze dublowania.
Przejdź do katalogu, w którym chcesz sklonować repozytorium.
Uruchom polecenie: git clone https://github.com/microsoft/mdatp-xplat.git
Opcja 2. Pobieranie pliku zip
Pobierz plik zip repozytorium: https://github.com/microsoft/mdatp-xplat/archive/refs/heads/master.zip.
Skopiuj plik zip do folderu, w którym chcesz zachować skrypt.
Wyodrębnij folder spakowany.
Uwaga
Zaplanuj zadanie cron lub uruchomione zadanie , aby zachować aktualizację repozytorium/pobranego pliku zip do najnowszej wersji w regularnych odstępach czasu.
Po sklonowaniu repozytorium lub pobraniu spakowanego pliku struktura katalogów lokalnych powinna wyglądać następująco:
user@vm:~/mdatp-xplat$ tree linux/definition_downloader/
linux/definition_downloader/
├── README.md
├── settings.json
├── settings.ps1
├── xplat_offline_updates_download.ps1
└── xplat_offline_updates_download.sh
0 directories, 5 files
Uwaga
Przejdź przez plik README.md, aby szczegółowo zrozumieć, jak używać skryptu.
Plik settings.json składa się z kilku zmiennych, które użytkownik może skonfigurować w celu określenia danych wyjściowych wykonywania skryptu.
| Nazwa pola | Wartość | Opis |
|---|---|---|
downloadFolder |
ciąg | Mapuje na lokalizację, do której skrypt pobiera pliki. |
downloadLinuxUpdates |
Bool | Po ustawieniu na truewartość skrypt pobiera aktualizacje specyficzne dla systemu Linux do downloadFolderelementu . |
logFilePath |
ciąg | Konfiguruje dzienniki diagnostyczne w danym folderze. Ten plik można udostępnić firmie Microsoft w celu debugowania skryptu w przypadku wystąpienia jakichkolwiek problemów. |
downloadMacUpdates |
Bool | Skrypt pobiera aktualizacje specyficzne dla komputerów Mac do downloadFolderpliku . |
downloadPreviewUpdates |
Bool | Pobiera wersję zapoznawczą aktualizacji dostępnych dla określonego systemu operacyjnego. |
backupPreviousUpdates |
Bool | Umożliwia skryptowi skopiowanie poprzedniej aktualizacji w folderze _back , a nowe aktualizacje są pobierane do downloadFolderprogramu . |
Wykonywanie skryptu pobierania analizy zabezpieczeń w trybie offline
Aby ręcznie wykonać skrypt pobierania, skonfiguruj parametry w pliku settings.json zgodnie z opisem w poprzedniej sekcji i użyj jednego z następujących poleceń opartych na systemie operacyjnym serwera dublowanego:
Bash:
./xplat_offline_updates_download.sh
Powershell:
./xplat_offline_updates_download.ps1
Uwaga
Zaplanuj zadanie cron lub uruchomione zadanie , aby wykonać ten skrypt, aby pobrać najnowsze aktualizacje analizy zabezpieczeń na serwer dublowania w regularnych odstępach czasu.
Hostowanie aktualizacji analizy zabezpieczeń w trybie offline na serwerze dublowania
Po wykonaniu skryptu najnowsze sygnatury są pobierane do folderu skonfigurowanego w pliku settings.json (updates.zip).
Po pobraniu pliku zip sygnatur można go hostować na serwerze dublowanym. Serwer dublowany może być hostowany przy użyciu dowolnego serwera HTTP/HTTPS/udziału sieciowego.
Po zakończeniu hostowania skopiuj ścieżkę bezwzględną hostowanego serwera (maksymalnie do katalogu arch_*.
Jeśli na przykład skrypt jest wykonywany za pomocą downloadFolder=/tmp/wdav-updatepolecenia , a serwer HTTP (www.example.server.com:8000) hostuje ścieżkę /tmp/wdav-update, odpowiedni identyfikator URI to: www.example.server.com:8000/mac/production/.
Możemy również użyć ścieżki bezwzględnej katalogu (lokalnego/zdalnego punktu instalacji), takiego jak /tmp/wdav-update/mac/production.
Po skonfigurowaniu serwera dublowania musimy propagować ten adres URL do punktów końcowych komputerów Mac, tak jak offlineDefinitionUpdateUrl w sekcji Konfiguracja zarządzana zgodnie z opisem w następnej sekcji.
Konfigurowanie punktów końcowych
Użyj następującego przykładowego pliku mdatp_managed.json i zaktualizuj parametry zgodnie z konfiguracją, a następnie skopiuj plik do lokalizacji /etc/opt/microsoft/mdatp/managed/mdatp_managed.json.
{
"cloudService": {
"automaticDefinitionUpdateEnabled": true,
"definitionUpdatesInterval": 1202
},
"antivirusEngine": {
"offlineDefinitionUpdateUrl": "http://172.22.199.67:8000/mac/production/",
"offlineDefintionUpdateFallbackToCloud":false,
"offlineDefinitionUpdate": "enabled"
},
"features": {
"offlineDefinitionUpdateVerifySig": "enabled"
}
}
| Nazwa pola | Wartości | Komentarze |
|---|---|---|
automaticDefinitionUpdateEnabled |
true/false |
Określa zachowanie usługi Defender for Endpoint, która próbuje wykonać aktualizacje automatycznie, jest odpowiednio włączona lub wyłączona. |
definitionUpdatesInterval |
Liczbowe | Czas interwału między każdą automatyczną aktualizacją podpisów (w sekundach). |
offlineDefinitionUpdateUrl |
ciąg | Wartość adresu URL wygenerowana w ramach konfiguracji serwera dublowanego. Może to być adres URL serwera zdalnego lub katalog (lokalny/zdalny punkt instalacji). |
offlineDefinitionUpdate |
enabled/disabled |
Po ustawieniu na enabledwartość włączono funkcję "aktualizacja analizy zabezpieczeń w trybie offline" i na odwrót. |
offlineDefinitionUpdateFallbackToCloud |
true/false |
Określ podejście do aktualizacji analizy zabezpieczeń usługi Defender for Endpoint, gdy "serwer dublowania offline" nie może obsłużyć żądania aktualizacji. Jeśli ustawiono wartość true, aktualizacja zostanie ponowiona za pośrednictwem chmury firmy Microsoft, gdy "aktualizacja analizy zabezpieczeń w trybie offline" nie powiodła się; inaczej, na odwrót. |
offlineDefinitionUpdateVerifySig |
enabled/disabled |
Po ustawieniu na enabledwartość pobrane definicje są weryfikowane w punktach końcowych; w przeciwnym razie na odwrót. |
Weryfikowanie konfiguracji
Aby sprawdzić, czy ustawienia są prawidłowo stosowane w punktach końcowych systemu macOS, uruchom następujące polecenie:
mdatp health --details definitions
Przykładowe dane wyjściowe będą wyglądać podobnie do następującego fragmentu kodu:
user@vm:~$ mdatp health --details definitions
automatic_definition_update_enabled : true [managed]
definitions_updated : Mar 14, 2024 at 12:13:17 PM
definitions_updated_minutes_ago : 2
definitions_version : "1.407.417.0"
definitions_status : "up_to_date"
definitions_update_source_uri : "https://go.microsoft.com/fwlink/?linkid=2144709"
definitions_update_fail_reason : ""
offline_definition_url_configured : "http://172.XX.XXX.XX:8000/mac/production/" [managed]
offline_definition_update : "enabled" [managed]
offline_definition_update_verify_sig : "enabled"
offline_definition_update_fallback_to_cloud : false[managed]
Wyzwalanie aktualizacji analizy zabezpieczeń w trybie offline
Aktualizacja automatyczna
Jeśli pola
automaticDefinitionUpdateEnabledioffline_definition_updatew zarządzanym formacie json są ustawione natruewartość , "aktualizacje analizy zabezpieczeń w trybie offline" są wyzwalane automatycznie w okresowych odstępach czasu.Domyślnie ten okresowy interwał wynosi 8 godzin. Można go skonfigurować, ustawiając
definitionUpdatesIntervalparametr w zarządzanym formacie JSON.Ręczna aktualizacja
Aby ręcznie wyzwolić aktualizację "analizy zabezpieczeń w trybie offline", aby pobrać podpisy z serwera dublowanego w punktach końcowych komputerów Mac, uruchom następujące polecenie:
mdatp definitions update
Sprawdzanie stanu aktualizacji
Po wyzwoleniu "aktualizacji analizy zabezpieczeń w trybie offline" za pomocą metody automatycznej lub ręcznej sprawdź, czy aktualizacja zakończyła się pomyślnie, uruchamiając polecenie : mdatp health --details --definitions.
Sprawdź następujące pola:
user@vm:~$ mdatp health --details definitions
...
definitions_status : "up_to_date"
...
definitions_update_fail_reason : ""
...
Typowe kroki rozwiązywania problemów
Sprawdź stan funkcji "aktualizacja analizy zabezpieczeń w trybie offline", używając następującego polecenia:
mdatp health --details definitionsTo polecenie zawiera przyjazny dla użytkownika komunikat w sekcji definitions_update_fail_reason .
Sprawdź, czy
offline_definition_updateioffline_definition_update_verify_sigsą włączone.Sprawdź, czy
definitions_update_source_uriwartość jest równaoffline_definition_url_configured.-
definitions_update_source_urito źródło, z którego pobrano podpisy. -
offline_definition_url_configuredto źródło, z którego należy pobrać podpisy, wymienione w zarządzanym pliku konfiguracji.
-
Spróbuj wykonać test łączności, aby sprawdzić, czy serwer dublowania jest osiągalny z hosta:
mdatp connectivity testSpróbuj wyzwolić aktualizację ręczną przy użyciu następującego polecenia:
mdatp definitions update
Zobacz też
- Ochrona punktu końcowego w usłudze Microsoft Defender w wymaganiach wstępnych systemu macOS
- Ustaw preferencje dla ochrony punktu końcowego usługi Microsoft Defender w systemie macOS
- Usługa ochrony punktu końcowego w usłudze Microsoft Defender w systemie macOS
- Zasoby dla Ochrona punktu końcowego w usłudze Microsoft Defender w systemie macOS