Skonfiguruj wstęp do bezpieczeństwa POD w Kubernetes

Skonfiguruj wstęp do bezpieczeństwa POD w Kubernetes
Podpisanie bezpieczeństwa Pod Kubernetes to funkcja, która zapewnia funkcje bezpieczeństwa na PODSUNEK w przestrzeni nazw. Standardy pozwalają nam nakładać ograniczenia dotyczące zachowania kapsułów po prostu i konsekwentnie. W tym przewodniku mamy już administrację bezpieczeństwa POD. Dowiemy się, jak skonfigurować bezpieczeństwo POD na POD działających w przestrzeni nazw za pomocą podstawowego scenariusza.

Co to jest wstęp do bezpieczeństwa Pod Kubernetes?

Aby egzekwować standardy bezpieczeństwa POD na strąkach działających w przestrzeni nazw, Kubernetes v1.22 ma wbudowany kontroler wstępu o nazwie POD Security Admission. Standardy te służą do ustawiania wyłączeń i domyślnych klastrów. Aby skonfigurować wstęp do bezpieczeństwa POD, musisz mieć minimum V1.22 Kubernetes i podsecur bezpieczeństwa włączono bramę. Wydanie alfa Kubernetes v1.22 ma zasady bezpieczeństwa POD (PSP), które zostały przestarzałe w Kubernetes v1.25. Teraz wzmocnienie zasady bezpieczeństwa POD (PSP) jest znane jako Podstawa Security Admission (PSA). W przeciwieństwie do zasad bezpieczeństwa POD, przyjęcie bezpieczeństwa POD nie obsługuje zasobów mutacji, jednak potwierdza kontroler przyjęcia.

Ponadto standardy bezpieczeństwa POD zdefiniowały trzy poziomy przyjęcia do bezpieczeństwa Podop: linia podstawowa, ograniczona i uprzywilejowana. Poziomy te są umieszczane w kontekście bezpieczeństwa kapsuły i różnych innych dziedzin przez przyjęcie do bezpieczeństwa POD. Po skonfigurowaniu trybu kontroli wstępnej dla bezpieczeństwa POD dla każdej przestrzeni nazw możesz ustawić przestrzeń nazw, aby określić ten tryb. Zestaw etykiet dostarczonych przez Kubernetes pozwala wybrać dowolny poziom standardowy Security dla przestrzeni nazw. Dowiedzmy się teraz, jak skonfigurować wstęp do zabezpieczeń POD za pomocą prostego przykładu.

Wymagania wstępne

Zanim przeprowadzisz się dalej, upewnij się, że masz zainstalowane te podstawowe narzędzia i włączone wymagane funkcje:

  • Ubuntu 22.04 lub inna najnowsza wersja
  • Kubernetes Cluster V1.22 z -feature -gates = „… .,Podsecurity = true ”Włączona flaga
  • Minikube klaster
  • Narzędzie wiersza poleceń kubectl

Po skonfigurowaniu tych narzędzi w swoim systemie możesz skonfigurować wstęp do bezpieczeństwa POD w Kubernetes. Przejście do sekcji implementacji, zakładając, że zainstalowałeś już wszystkie te warunki wstępne.

Jak skonfigurować wstęp do bezpieczeństwa POD?

Postępuj zgodnie z poniższymi krokami i łatwo skonfiguruj wstęp do zabezpieczeń POD w Kubernetes dla swojego systemu.

Krok # 1: Rozpocznij Kubernetes

Najpierw potrzebujemy uruchomienia klastra minikube. W tym celu będziemy używać poniższego polecenia, aby właściwie je uruchomić:

> Minikube start

To polecenie zapewnia, że ​​klaster minikube działał, dzięki czemu możesz zaimplementować swoje polecenie i uruchomić aplikacje w klastrze.

Krok # 2: Egzekwuj wstęp do bezpieczeństwa POD z wdrożeniem

Istnieją trzy poziomy określone według standardów bezpieczeństwa POD: linia bazowa, przywilej i ograniczony. Tutaj będziemy egzekwować wstęp do bezpieczeństwa POD na dwóch poziomach standardów bezpieczeństwa POD, uprzywilejowane i ograniczone.

Krok # 2 (a): Utwórz przestrzenie nazw dla PODS

Najpierw utworzymy dwie przestrzenie nazw. Pierwsza przestrzeń nazw zostanie utworzona z uprzywilejowaną zasadą przy użyciu polecenia podanego poniżej:

> kubectl tworzyć przestrzeń nazw Test-Priviviled

Druga przestrzeń nazw zostanie utworzona z zasadą ograniczoną, korzystając z polecenia podanego poniżej:

> kubectl tworzyć przestrzeń nazw ograniczoną do testu

Krok # 2 (b): Ustaw standardy bezpieczeństwa w przestrzeni nazw

Teraz musimy ustawić standardy bezpieczeństwa dla przestrzeni nazw, które stworzyliśmy w poprzednim kroku. Aby ustawić standard bezpieczeństwa dla uprzywilejowanych zasad, używamy polecenia podanego poniżej:

> Etykieta Kubectl-Overwrite NS Test-Priviviled POD-Security.Kubernetes.IO/EXFORCE = uprzywilejowany bezpieczeństwo pod.Kubernetes.IO/WARN = uprzywilejowany

Używamy poniższego polecenia, aby ustawić standard bezpieczeństwa dla ograniczonej zasady:

> Etykieta Kubectl-Overwrite NS z ograniczonym testem bezpieczeństwa.Kubernetes.IO/EXFORCE = Ograniczony bezpieczeństwo strąków.Kubernetes.IO/WARN = Ograniczony

Te standardy pozwalają przestrzeni nazw blokować dowolne działające podnośniki i wyśle ​​ostrzeżenie do użytkownika, jeśli jakikolwiek kapsuł. Teraz spróbujmy wdrożyć kapsuły na przestrzeni nazw, aby sprawdzić, jaki wynik otrzymamy.

Krok # 3: Wdrażaj kapsułki w przestrzeni nazw

Utworzono przestrzenie nazw i ustawiono na nich standardy bezpieczeństwa. Wdrażajmy więc kapsuły na tych przestrzeni nazw administrowanych bezpieczeństwem POD.

Krok # 3 (a): Próba wdrożenia PODS

Po pierwsze, wdrażamy kapsuły w uprzywilejowanej polityce, korzystając z polecenia podanego poniżej:

kalsoom@kalsoom-virtualbox> kubectl Apply --Namespace Test-priviled -f https: // raw.Githubusercontent.COM/Azure-Samples/Azure-Voting-App-Redis/Master/Azure-Vote-Wall-Wall-One-Redis.Yaml

Po drugie, używając poniższego polecenia, wdrażamy kapsułki w uprzywilejowanej polityce:

kalsoom@kalsoom-virtualbox> kubectl Apply --Namespace ograniczenie testu -f https: // surowe.Githubusercontent.COM/Azure-Samples/Azure-Voting-App-Redis/Master/Azure-Vote-Wall-Wall-One-Redis.Yaml

Kiedy próbowaliśmy wdrożyć kapsuły w ograniczonej polityce, wygenerowano ostrzeżenie, jak można zobaczyć. Ponieważ kapsuły naruszają skonfigurowane zasady, wygenerowano to ostrzeżenie. Nie ma ostrzeżenia o uprzywilejowanej polityce, ponieważ żaden POD nie naruszył skonfigurowanej zasady.

Krok # 3 (b): Sprawdź uruchamianie strąków w przestrzeni nazw

Teraz sprawdźmy, czy w przestrzeniach nazw jest jakaś kapsułka. Najpierw sprawdzimy uprzywilejowane zasady za pomocą następującego polecenia:

> kubectl get PODS -Namespace Test -priviged

Zauważ, że niektóre kapsuły działają w przestrzeni nazw. Nie było żadnych ostrzeżeń dla uprzywilejowanych zasad, co oznacza, że ​​niektóre strąki są uruchomione w przestrzeni nazw, które nie naruszają skonfigurowanej zasady. Teraz sprawdźmy, czy w ograniczonej przestrzeni nazw są uruchomione kapsuły z następującym poleceniem:

> kubectl get Pods -NameSpace Test -Testristed

W ograniczonej przestrzeni nazw nie ma kapsułki. Pamiętaj, że otrzymaliśmy ostrzeżenie, że niektóre kapsuły naruszyły skonfigurowane zasady w poprzednim kroku.

Krok # 4: Usuń przestrzeń nazw

Ostatnim krokiem jest usunięcie przestrzeni nazw, które stworzyliśmy. Użyj polecenia podanego poniżej, aby usunąć przestrzenie nazw:

> Kubectl usuń przestrzeń nazw z ograniczoną testem

To polecenie usunie obie przestrzenie nazw z klastra.

Wniosek

W tym artykule przedstawiliśmy wytyczne dotyczące wstępu do bezpieczeństwa Pod Kubernetes. Zbadaliśmy, czym jest wstęp do bezpieczeństwa Pod Kubernetes. Nauczyliśmy się również, jak skonfigurować wstęp do bezpieczeństwa Pod Kubernetes dla PODSING działający w przestrzeni nazw. Wykazując prosty scenariusz, pokazaliśmy, jak łatwo skonfigurować wstęp do bezpieczeństwa poddziału dla PODSUNEK w różnych przestrzeni nazw.