Udostępnij przez


Bezpieczne wdrażanie ustawień serwera SSH za pomocą usługi Azure Policy

Dowiedz się, jak bezproblemowo skonfigurować ustawienia dysku SSHD w całej floty serwerów, począwszy od skrupulatnej inspekcji istniejących konfiguracji w celu zapewnienia implementacji każdej zmiany z dokładnością i starannością.

Aby uzyskać bardziej szczegółowe omówienie kontroli stanu SSH, zobacz Omówienie: Co to jest kontrola stanu SSH?.

Wyzwanie

Wyobraź sobie, że jesteś administratorem odpowiedzialnym za rozległą flotę maszyn z systemem Linux. Każda maszyna jest potencjalnym punktem wejścia dla osób atakujących, jeśli nie są prawidłowo zabezpieczone. Jednym z krytycznych aspektów zabezpieczania tych maszyn jest standaryzacja ustawień opartych na dysku SSHD. Zasady zabezpieczeń organizacji wymagają standaryzacji wszystkich portów SSHD na jednym porcie. Może to wydawać się proste, ale z setkami lub nawet tysiącami maszyn może szybko stać się koszmarem logistycznym.

Rozwiązanie

Możesz użyć funkcji kontroli stanu SSH w usłudze Azure Policy/Konfiguracji maszyny. Ta zaawansowana funkcja umożliwia inspekcję i wymuszanie stanu zabezpieczeń SSH w całej floty urządzeń, zapewniając spójność i zwiększanie bezpieczeństwa. Przejdźmy przez proces krok po kroku.

Krok 1. Przeprowadź inspekcję bieżących ustawień SSH za pomocą zasad "Przeprowadź inspekcję zabezpieczeń SSH dla systemu Linux"

gif przedstawiający sposób ustawiania zasad SSH inspekcji

Aby uniknąć wszelkich supriss podczas konfigurowania zasad za pomocą usługi Azure Policy, musimy zrozumieć bieżący stan naszych maszyn. Obejmuje to inspekcję maszyn za pomocą zasad SSH w celu sprawdzenia, które porty są obecnie używane.

  1. Przejdź do obszaru Zasady w witrynie Azure Portal.
  2. Kliknij pozycję Definicje.
  3. Filtruj według protokołu SSH i wybierz zasady Inspekcja stanu zabezpieczeń SSH dla systemu Linux.
  4. Przypisz zasady, zastosuj zakres i ustaw parametry, aby upewnić się, że port SSH jest ustawiony na żądany port.
  5. Utwórz tożsamość zarządzaną, przejrzyj i utwórz zasady.

Poczekaj 10 do 15 minut, aby zasady przeprowadzały inspekcję wszystkich maszyn z systemem Linux w floty.

Inspekcja zasad SSH ma kluczowe znaczenie, ponieważ zapewnia podstawową wiedzę na temat bieżącego stanu zabezpieczeń. Bez tego kroku zasady będą wymuszane ślepo, potencjalnie powodując zakłócenia lub brakujące niezgodne maszyny. Najpierw przeprowadzając inspekcję, upewnij się, że masz jasny obraz środowiska, co jest niezbędne do skutecznego wymuszania zasad.

Krok 2. Przeglądanie wyników inspekcji

gif przedstawiający sposób przeglądania wyników inspekcji zasad SSH za pomocą zapytania usługi Azure Resource Graph

Po zakończeniu inspekcji nadszedł czas, aby przejrzeć wyniki. Da to nam jasny obraz, które maszyny są zgodne i które nie są.

  • W tym celu możesz użyć zapytania usługi Azure Resource Graph:

  • Otwórz zapytanie, aby przejrzeć różne porty w twojej flocie maszyn.

    • Uruchom zapytanie, aby wyświetlić jeden wiersz na maszynę z danymi inspekcji dla portu w kolumnach.
         // SSH port rule detail
         GuestConfigurationResources
         | where name contains "LinuxSshServerSecurityBaseline"
         | project report = properties.latestAssignmentReport,
          machine = split(properties.targetResourceId,'/')[-1],
          lastComplianceStatusChecked=properties.lastComplianceStatusChecked
         | mv-expand report.resources
         | project machine,
          rule = report_resources.resourceId,
          ruleComplianceStatus = report_resources.complianceStatus,
          ruleComplianceReason = report_resources.reasons[0].phrase,
          lastComplianceStatusChecked
         | where rule contains('port')
    
    

