Zagadnienia dotyczące zabezpieczeń oprogramowania Red Hat Enterprise Linux na platformie Azure
W tym artykule opisano zagadnienia i zalecenia dotyczące implementowania zabezpieczeń w środowisku systemu Red Hat Enterprise Linux (RHEL). Aby zapewnić bezpieczeństwo systemów RHEL, należy użyć podejścia przeznaczonego dla wielu obszarów. Zabezpieczenia wymagają, aby wszystkie zespoły współpracowały ze sobą w celu zabezpieczenia obciążeń. Wdrażane produkty lub platformy nie mogą zapewnić wyłącznie bezpieczeństwa środowiska.
Implementowanie i stosowanie się do rygorystycznego procesu obejmującego składniki behawioralne, administracyjne i inżynieryjne. Podczas wdrażania systemu RHEL w strefie docelowej platformy Azure należy ocenić kilka czynników zabezpieczeń. Aby utworzyć bezpieczne i odporne środowisko chmury, zaimplementuj strategiczne podejście, które stosuje zarówno mechanizmy zabezpieczeń platformy Azure, jak i oprogramowania Red Hat.
Uwagi dotyczące projektowania
Aby zapewnić bezpieczeństwo systemów RHEL, na platformie Azure lub w innym miejscu, upewnij się, że rozpoczynasz od zweryfikowanej i zweryfikowanej zawartości. W nowoczesnych środowiskach chmury pliki binarne i kod mogą pochodzić z wielu różnych źródeł. Jako pierwsze zagadnienie dotyczące wdrożenia należy zabezpieczyć łańcuch dostaw oprogramowania.
Wzmacnianie zabezpieczeń obrazów
Obrazy można znaleźć w witrynie Azure Marketplace i w sekcjach ofert produktów prywatnych, w których red hat lub Red Hat Limited w regionach Europa, Bliski Wschód i Afryka (EMEA) publikuje rekord. Red Hat i Microsoft weryfikują i weryfikują te obrazy, aby zapewnić integralność źródła i zapewnić bezpieczne domyślne konfiguracje wystąpień systemu operacyjnego RHEL.
Aby spełnić wymagania dotyczące zabezpieczeń środowiska uruchomieniowego organizacji dla obciążenia docelowego, należy prawidłowo skonfigurować wystąpienia utworzone na podstawie tych obrazów. Aby usprawnić środki bezpieczeństwa, użyj usługi Red Hat opublikowanych obrazów z witryny Azure Marketplace, aby wdrożyć systemy RHEL. Postępuj zgodnie ze wskazówkami dotyczącymi systemu i obrazu dla obciążenia zgodnie ze wskazówkami dotyczącymi systemu i obrazu. Aby zmniejszyć obszar ataków, zacznij od minimalnej, zoptymalizowanej pod kątem platformy Azure obrazu RHEL. Nie musisz tworzyć i konfigurować wszystkich wystąpień na podstawie tego obrazu podstawowego. Aby spełnić różne wymagania dotyczące wzmacniania zabezpieczeń, zalecamy używanie składników do kompilowania obrazów specyficznych dla obciążenia.
Możesz również użyć rozwiązań GitOps do tworzenia potoków obrazów. Takie podejście jest lepszą metodologią. Te potoki nakładają składniki komponowalne, zdefiniowane jako kod konfiguracji, na obraz początkowy w celu utworzenia obrazów obciążeń.
Aby efektywnie korzystać z obrazów, należy zaimplementować następujące zagadnienia:
Utwórz obraz podstawowy ze wzmocnionymi zabezpieczeniami, który jest zgodny z modelem najmniejszych uprawnień , aby zapewnić solidną podstawę.
Konfiguracja oprogramowania warstwowego i zabezpieczeń w celu promowania ponownego użycia i przestrzegania standardowego środowiska operacyjnego oraz najlepszych rozwiązań devSecOps.
Użyj modeli kompozycji dla obrazów, aby zmniejszyć nakład pracy w zakresie testowania i kwalifikacji oraz zmniejszyć koszty konserwacji.
Używaj modeli kompozycji, aby zwiększyć elastyczność i przyspieszyć czas dostarczania nowych obciążeń.
Automatyzowanie procesu kompilowania, testowania i dostarczania obrazów dla modelu.
Aktualizowanie obrazów
Należy również regularnie aktualizować obrazy. Wystąpienia efemeryczne prawdopodobnie mają bardziej aktualny obraz, ponieważ zazwyczaj wdraża się je z bieżącego obrazu. Należy jednak regularnie aktualizować dłuższe wystąpienia przy użyciu centralnego systemu stosowania poprawek. Ten krok ułatwia badanie stanu poprawek systemów w danym środowisku. W przypadku zminimalizowania zmienności wdrożenia szum monitorowania jest zmniejszany i można dokładniej identyfikować anomalie. Takie podejście zwiększa współczynnik powodzenia zautomatyzowanych działań związanych z wykrywaniem i korygowaniem.
Aby zachować ścisłą kontrolę dostępu, rozważ zaimplementowanie scentralizowanego systemu. Wiele projektów open source i komercyjnych aplikacji poza półki udostępnia proste przykłady wdrożenia, które używają kont lokalnych lub lokalnie wdrożonych kluczy publicznych. Te przykłady mogą zapewnić bezpieczną konfigurację, ale wraz z rozszerzeniem śladu chmury nakład pracy w celu utrzymania zlokalizowanej konfiguracji, nawet w przypadku automatyzacji, może stać się problematyczny. Obciążenie automatyzacji zwiększa się liniowo przy każdym wystąpieniu, ale rejestrowanie zabezpieczeń i monitorowanie obciążenia mogą eskalować w tempie wykładniczym. Te zmiany generują nadmierne obciążenie zasobów obliczeniowych, magazynowych i analitycznych. Scentralizowana kontrola dostępu zmniejsza punkty konfiguracji, co zmniejsza obciążenie automatyzacji i rejestrowania, minimalizuje zmiany i upraszcza inspekcję przy zachowaniu ścisłej kontroli dostępu do zasobów.
W obszarach, w których obciążenie wymaga zgodności ze standardami kryptograficznymi i punktami odniesienia zgodności, rozważ użycie zintegrowanych możliwości platformy, które obsługują otwarte standardy, aby zapewnić zgodność z obciążeniami w chmurze. Firma Red Hat i Microsoft przestrzegają globalnych organów standardów i uczestniczą w nich oraz zapewniają odpowiednie narzędzia. Na przykład wiele plików konfiguracji w pojedynczym wystąpieniu ma kryptograficzną konfigurację szyfrowania dla usług systemowych i aplikacji. Wariancja może łatwo występować w systemach w ramach obciążenia docelowego i floty. Aby zdefiniować miary zgodności, rozważ użycie otwartych standardów. Zarówno narzędzia Red Hat, jak i microsoft używają standardowych formatów plików, aby zapewnić najnowsze dane dotyczące luk w zabezpieczeniach i konfiguracji. Firma Red Hat udostępnia aktualne źródła danych open vulnerability and Assessment Language (OVAL) od zespołu ds. zabezpieczeń produktów Red Hat dla składników platformy Red Hat.
Platforma Azure oferuje unikatowe możliwości korzystania z funkcji specyficznych dla chmury i zapewnia najlepsze rozwiązania dotyczące zabezpieczeń i zgodności. Funkcje zabezpieczeń i usługi w infrastrukturze platformy Azure obejmują:
Zaufane uruchamianie maszyn wirtualnych: bezpieczny system BIOS i konfiguracja wystąpienia. Możesz użyć zaufanego uruchamiania dla maszyn wirtualnych, aby zabezpieczyć proces uruchamiania, co gwarantuje, że maszyny wirtualne będą uruchamiane przy użyciu zweryfikowanego kodu.
Szyfrowanie dysków platformy Azure w usłudze Azure Key Vault: szyfrowanie danych magazynowanych. Aby zabezpieczyć dane magazynowane, użyj usługi Azure Disk Encryption w usłudze Key Vault do zarządzania kluczami szyfrowania i wpisami tajnymi. Usługa Key Vault obsługuje dwa typy kontenerów: magazyny i zarządzane pule modułów zabezpieczeń sprzętu (HSM). W magazynach można przechowywać oprogramowanie, klucze oparte na module HSM, wpisy tajne i certyfikaty.
Microsoft Defender dla Chmury: Upewnij się, że scentralizowana inspekcja systemu. Defender dla Chmury może zapewnić scentralizowany widok na potrzeby ujednoliconego zarządzania zabezpieczeniami i ochrony przed zagrożeniami.
Zalecenia dotyczące projektowania
Podczas projektowania środowisk RHEL na platformie Azure skorzystaj z natywnych funkcji zabezpieczeń oprogramowania Red Hat i funkcji zabezpieczeń w chmurze platformy Azure, aby zapewnić niezawodne, bezpieczne i wydajne wdrożenie. Zacznij od obrazu, który wzmacniasz i kompilujesz przy użyciu znanych zweryfikowanych plików binarnych. Obrazy systemu RHEL w witrynie Azure Marketplace są usprawnione pod kątem wydajności i zabezpieczeń chmury. Jeśli masz określone wymagania dotyczące zabezpieczeń dla swojej firmy, zacznij od własnego dostosowanego, wzmocnionego obrazu utworzonego na podstawie plików binarnych ze źródłami Red Hat. Aplikacja Red Hat Satellite może obsługiwać oprogramowanie Red Hat, microsoft i kod partnera oraz zarządzać nim lub niestandardowym kodem aplikacji. Satelita może zweryfikować kod za pomocą poświadczeń i podpisów zawartości zarządzanej. System RHEL weryfikuje spójność i autentyczność oprogramowania ze źródła do dysku.
Gdy używasz narzędzi do zarządzania platformą Azure i red hat do tworzenia zautomatyzowanych przepływów pracy, firma Red Hat zaleca używanie certyfikowanych kolekcji platformy Ansible Automation.
Upewnij się, że przepływy pracy:
- Generowanie, obsługa i testowanie obrazów punktów odniesienia i obciążeń.
- Testowanie i wdrażanie wystąpień efemerycznych.
- Testowanie cyklu poprawek i dostarczanie trwałych wystąpień maszyn wirtualnych.
- Użyj potoków automatyzacji. Potoki automatyzacji znacznie zmniejszają nakład pracy związanych z zarządzaniem, zapewniają spójne wymuszanie zasad, poprawiają wykrywanie anomalii i przyspieszają korygowanie w strefach docelowych RHEL.
Rozważ również użycie galerii zasobów obliczeniowych platformy Azure. Możesz utworzyć obraz red hat ze wszystkimi wymaganymi mechanizmami zabezpieczeń używanymi w organizacji i utworzyć obraz tej maszyny wirtualnej. Następnie możesz udostępniać obrazy zgodne z zabezpieczeniami w subskrypcjach i regionach w środowisku platformy Azure. Możesz również użyć przechowywania wersji, aby uzyskać większą szczegółową kontrolę nad obrazami maszyn wirtualnych. Takie podejście ułatwia ujednolicenie poprawek zabezpieczeń wystąpienia obliczeniowego i narzędzi używanych w danym środowisku.
Rozważ wdrożenie usługi Azure Update Manager w ramach procesu zarządzania aktualizacjami. Update Manager to ujednolicona usługa, której można używać do monitorowania aktualizacji we wszystkich wdrożeniach. Użyj rozwiązania Update Manager, aby zbadać całą flotę maszyn na platformie Azure, lokalnie i w innych chmurach.
Zarządzanie tożsamościami i dostępem
Aby centralnie wymusić ścisłe zasady dostępu, należy zintegrować rozwiązanie Red Hat Identity Management (IdM). Usługa IdM używa relacji zaufania i integracji openID Connect, aby skonsolidować implementację natywną dla systemu Linux następujących funkcji w modelu zabezpieczeń przedsiębiorstwa bez synchronizacji poświadczeń.
- Kontrola dostępu oparta na rolach (RBAC)
- Kontrola dostępu oparta na hoście
- Zasady eskalacji uprawnień
- Zasady mapowania użytkowników SELinux
- Inne krytyczne usługi systemu Linux
W porównaniu z tradycyjnymi wdrożeniami systemu Linux to podejście generuje korzyści, takie jak:
- Usprawniona kontrola zmian dzięki zredukowanym punktom dotykowym automatyzacji.
- Zmniejszone obciążenie związane z rejestrowaniem i analizą.
- Zgodność z wymaganiami inspekcji uwierzytelniania.
- Spójność zasad.
Usługa IdM zapewnia zalety zarządzania scentralizowanymi zasadami zabezpieczeń systemu Linux.
Firma Red Hat zaleca włączenie i uruchomienie programu SELinux we wszystkich wystąpieniach opartych na systemie RHEL, w tym środowiskach deweloperskich, testowych i produkcyjnych. Wszystkie obrazy i instalacje utworzone w systemie Red Hat mogą domyślnie uruchamiać środowisko SELinux w trybie wymuszania. Podczas projektowania wdrożeń obciążeń można uruchomić narzędzie SELinux w trybie permissive dla całego wystąpienia lub dla poszczególnych usług w ramach wystąpienia. Następnie zespoły programistyczne, zespoły ds. zabezpieczeń i operacji mogą określić charakterystykę dostępu aplikacji i użyć danych dziennika inspekcji za pomocą narzędzi SELinux w celu wygenerowania odpowiednich zasad SELinux dla obciążenia docelowego.
Narzędzia generowania zasad SELinux umożliwiają generowanie plików zasad opartych na obr./min w celu uwzględnienia ich w repozytoriach zawartości na potrzeby standardowego wdrażania obrazów. Zespoły programistyczne, zabezpieczeń i operacji mogą dostarczać artefakty nadrzędne w sposób iteracyjny w potoku. Po przetestowaniu określa, że nie są generowane żadne naruszenia SELinux, można ustawić konfigurację SELinux w celu wymuszania trybu. Naruszenia SELinux generowane podczas produkcji oznaczają znaczne odchylenie od akceptowalnego zachowania aplikacji. Należy flagować i badać te naruszenia. Użyj narzędzia SELinux, aby zapewnić kompleksową widoczność i proaktywne zarządzanie zagrożeniami.
Aby zdefiniować role RBAC przypisywane do maszyn systemu RHEL, zapoznaj się z rolami i obowiązkami w zespole. Odpowiednie zespoły mogą wymagać podwyższonego poziomu dostępu do maszyn wirtualnych. Rozważ rolę Współautor maszyny wirtualnej, Czytelnik maszyn wirtualnych i podobne role, aby uzyskać dostęp do maszyn wirtualnych. Jeśli nie potrzebujesz stałego dostępu, rozważ dostęp just in time. Rozważ tożsamości zarządzane, jeśli system RHEL musi uwierzytelnić się na platformie Azure. Tożsamości zarządzane przypisane przez system zapewniają większe bezpieczeństwo niż jednostki usługi i są skojarzone z zasobem maszyny wirtualnej. Oprócz ról RBAC należy rozważyć dostęp warunkowy dla osób, które potrzebują dostępu do środowiska platformy Azure. Użyj dostępu warunkowego, aby ograniczyć dostęp użytkowników do środowiska platformy Azure na podstawie lokalizacji, adresu IP i innych kryteriów.
Korzystanie z oprogramowania antywirusowego
Upewnij się, że masz odpowiednie oprogramowanie antywirusowe na maszynie RHEL. Rozważ dołączanie Ochrona punktu końcowego w usłudze Microsoft Defender w systemie Linux w celu ochrony przed najnowszymi lukami w zabezpieczeniach. Należy pamiętać, że nie należy włączać Defender dla Chmury Standard na maszynach RHEL używanych do hostowania baz danych SAP. Upewnij się, że każda maszyna i obciążenie RHEL mogą uruchamiać oprogramowanie ochrony punktu końcowego.
Zarządzanie wpisami tajnymi
Firma Red Hat zaleca ustawienie zasad kryptograficznych dla całego systemu we wszystkich wystąpieniach, jeśli to możliwe. Wdrożenia w chmurze można scharakteryzować według różnorodności. Zespoły ds. obciążeń wybierają własne biblioteki, języki, narzędzia i dostawców kryptograficznych, aby spełnić potrzeby swoich konkretnych rozwiązań. Implementacja standardów, faktorowanie składników aplikacji, komponowanie i inne techniki mogą zmniejszyć zmienność, ale można skonfigurować ustawienia kryptograficzne dla aplikacji i usług w wielu miejscach w danym wystąpieniu.
Aby rozsądnie skonfigurować nowe składniki, wymaga znacznego nakładu pracy i często głębokiej wiedzy kryptograficznych. Nieaktualne lub nieprawidłowo skonfigurowane zasady kryptograficzne powodują ryzyko. Zasady kryptograficzne dla całego systemu są zgodne z konfiguracją podstawowych podsystemów kryptograficznych, które obejmują protokoły Transport Layer Security (TLS), Zabezpieczenia protokołu internetowego (IPSec), rozszerzenia zabezpieczeń systemu nazw domen (DNSSEC) i protokoły Kerberos. Zasady DOMYŚLNE kryptograficzne całego systemu RHEL implementują konserwatywną konfigurację, która eliminuje całą klasę zagrożeń, wyłączając starsze protokoły komunikacyjne, takie jak TLS v1.1 i starsze wersje. Zasady FUTURE i FIPS zapewniają bardziej rygorystyczne konfiguracje. Można również utworzyć zasady niestandardowe.
Można dołączyć narzędzia do inspekcji systemu RHEL i zgodności z zabezpieczeniami. Skoncentruj się na automatycznym skanowaniu i korygowaniu zgodnym ze standardami branżowymi.
Demon inspekcji RHEL jest poddawane inspekcji, a centralny demon rejestrowania jest dziennikowany. Usługa Azure Monitor umożliwia pozyskiwanie danych z inspekcji i dzienników w celu monitorowania zdarzeń zabezpieczeń systemu RHEL i kanału informacyjnego usługi Microsoft Sentinel lub innych usług zarządzania informacjami i zdarzeniami zabezpieczeń (SIEM).
Systemy RHEL, które muszą spełniać wymagania zgodność z normą Defense Information Systems Agency Security Technical Implementation Guide (DISA-STIG), wymagają narzędzia Advanced Intrusion Detection Environment (AIDE). Dane wyjściowe AIDE należy rejestrować na platformie Azure.
Monitorowanie i integrowanie z platformą Ansible Automation w celu identyfikowania, zgłaszania alertów i korygowania krytycznych plików systemowych.
Używaj bezpłatnych składników na poziomie systemu operacyjnego we wszystkich wystąpieniach systemu RHEL opartych na platformie Azure.
Wymuszanie zasad wykonywania kodu: użyj demona fapolicyd , aby ograniczyć aplikacje, które mogą być uruchamiane w wystąpieniu systemu RHEL.
Zarządzanie ruchem przychodzącym i wychodzącym wystąpienia: używaj zapór z sieciowymi grupami zabezpieczeń platformy Azure, aby skutecznie zarządzać ruchem przychodzącym i południowo-przychodzącym do maszyn wirtualnych.
Centralnie zarządzaj konfiguracją za pomocą automatyzacji: użyj metodologii GitOps, aby zapewnić spójne zarządzanie konfiguracją podczas wdrażania i ciągłe wykonywanie operacji na dzień 2 obciążeń RHEL.
Zaimplementuj tryb zgodności ZE STANDARDEM FIPS dla obciążeń rządowych: upewnij się, że wyznaczone wystąpienia RHEL działają w trybie FIPS w celu zachowania zgodności ze standardami kryptograficznymi. Korzystaj z ofert zgodności platformy Azure, aby uzyskać kompleksowy stan zgodności.
Zawsze uruchamiaj selinux: użyj programu SELinux w trybie permissive, aby zidentyfikować profile dostępu do obciążeń i zapewnić odpowiednie zasady uruchamiania programu SELinux w trybie wymuszania na maszynach wirtualnych RHEL. SeLinux znacznie zmniejsza obszar ataków na aplikacje i usługi działające na platformie Azure.
Zarejestruj serwery RHEL w usłudze Red Hat Insights za pośrednictwem satelity Red Hat. Usługa Red Hat Insights korzysta z analizy bazy danych rozwiązywania problemów firmy Red Hat. Usługa Insights używa tej analizy do proaktywnego identyfikowania i generowania korygowań dotyczących problemów z wdrażaniem i konfiguracją przed ich wpływem na operacje. Ta strategia zwiększa poziom zabezpieczeń i wydajność operacyjną. Każda subskrypcja RHEL zawiera szczegółowe informacje. Wszystkie subskrypcje oparte na chmurze RHEL obejmują subskrypcję red hat satellite. Możesz też kupić subskrypcję red hat satellite z subskrypcjami RHEL dostępu do chmury.
Uwaga
Szczegółowe informacje wysyła informacje o systemie telemetrii poza platformą Azure.
Konfigurowanie sieci
Sieciowe grupy zabezpieczeń można zastosować do poziomu interfejsu sieciowego lub podsieci. Zalecamy poziom podsieci, chyba że określone wymagania wymagają sieciowej grupy zabezpieczeń na poziomie interfejsu sieciowego. Takie podejście upraszcza zarządzanie komunikacją sieci. Grupy zabezpieczeń aplikacji umożliwiają komunikację aplikacji, która całościowo segmentuje komunikację między podsieciami. Określ, które podejście najlepiej pasuje do danego scenariusza, i upewnij się, że maszyny RHEL mają odpowiedni dostęp do Internetu dla wymaganych repozytoriów. Może być konieczne zezwolenie na adresy URL listy dla tych repozytoriów w najbardziej zablokowanych środowiskach. Prywatne punkty końcowe zapewniają, że jedynym ruchem, który może odbierać zasób platformy Azure, jest ruch pochodzący z sieci platformy Azure, w tym połączenia ze środowiska lokalnego, jeśli masz bramę platformy Azure.
Implementowanie narzędzi SIEM lub SOAR
Rozważ usługę Microsoft Sentinel na potrzeby orkiestracji zabezpieczeń, automatyzacji i odpowiedzi (SOAR) narzędzi lub narzędzi SIEM dla systemów RHEL. Usługa Microsoft Sentinel używa sztucznej inteligencji do dostosowywania sposobu wykrywania zagrożeń do systemu. Odpowiedzi na ataki można zautomatyzować za pomocą elementów Runbook. Użyj usługi Microsoft Sentinel do proaktywnego wykrywania zagrożeń, wyszukiwania zagrożeń i reagowania na zagrożenia.
Rozważ poufne przetwarzanie
System RHEL zawiera poufny obraz niektórych opcji systemu operacyjnego RHEL. Rozważ przypadki użycia poufnego przetwarzania.