Udostępnij za pośrednictwem


Przegląd zabezpieczeń serwerów obsługiwanych przez Azure Arc

Ten artykuł opisuje zagadnienia związane z bezpieczeństwem oraz mechanizmy kontrolne dostępne podczas korzystania z serwerów z włączoną usługą Azure Arc. Niezależnie od tego, czy jesteś specjalistą ds. zabezpieczeń, czy operatorem IT, informacje zawarte w tym artykule umożliwiają pewnie skonfigurowanie usługi Azure Arc w sposób spełniający wymagania dotyczące zabezpieczeń organizacji.

Obowiązki

Bezpieczeństwo wdrożenia serwerów z usługą Azure Arc to wspólna odpowiedzialność między tobą a firmą Microsoft. Microsoft jest odpowiedzialny za:

  • Zabezpieczenie usługi chmurowej, która przechowuje metadane systemowe i zarządza operacjami dla agentów, które podłączasz do usługi.
  • Zabezpieczanie i ochrona prywatności metadanych systemowych przechowywanych w Azure.
  • Dokumentowanie opcjonalnych funkcji zabezpieczeń, aby zrozumieć korzyści i wady różnych opcji wdrożenia.
  • Regularne publikowanie aktualizacji agenta z ulepszeniami w zakresie bezpieczeństwa, jakości, wydajności i funkcji.

Jesteś odpowiedzialny za: / Jesteś odpowiedzialna za:

  • Zarządzanie i monitorowanie dostępu RBAC do zasobów z włączoną usługą Azure Arc w subskrypcji Azure.
  • Ochrona i regularna rotacja danych uwierzytelniających dla każdego konta używanego do zarządzania serwerami z włączonym Azure Arc. To obejmuje wszelkie tajne informacje lub poświadczenia głównych usług używane do wprowadzania nowych serwerów.
  • Określenie, czy i w jaki sposób jakiekolwiek funkcje zabezpieczeń opisane w tym dokumencie (na przykład listy dozwolonych rozszerzeń) powinny być zastosowane do agentów Azure Connected Machine, które wdrażasz.
  • Utrzymanie agenta i rozszerzeń Azure Connected Machine w stanie aktualnym.
  • Określenie zgodności Azure Arc z prawnymi, regulacyjnymi i wewnętrznymi zobowiązaniami polityki Twojej organizacji.
  • Zabezpieczenie samego serwera, w tym infrastruktury obliczeniowej, pamięci masowej i sieciowej wykorzystywanej do obsługi serwera.

Przegląd architektury

Serwery z obsługą Azure Arc to usługa oparta na agencie. Twoja interakcja z usługą Azure Arc odbywa się przede wszystkim poprzez interfejsy API, portal oraz funkcje zarządzania Azure. Dane, które widzisz, oraz działania, które podejmujesz w Azure, są przekazywane za pośrednictwem agenta Azure Connected Machine zainstalowanego na każdym zarządzanym serwerze. Azure jest źródłem prawdy dla agenta. Jedynym sposobem poinformowania agenta o podjęciu działania (na przykład zainstalowaniu rozszerzenia) jest wykonanie czynności na reprezentacji serwera w Azure. To pomaga w zapewnieniu, że przypisania RBAC i polityk w Twojej organizacji mogą ocenić żądanie, zanim zostaną wprowadzone jakiekolwiek zmiany.

Agent Azure Connected Machine jest przede wszystkim platformą umożliwiającą integrację innych usług Azure oraz usług firm trzecich. Jego podstawowe funkcjonalności obejmują:

  • Ustanawianie powiązania między maszyną a subskrypcją Azure
  • Zapewnienie zarządzanej tożsamości dla agenta i innych aplikacji do użycia przy uwierzytelnianiu w Azure.
  • Umożliwianie innych funkcji (agenci, skrypty) za pomocą rozszerzeń
  • Ocena i egzekwowanie ustawień na serwerze

Po zainstalowaniu agenta Azure Connected Machine możesz aktywować inne usługi Azure na swoim serwerze, aby spełniać potrzeby w zakresie monitorowania, zarządzania poprawkami, zdalnego dostępu lub inne. Rola Azure Arc polega na wspieraniu działania tych usług poza własnymi centrami danych Azure.