Na powyższym zrzucie ekranu widać, że niektóre maszyny używały portu 22, podczas gdy inne używały różnych portów.

Nuta

Zapytania, takie jak pokazano powyżej, można edytować zgodnie z potrzebami administratorów, takie jak wykonywanie zapytań dotyczących całej floty w celu znalezienia wszystkich maszyn, które zezwalają na logowanie główne.

Przeglądanie wyników inspekcji umożliwia identyfikowanie wzorców i wartości odstających w flocie. Ten krok jest niezbędny do ustalenia konkretnych maszyn, które wymagają uwagi i zrozumienia ogólnego poziomu zgodności. Pomaga również komunikować się z obecnym stanem osobom biorącym udział w projekcie, zapewniając przejrzystość i budowanie zaufania w procesie.

Krok 3. Przekazywanie zmian

Teraz, gdy wiemy, które maszyny używają portów innych niż żądany port, ważne jest, aby przekazać te zmiany uczestnikom projektu. Dzięki temu wszyscy będą wiedzieć o nadchodzących zmianach i odpowiednio zaktualizować swoje przepływy pracy.

Ważny

Efektywna komunikacja jest kluczem do pomyślnej implementacji zasad. Informując uczestników projektu o zmianach, upewnij się, że nie ma żadnych niespodzianek i że wszyscy są przygotowani na przejście. Ten krok pomaga uzyskać zakup z różnych zespołów i zminimalizować odporność na zmiany.

Krok 4. Wymuszanie nowych ustawień za pomocą zasad "Konfigurowanie stanu zabezpieczeń protokołu SSH dla systemu Linux"

GIF pokazujący sposób ustawiania wymuszania zasad SSH

Dzięki zatwierdzeniu uczestników projektu możemy teraz wymusić konfigurowanie zasad SSH. Ten krok spowoduje standaryzację portów SSHD na wszystkich maszynach.

  1. Przejdź do definicje zasad.
  2. Filtruj według SSH i wybierz pozycję Skonfiguruj stan zabezpieczeń SSH dla systemu Linux.
  3. Przypisz zasady, wybierz zakres i ustaw parametry, aby upewnić się, że port jest ustawiony na żądany port.
  4. Włącz korygowanie, aby zmienić porty i wszystkie maszyny utworzone przed ustawieniem zasad.
  5. Przejrzyj, a następnie utwórz zasady.

Wymuszanie konfigurowania zasad SSH jest krytycznym krokiem, w którym są wprowadzane rzeczywiste zmiany. Ten krok gwarantuje, że wszystkie maszyny są zgodne ze standardami zabezpieczeń, zmniejszając obszar ataków i zwiększając ogólne bezpieczeństwo. Włączenie korygowania pozwala zautomatyzować proces, zaoszczędzić czas i nakład pracy przy jednoczesnym zapewnieniu spójności w całej flocie.

Krok 5. Weryfikowanie zmian

gif pokazujący sposób przeglądania wyników wymuszania zasad SSH za pomocą zapytania usługi Azure Resource Graph

Po kilku godzinach należy sprawdzić, czy wszystkie maszyny korzystają teraz z żądanego portu. Możesz uruchomić to samo zapytanie co wcześniej, aby sprawdzić stan zgodności.

Ważny

Weryfikacja jest ostatnim krokiem w celu upewnienia się, że wymuszanie zasad zakończyło się pomyślnie. Ten krok zapewnia zgodność wszystkich maszyn i prawidłowe stosowanie zmian. Pomaga również zidentyfikować wszelkie problemy, które mogły wystąpić podczas procesu wymuszania, co pozwala na terminowe rozwiązanie.

Zbliża się

Punkt odniesienia zabezpieczeń platformy Azure dla systemu Linux jest teraz dostępny w publicznej wersji zapoznawczej! Obejmuje ona kontrolę stanu SSH oraz więcej reguł zabezpieczeń i zarządzania, aby lepiej zabezpieczyć flotę urządzeń z systemem Linux. Aby uzyskać więcej informacji, zobacz przewodnik Szybki start : Inspekcja punktu odniesienia zabezpieczeń platformy Azure dla systemu Linux przy użyciu maszyny testowej.

Więcej dokumentacji

  • Aby uzyskać pomoc techniczną dotyczącą problemów itp., skontaktuj się z pomocą techniczną firmy Microsoft
  • Aby przekazać opinię, omówić żądania funkcji itp.: linux_sec_config_mgmt@service.microsoft.com