MindPointGroup.kubernetes_stig
Kubernetes DISA STIG
Skonfiguruj system Kubernetes, aby był zgodny z DISA STIG.
Oparte na Wersji 1, Rel 8 DISA STIG dla Kubernetes, wydanej 26 stycznia 2023
Szukasz wsparcia?
Społeczność
Dołącz do nas na naszym serwerze Discord aby zadawać pytania, omawiać funkcje lub po prostu porozmawiać z innymi użytkownikami Ansible-Lockdown.
Ostrzeżenie
Zastosowanie tej roli wprowadzi zmiany w systemie, które mogą mieć niezamierzone skutki. To nie jest narzędzie audytowe, lecz narzędzie do usuwania problemów, które powinno być używane po przeprowadzeniu audytu.
Tryb sprawdzania nie jest obsługiwany! Rola zakończy działanie w trybie sprawdzania bez błędów, ale nie jest to wspierane i powinno być używane z ostrożnością.
Ta rola została opracowana dla świeżo zainstalowanego systemu Kubernetes. Jeśli wdrażasz ją w istniejącym systemie, proszę przeglądaj tę rolę pod kątem ewentualnych lokalnych zmian.
Aby użyć wersji wydania, wskaź na główną gałąź i odpowiednie wydanie dla benchmarku STIG, z którym chcesz pracować.
Dopasowanie poziomu bezpieczeństwa dla STIG
Możliwe jest uruchomienie tylko tych kontroli, które opierają się na danym poziomie bezpieczeństwa dla STIG. To jest zarządzane za pomocą tagów:
- CAT1
- CAT2
- CAT3
Kontrola w domyślnych ustawieniach również musi odzwierciedlać prawdę, aby te kontrole mogły być uruchamiane podczas uruchamiania playbooka.
Przechodzenie z poprzedniego wydania
Wydania STIG zawsze zawierają zmiany, dlatego zaleca się przegląd nowymi odniesieniami oraz dostępnymi zmiennymi. To zmieniło się znacznie od początkowego wydania ansible-lockdown. Teraz jest kompatybilne z python3, jeśli jest to domyślny interpreter. Wymaga to spełnienia określonych wymagań, które konfigurują system odpowiednio.
Szczegóły można znaleźć w Dzienniku zmian.
Audyt (nowe)
Obecnie ta wersja nie ma narzędzia audytowego.
Dokumentacja
- Przeczytaj dokumentację
- Jak zacząć
- Dostosowywanie ról
- Konfiguracja dla każdego hosta
- Jak najlepiej wykorzystać rolę
Wymagania
Ogólne:
Podstawowa wiedza o Ansible, poniżej znajdziesz linki do dokumentacji Ansible, które pomogą, jeśli nie jesteś zaznajomiony z Ansible.
Funkcjonujący Ansible i/lub Tower zainstalowane, skonfigurowane i uruchomione. Obejmuje to wszystkie podstawowe konfiguracje Ansible/Tower, potrzebne pakiety oraz ustawienia infrastruktury.
Proszę przeczytać zadania w tej roli, aby zrozumieć, co robi każda kontrola. Niektóre zadania mogą być zakłócające i mogą mieć niezamierzone konsekwencje w działającym systemie produkcyjnym. Zapoznaj się także z zmiennymi w pliku defaults/main.yml.
Zależności techniczne:
- Kubernetes 1.16.7 lub wyższy - inne wersje nie są obsługiwane.
- Działający zestaw Ansible/Tower (ta rola była testowana z wersją Ansible 2.9.1 i nowszymi)
- Środowisko uruchomieniowe Ansible dla Python3
- python-def (powinno być dołączone w RHEL/CentOS 7) - Pierwsze zadanie ustawia wymagania wstępne (Tag wymagane) dla python3 i python2 (gdzie to konieczne)
- libselinux-python
- python3-rpm (pakiet używany przez py3 do korzystania z pakietu rpm)
Zmienne roli
Ta rola została zaprojektowana tak, aby użytkownik końcowy nie musiał edytować samych zadań. Wszystkie dostosowania powinny być dokonywane za pomocą pliku defaults/main.yml lub za pomocą dodatkowych zmiennych w projekcie, zadaniu, przepływie pracy itp.
Tagi
Dostępnych jest wiele tagów dla większej precyzji kontroli. Każda kontrola ma własny zestaw tagów oznaczających poziom, czy jest oceniana, do jakiego elementu systemu operacyjnego się odnosi, czy jest poprawką, czy audytem oraz numer zasady.
Poniżej znajduje się przykład sekcji tagów z kontroli w tej roli. Używając tego przykładu, jeśli ustawisz działanie na pominięcie wszystkich kontroli z tagiem 'kernel', to zadanie to zostanie pominięte. Może się też zdarzyć, że uruchomisz tylko kontrole oznaczone tagiem 'kernel'.
tags:
- CNTR-K8-001620
- CAT1
- CCI-001084
- SRG-APP-000233-CTR-000585
- SV-242434r864009_rule
- V-242434
- kubelet
- kernel
Wkład społeczności
Zachęcamy Cię (społeczność) do wniesienia wkładu w tę rolę. Proszę przeczytać poniższe zasady.
- Twoja praca jest wykonywana w Twojej własnej indywidualnej gałęzi. Upewnij się, że wszystkie commity, które zamierzasz połączyć, są podpisane i opatrzone podpisem GPG.
- Wszystkie zgłoszenia pull od społeczności są wciągane do gałęzi rozwojowej.
- Zgłoszenia pull do rozwoju potwierdzą, że Twoje commity mają podpis GPG, są podpisane oraz przechodzą testy funkcjonalne przed zatwierdzeniem.
- Gdy Twoje zmiany zostaną połączone i szczegółowa recenzja zostanie zakończona, autoryzowany członek połączy Twoje zmiany do głównej gałęzi na nową wersję.
Testy w pipeline
Używa:
- ansible-core 2.12
- zbiory Ansible - pobiera najnowszą wersję w oparciu o plik wymagań
- przeprowadza audyt używając gałęzi rozwojowej
- Jest to zautomatyzowany test, który ma miejsce w przypadku zgłoszeń pull do gałęzi rozwojowej
Ansible role to apply Kubernetes STIG benchmark
ansible-galaxy install MindPointGroup.kubernetes_stig