Możesz użyć Azure Policy, aby ograniczyć działania użytkowników w Twojej organizacji względem Azure Arc. Ograniczenia oparte na chmurze, takie jak Azure Policy, to doskonały sposób na zastosowanie zabezpieczeń na dużą skalę, zachowując jednocześnie elastyczność do wprowadzania zmian w tych ograniczeniach w dowolnym momencie. Jednak czasami potrzebujesz jeszcze silniejszych kontroli, aby chronić przed nadużyciami związanymi z użyciem konta o odpowiednich uprawnieniach, które mogą omijać środki bezpieczeństwa (na przykład dezaktywacja polityk). Aby uwzględnić to, agent Azure Connected Machine ma również własne mechanizmy bezpieczeństwa, które mają priorytet nad wszelkimi ograniczeniami ustawionymi w chmurze.

Diagram architektury opisujący, jak działa agent Azure Connected Machine.

Aby pobrać diagramy architektury w wysokiej rozdzielczości, odwiedź stronę Jumpstart Gems.

Usługi agenta

Agent Azure Connected Machine to połączenie czterech usług/demonów, które działają na Twoim serwerze i pomagają połączyć go z Azure. Są instalowane razem jako jedna aplikacja i zarządzane centralnie za pomocą interfejsu wiersza poleceń azcmagent.

Usługa metadanych wystąpienia hybrydowego

Usługa Hybrid Instance Metadata Service (HIMDS) jest „rdzenną” usługą w agencie i odpowiada za rejestrację serwera w Azure, ciągłą synchronizację metadanych (sygnały kontrolne), operacje związane z zarządzaną tożsamością oraz hostowanie lokalnego interfejsu API REST, który inne aplikacje mogą zapytać, aby uzyskać informacje o połączeniu urządzenia z Azure. Usługa ta jest nieuprzywilejowana i działa jako konto wirtualne (NT SERVICE\himds z SID S-1-5-80-4215458991-2034252225-2287069555-1155419622-2701885083) w systemie Windows lub jako standardowe konto użytkownika (himds) w systemach operacyjnych Linux.

Menedżer rozszerzeń

Menedżer rozszerzeń jest odpowiedzialny za instalowanie, konfigurowanie, aktualizowanie i usuwanie dodatkowego oprogramowania na Twoim komputerze. Domyślnie Azure Arc nie potrafi monitorować ani naprawiać twojej maszyny. Zamiast tego, gdy zdecydujesz się użyć tych funkcji, menedżer rozszerzeń pobiera i włącza te możliwości. Menedżer rozszerzeń działa jako Local System w systemie Windows i jako root w systemie Linux, ponieważ oprogramowanie, które instaluje, może wymagać pełnego dostępu do systemu. Możesz ograniczyć, które rozszerzenia mogą być instalowane przez menedżera rozszerzeń lub całkowicie go wyłączyć, jeśli nie zamierzasz używać rozszerzeń.

Konfiguracja gościa

Usługa konfiguracji gościa ocenia i egzekwuje zasady konfiguracji maszyny Azure (gościa) na Twoim serwerze. Są to specjalne polityki Azure, napisane w PowerShell Desired State Configuration, które sprawdzają ustawienia oprogramowania na serwerze. Usługa konfiguracji gościa regularnie ocenia i raportuje zgodność z tymi zasadami, a jeśli zasada jest skonfigurowana w trybie wymuszania, zmieni ustawienia na Twoim systemie, aby przywrócić maszynę do zgodności, jeśli to konieczne. Usługa konfiguracji gościa działa jako Local System w Windows i jako root w Linux, aby zapewnić dostęp do wszystkich ustawień w twoim systemie. Możesz wyłączyć funkcję konfiguracji gości, jeśli nie zamierzasz używać polityk konfiguracji gości.

Usługa proxy Azure Arc

Usługa proxy Azure Arc jest odpowiedzialna za agregację ruchu sieciowego z usług agenta Azure Connected Machine oraz wszelkich zainstalowanych rozszerzeń, a także decydowanie, gdzie kierować te dane. Jeśli używasz usługi Azure Arc Gateway do uproszczenia punktów końcowych sieci, usługa serwera proxy usługi Azure Arc jest składnikiem lokalnym, który przekazuje żądania sieciowe za pośrednictwem bramy usługi Azure Arc Gateway zamiast trasy domyślnej. Serwer proxy usługi Azure Arc działa jako usługa Systemowa w systemie Windows i na koncie użytkownika standardowego (arcproxy) w systemie Linux. Domyślnie jest to wyłączone, dopóki nie skonfigurujesz agenta do korzystania z bramy Azure Arc.

Zagadnienia dotyczące bezpieczeństwa zasobów poziomu 0

Assets Tier 0, takie jak kontroler domeny Active Directory, serwer urzędu certyfikacji lub serwer aplikacji biznesowej o wysokiej wrażliwości, można podłączyć do Azure Arc z zachowaniem szczególnej ostrożności, aby zapewnić, że tylko pożądane funkcje zarządzania i autoryzowani użytkownicy mogą zarządzać serwerami. Te zalecenia nie są wymagane, ale są zdecydowanie zalecane, aby utrzymać poziom bezpieczeństwa twoich zasobów Tier 0.

Dedykowana subskrypcja Azure

Dostęp do serwerów z obsługą Azure Arc jest często określany przez hierarchię organizacyjną, do której należy w Azure. Każdego administratora subskrypcji lub grupy zarządzania należy traktować jako równoważnego lokalnemu administratorowi zasobów w Tier 0, ponieważ mogą oni użyć swoich uprawnień do dodawania nowych przypisań ról do zasobów Azure Arc. Dodatkowo, polityki zastosowane na poziomie subskrypcji lub grupy zarządzania mogą również mieć uprawnienia do dokonywania zmian na serwerze.

Aby zminimalizować liczbę kont i zasad mających dostęp do zasobów poziomu 0, warto rozważyć użycie dedykowanej subskrypcji Azure, którą można dokładnie monitorować i skonfigurować z możliwie najmniejszą liczbą stałych administratorów. Przejrzyj zasady Azure w dowolnych nadrzędnych grupach zarządzania, aby upewnić się, że są one zgodne z Twoimi zamiarami dotyczącymi tych serwerów.

Wyłącz niepotrzebne funkcje zarządzania

W przypadku zasobu warstwy 0 należy użyć mechanizmów kontroli zabezpieczeń agenta lokalnego, aby ograniczyć lub wyłączyć wszelkie nieużywane funkcje agenta, aby zapobiec zamierzonemu lub przypadkowemu użyciu tych funkcji w celu wprowadzenia zmian na serwerze. To obejmuje:

  • Wyłączanie możliwości zdalnego dostępu
  • Ustawienie białej listy rozszerzeń dla rozszerzeń, które zamierzasz używać, lub wyłączenie menedżera rozszerzeń, jeśli nie korzystasz z rozszerzeń.
  • Wyłączanie agenta konfiguracji maszyny, jeśli nie zamierzasz używać zasad konfiguracji maszyny.

Na przykład, chyba że zamierzasz użyć niestandardowego rozszerzenia skryptu do zdalnego wykonywania kodu, najlepiej wyłączyć jego użycie, ponieważ może być ono używane przez osoby atakujące do zdalnego wykonywania poleceń w celu umieszczania złośliwego oprogramowania lub innego złośliwego kodu na maszynie wirtualnej. Możesz użyć mechanizmu listy dozwolonych, aby wyłączyć użycie niestandardowego rozszerzenia skryptu, jeśli jego użycie nie spełnia wymagań dotyczących zabezpieczeń.

Poniższy przykład pokazuje, jak zablokować agenta Azure Connected Machine dla kontrolera domeny, który musi użyć Azure Monitor Agent do zbierania dzienników zabezpieczeń dla Microsoft Sentinel i Microsoft Defender for Servers, aby chronić przed zagrożeniami malware.

azcmagent config set incomingconnections.enabled false

azcmagent config set guestconfiguration.enabled false

azcmagent config set extensions.allowlist “Microsoft.Azure.Monitor/AzureMonitorWindowsAgent,Microsoft.Azure.AzureDefenderForServers/MDE.Windows”