Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: ✔️ AKS Automatic AKS Standard ✔️
Podczas zarządzania klastrami w usłudze Azure Kubernetes Service (AKS) kluczowe znaczenie ma obciążenie i zabezpieczenia danych. W przypadku uruchamiania klastrów wielodostępnych przy użyciu izolacji logicznej należy szczególnie zabezpieczyć dostęp do zasobów i obciążeń. Zminimalizuj ryzyko ataku, stosując najnowsze aktualizacje zabezpieczeń platformy Kubernetes i węzła systemu operacyjnego.
W tym artykule opisano, jak zabezpieczyć klaster AKS. Dowiesz się, jak:
- Aby zabezpieczyć dostęp do serwera interfejsu API, użyj identyfikatora Microsoft Entra i kontroli dostępu opartej na rolach platformy Kubernetes (Kubernetes RBAC).
- Zabezpieczanie dostępu kontenera do zasobów węzłów.
- Uaktualnij klaster usługi AKS do najnowszej wersji rozwiązania Kubernetes.
- Aktualizuj węzły i automatycznie stosuj poprawki zabezpieczeń.
Możesz również zapoznać się z najlepszymi praktykami dotyczącymi zarządzania obrazami kontenerów oraz bezpieczeństwa zasobników.
Obowiązki dotyczące zabezpieczeń trybu klastra usługi AKS
Usługa AKS obsługuje dwa tryby klastra: AKS Automatic i AKS Standard. Cele zabezpieczeń są takie same w obu trybach, ale odpowiedzialność za implementację różni się.
Usługa AKS Automatic obejmuje utwardzony bazowy poziom zabezpieczeń z większą liczbą wstępnie skonfigurowanych mechanizmów kontroli w obsługiwanych konfiguracjach. Usługa AKS Standard zapewnia szerszą bezpośrednią kontrolę konfiguracji, co zwiększa odpowiedzialność operatora za konfigurację punktu odniesienia i bieżące operacje.
| Area | Automatyczne usługi AKS | AKS Standard |
|---|---|---|
| Uwierzytelnianie klastra i punkt odniesienia autoryzacji | Więcej wstępnie skonfigurowanych ustawień domyślnych w obsługiwanych konfiguracjach | Często konfigurowane jawnie przez operatory |
| Wzmacnianie zabezpieczeń sieci serwera interfejsu API | Więcej wstępnie skonfigurowanego zachowania punktu odniesienia w obsługiwanych konfiguracjach | Jawne opcje wzmacniania zabezpieczeń według operatorów |
| Zasady i podstawowe mechanizmy kontroli zabezpieczeń | Więcej wstępnie skonfigurowanych ustawień domyślnych w obsługiwanych konfiguracjach | Jawne aktywowanie zasad i wybór trybu |
| Kontrolki higieny obrazów | Kontrolki linii bazowej dostępne w obsługiwanych konfiguracjach | Jawne włączenie i odpowiedzialność za cykl życia |
| Operacje puli węzłów systemowych | Więcej zachowań zarządzanych przez usługę | Więcej zachowań zarządzanych przez operatorów |
| Podniesienie uprawnień właściciela | Więcej domyślnych ustawień zarządzanej aktualizacji | Strategia wybrana przez operatora i nadzór nad wdrożeniem |
Włączanie ochrony przed zagrożeniami
Wskazówki dotyczące najlepszych rozwiązań
Możesz włączyć usługę Defender for Containers , aby ułatwić zabezpieczanie kontenerów. Usługa Defender for Containers może oceniać konfiguracje klastra i udostępniać zalecenia dotyczące zabezpieczeń, uruchamiać skanowania luk w zabezpieczeniach oraz zapewniać ochronę i alerty w czasie rzeczywistym dla węzłów i klastrów Kubernetes.
Te wskazówki dotyczą obu trybów. Nawet jeśli usługa AKS Automatic zapewnia wstępnie skonfigurowane domyślne ustawienia zabezpieczeń, wdrażanie ochrony przed zagrożeniami i przepływy pracy związane z reagowaniem na alerty nadal należą do obowiązków operacyjnych Twojego zespołu.
Bezpieczny dostęp do serwera interfejsu API i węzłów klastra
Wskazówki dotyczące najlepszych rozwiązań
Jednym z najważniejszych sposobów zabezpieczenia klastra jest zabezpieczenie dostępu do serwera interfejsu API Kubernetes. Aby kontrolować dostęp do serwera API, zintegruj mechanizm RBAC platformy Kubernetes z Microsoft Entra ID. Dzięki tym kontrolkom zabezpieczasz usługę AKS w taki sam sposób, jak w przypadku zabezpieczania dostępu do subskrypcji platformy Azure.
Serwer interfejsu API Kubernetes udostępnia pojedynczy punkt połączenia dla żądań wykonywania akcji w klastrze. Aby zabezpieczyć i przeprowadzić inspekcję dostępu do serwera interfejsu API, ogranicz dostęp i zapewnij najniższe możliwe poziomy uprawnień. Chociaż takie podejście nie jest specyficzne wyłącznie dla Kubernetes, ma ono szczególne znaczenie, gdy klaster AKS został logicznie odizolowany na potrzeby środowiska wielodzierżawnego.
Microsoft Entra ID udostępnia rozwiązanie do zarządzania tożsamościami gotowymi do użycia w przedsiębiorstwie, które integruje się z klastrami usługi AKS. Ponieważ Kubernetes nie zapewnia rozwiązania do zarządzania tożsamością, precyzyjne ograniczenie dostępu do serwera API może być trudne. W przypadku klastrów zintegrowanych z Microsoft Entra w usłudze AKS używasz istniejących kont użytkowników i grup do uwierzytelniania użytkowników w serwerze API.
Korzystając z mechanizmu Kubernetes RBAC i integracji z usługą Microsoft Entra ID, można zabezpieczyć serwer interfejsu API i nadać minimalne uprawnienia wymagane dla określonego zakresu zasobów, na przykład pojedynczej przestrzeni nazw. Możesz przypisać różnym użytkownikom lub grupom Microsoft Entra różne role Kubernetes. Dzięki szczegółowym uprawnieniam można ograniczyć dostęp do serwera interfejsu API i zapewnić jasny dziennik inspekcji wykonanych akcji.
W usłudze AKS Automatic standardy bazowe autoryzacji i zabezpieczeń są w większym stopniu wstępnie skonfigurowane w obsługiwanych konfiguracjach, dzięki czemu operatorzy mogą skupić się na walidacji, nadzorze i obsłudze wyjątków. W usłudze AKS Standard operatorzy często konfigurują te mechanizmy kontroli bezpośrednio i samodzielnie zarządzają ich cyklem życia.
Aby uzyskać więcej informacji na temat integracji z Microsoft Entra, mechanizmów RBAC platform Kubernetes i Azure, zobacz Najlepsze rozwiązania w zakresie uwierzytelniania i autoryzacji w usłudze AKS.
Ogranicz dostęp do interfejsu API metadanych instancji
Wskazówki dotyczące najlepszych rozwiązań
Dodaj politykę sieciową we wszystkich przestrzeniach nazw użytkowników, aby zablokować ruch wychodzący z podów do punktu końcowego metadanych.
Uwaga
Aby zaimplementować zasady sieciowe, dołącz atrybut --network-policy azure podczas tworzenia klastra usługi AKS. Użyj następującego polecenia, aby utworzyć klaster: az aks create -g myResourceGroup -n myManagedCluster --network-plugin azure --network-policy azure --generate-ssh-keys
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: restrict-instance-metadata
spec:
podSelector:
matchLabels: {}
policyTypes:
- Egress
egress:
- to:
- ipBlock:
cidr: 10.10.0.0/0#example
except:
- 169.254.169.254/32
W usłudze AKS Standard upewnij się, że wybrany model sieciowy i aparat zasad obsługują tę ścieżkę zasad. W usłudze AKS Automatic zastosuj równoważne ograniczenia ruchu wychodzącego na poziomie przestrzeni nazw, jeśli są one obsługiwane w konfiguracji klastra.
Zabezpieczanie dostępu kontenera do zasobów
Wskazówki dotyczące najlepszych rozwiązań
Ogranicz dostęp do operacji, które mogą wykonywać kontenery. Podaj najmniejszą liczbę uprawnień i unikaj korzystania z dostępu głównego lub uprzywilejowanej eskalacji.
W taki sam sposób, jak należy przyznać użytkownikom lub grupom wymagane minimalne uprawnienia, należy również ograniczyć kontenery tylko do niezbędnych akcji i procesów. Aby zminimalizować ryzyko ataku, należy unikać konfigurowania aplikacji i kontenerów, które wymagają eskalowanych uprawnień lub dostępu głównego.
Korzystając z przestrzeni nazw użytkownika, można zwiększyć izolację hosta i ograniczyć ruch boczny w przypadku ucieczki z kontenera. Te ulepszenia są istotne niezależnie od tego, czy zasobnik działa z uprawnieniami roota, czy nie.
Aby uzyskać jeszcze bardziej szczegółową kontrolę nad akcjami kontenera, możesz również użyć wbudowanych funkcji zabezpieczeń systemu Linux, takich jak AppArmor i seccomp.
Nawet jeśli usługa AKS Automatic zapewnia domyślne zabezpieczenia, mechanizmy kontroli zabezpieczeń na poziomie obciążenia pozostają obowiązkami zespołu aplikacji i platformy.
Aby uzyskać więcej informacji, zobacz Bezpieczny dostęp kontenera do zasobów.
Regularnie aktualizuj do najnowszej wersji rozwiązania Kubernetes
Wskazówki dotyczące najlepszych rozwiązań
Aby być na bieżąco z nowymi funkcjami i poprawkami błędów, regularnie uaktualnij wersję rozwiązania Kubernetes w klastrze usługi AKS.
Platforma Kubernetes udostępnia nowe funkcje w szybszym tempie niż w przypadku bardziej tradycyjnych platform infrastruktury. Aktualizacje platformy Kubernetes obejmują:
- Nowe funkcje
- Poprawki błędów lub zabezpieczeń
Nowe funkcje zwykle przechodzą przez stan alfa i beta , zanim staną się stabilne. Gdy jest stabilna, są ogólnie dostępne i zalecane do użytku produkcyjnego. Cykl wydań nowych funkcji w Kubernetes umożliwia aktualizowanie Kubernetes bez konieczności regularnego napotykania niekompatybilnych zmian ani dostosowywania wdrożeń i szablonów.
Usługa AKS obsługuje trzy wersje pomocnicze platformy Kubernetes. Po wprowadzeniu nowej wersji poprawki pomocniczej najstarsza obsługiwana wersja pomocnicza i wersje poprawek zostaną wycofane. Aktualizacje pomocnicze platformy Kubernetes są wykonywane okresowo. Aby zachować wsparcie, upewnij się, że masz proces nadzoru pozwalający weryfikować konieczne aktualizacje. Aby uzyskać więcej informacji, zobacz Obsługiwane wersje platformy Kubernetes w usłudze AKS.
W usłudze AKS Automatic mechanizmy związane z aktualizacją są w większym stopniu wstępnie skonfigurowane w obsługiwanych konfiguracjach, a operatorzy powinni skupić się na weryfikacji gotowości obciążeń i nadzorze nad wydaniami. W usłudze AKS Standard operatorzy wybierają strategię uaktualniania i czas wdrażania oraz zarządzają nimi bezpośrednio.
Aby sprawdzić wersje dostępne dla klastra, użyj az aks get-upgrades polecenia , jak pokazano w poniższym przykładzie:
az aks get-upgrades --resource-group myResourceGroup --name myAKSCluster --output table
Następnie możesz zaktualizować klaster AKS za pomocą polecenia az aks upgrade. Bezpieczny proces aktualizacji:
- Cordony i opróżniają jeden węzeł naraz.
- Przypisuje pody do pozostałych węzłów.
- Wdraża nowy węzeł z najnowszymi wersjami systemu operacyjnego i platformy Kubernetes.
Ważne
Przetestuj nowe wersje pomocnicze w środowisku testowym deweloperskim i sprawdź, czy obciążenie pozostaje w dobrej kondycji przy użyciu nowej wersji platformy Kubernetes.
Kubernetes może wycofywać interfejsy API (na przykład w wersji 1.16), od których zależą Twoje obciążenia robocze. W przypadku wprowadzenia nowych wersji do środowiska produkcyjnego rozważ użycie wielu pul węzłów w osobnych wersjach i uaktualnienie poszczególnych pul pojedynczo, aby stopniowo wdrażać aktualizację w klastrze. W przypadku uruchamiania wielu klastrów uaktualnij jeden klaster jednocześnie, aby stopniowo monitorować wpływ lub zmiany.
Aby uzyskać więcej informacji na temat uaktualnień w usłudze AKS, zobacz Obsługiwane wersje rozwiązania Kubernetes w usłudze AKS i Uaktualnianie klastra usługi AKS.
Przetwarzanie aktualizacji węzła systemu Linux
Każdego wieczoru węzły systemu Linux w usłudze AKS uzyskują poprawki zabezpieczeń za pośrednictwem kanału aktualizacji dystrybucji. To zachowanie jest konfigurowane automatycznie podczas wdrażania węzłów w klastrze AKS. Aby zminimalizować zakłócenia i potencjalny wpływ na uruchamianie obciążeń, węzły nie są automatycznie uruchamiane, jeśli wymagana jest poprawka zabezpieczeń lub aktualizacja jądra. Aby uzyskać więcej informacji na temat obsługi ponownych rozruchów węzłów, zobacz Stosowanie aktualizacji zabezpieczeń i jądra do węzłów w usłudze AKS.
W usłudze AKS Automatic sposób aktualizacji węzłów jest w większym stopniu wstępnie skonfigurowany w obsługiwanych konfiguracjach. W AKS Standard operatorzy często definiują zasady zarządzania aktualizacjami i ponownym uruchamianiem za pomocą jasno określonych mechanizmów kontroli operacyjnej.
Aktualizacje obrazu węzła
Nienadzorowane aktualizacje instalują aktualizacje systemu operacyjnego Linux na węźle, ale obraz używany do tworzenia węzłów w klastrze pozostaje niezmieniony. Jeśli nowy węzeł systemu Linux zostanie dodany do klastra, oryginalny obraz zostanie użyty do utworzenia węzła. Ten nowy węzeł będzie otrzymywać wszystkie aktualizacje zabezpieczeń i jądra dostępne podczas nocnego automatycznego sprawdzania, ale pozostanie bez zainstalowanych poprawek do momentu zakończenia wszystkich sprawdzeń i ponownych uruchomień. Możesz użyć uaktualnienia obrazu węzła, aby sprawdzić i zaktualizować obrazy węzłów używane przez klaster. Aby uzyskać więcej informacji na temat uaktualniania obrazu węzła, zobacz Uaktualnianie obrazu węzła usługi Azure Kubernetes Service (AKS).
Przetwarzanie aktualizacji węzłów systemu Windows Server
W przypadku węzłów systemu Windows Server regularnie przeprowadzaj operację uaktualniania obrazu węzła, aby bezpiecznie kordonować i opróżniać zasobniki oraz wdrażać zaktualizowane węzły.
Treści powiązane
Aby uzyskać więcej informacji na temat usługi AKS i zabezpieczania klastra usługi AKS, zobacz następujące artykuły: