Pomysły dotyczące rozwiązań
W tym artykule opisano pomysł rozwiązania. Architekt chmury może użyć tych wskazówek, aby ułatwić wizualizowanie głównych składników dla typowej implementacji tej architektury. Skorzystaj z tego artykułu jako punktu wyjścia, aby zaprojektować dobrze zaprojektowane rozwiązanie zgodne z konkretnymi wymaganiami obciążenia.
To rozwiązanie oferuje wielowarstwową strategię ochrony maszyn wirtualnych na platformie Azure, zapewniając ułatwienia dostępu przy jednoczesnym zminimalizowaniu obszaru ataków na potrzeby zarządzania i celów administracyjnych.
Zgodne z zaleceniami firmy Microsoft dotyczącymi zabezpieczeń, to rozwiązanie zawiera kilka mechanizmów ochrony oferowanych przez platformę Microsoft Azure i usługi Entra, przestrzegając zasad bezpieczeństwa zgodnie z projektem, zabezpieczania domyślnie i bezpiecznych operacji.
Zabezpieczanie zgodnie z projektem. Rozwiązanie zapewnia nietrwale szczegółowy dostęp do maszyn wirtualnych, implementując zasadę najniższych uprawnień i koncepcję rozdzielenia obowiązków. Dzięki temu autoryzacja do maszyn wirtualnych jest udzielana tylko z uzasadnionych powodów, co zmniejsza ryzyko nieautoryzowanego dostępu.
Domyślnie zabezpieczaj. Ruch przychodzący do maszyn wirtualnych jest zablokowany, co pozwala na łączność tylko wtedy, gdy jest to konieczne. Ta domyślna postawa zabezpieczeń minimalizuje narażenie na wiele popularnych ataków cybernetycznych, takich jak ataki siłowe i rozproszone ataki typu "odmowa usługi" (DDoS).
Bezpieczne operacje. Kluczowe znaczenie ma wdrożenie ciągłego monitorowania i inwestowanie w poprawę mechanizmów kontroli zabezpieczeń w celu spełnienia bieżących i przyszłych zagrożeń. Użyj różnych usług i funkcji platformy Azure, takich jak Microsoft Entra Privileged Identity Management (PIM), funkcja dostępu just in time (JIT) maszyny wirtualnej Microsoft Defender dla Chmury, Azure Bastion, kontrola dostępu oparta na rolach platformy Azure (Azure RBAC). Opcjonalnie należy rozważyć dostęp warunkowy firmy Microsoft Entra w celu regulowania dostępu do zasobów platformy Azure i usługi Azure Key Vault na potrzeby przechowywania haseł lokalnych maszyn wirtualnych, jeśli nie są zintegrowane z usługami Entra ID lub Active Direcory Domain Services.
Potencjalne przypadki użycia
Ochrona w głębi systemu jest założeniem tej architektury. Ta strategia stanowi wyzwanie dla użytkowników z kilkoma liniami obrony przed przyznaniem użytkownikom dostępu do maszyn wirtualnych. Celem jest zapewnienie, że:
- Każdy użytkownik jest weryfikowany.
- Każdy użytkownik ma uzasadnione intencje.
- Komunikacja jest bezpieczna.
- Dostęp do maszyn wirtualnych na platformie Azure jest zapewniany tylko w razie potrzeby.
Strategia ochrony w głębi systemu i rozwiązanie w tym artykule dotyczą wielu scenariuszy:
Administrator musi uzyskać dostęp do maszyny wirtualnej platformy Azure w następujących okolicznościach:
- Administrator musi rozwiązać problem, zbadać zachowanie lub zastosować aktualizację krytyczną.
- Administrator używa protokołu RDP (Remote Desktop Protocol) do uzyskiwania dostępu do maszyny wirtualnej z systemem Windows lub bezpiecznego powłoki (SSH) w celu uzyskania dostępu do maszyny wirtualnej z systemem Linux.
- Dostęp powinien zawierać minimalną liczbę uprawnień wymaganych do wykonania zadania.
- Dostęp powinien być ważny tylko przez ograniczony czas.
- Po wygaśnięciu dostępu system powinien zablokować dostęp maszyny wirtualnej, aby zapobiec próbom złośliwego dostępu.
Pracownicy potrzebują dostępu do zdalnej stacji roboczej hostowanej na platformie Azure jako maszyny wirtualnej. Należy uwzględnić następujące warunki:
- Pracownicy powinni uzyskiwać dostęp do maszyny wirtualnej tylko w godzinach pracy.
- System zabezpieczeń powinien rozważyć żądania dostępu do maszyny wirtualnej poza godzinami pracy niepotrzebne i złośliwe.
Użytkownicy chcą łączyć się z obciążeniami maszyn wirtualnych platformy Azure. System powinien zatwierdzać połączenia, które są tylko z zarządzanych i zgodnych urządzeń.
System doświadczył ogromnej liczby ataków siłowych:
- Te ataki dotyczą maszyn wirtualnych platformy Azure na portach RDP i SSH 3389 i 22.
- Ataki próbowały odgadnąć poświadczenia.
- Rozwiązanie powinno uniemożliwić udostępnianie portów dostępu, takich jak 3389 i 22 w środowiskach internetowych lub lokalnych.
Architektura
Pobierz plik programu Visio z tą architekturą.
Przepływ danych
Decyzje dotyczące uwierzytelniania i dostępu: użytkownik jest uwierzytelniany w usłudze Microsoft Entra ID w celu uzyskania dostępu do witryny Azure Portal, interfejsów API REST platformy Azure, programu Azure PowerShell lub interfejsu wiersza polecenia platformy Azure. Jeśli uwierzytelnianie powiedzie się, zasady dostępu warunkowego firmy Microsoft zostaną zastosowane. Te zasady weryfikują, czy użytkownik spełnia określone kryteria. Przykłady obejmują użycie zarządzanego urządzenia lub zalogowanie się ze znanej lokalizacji. Jeśli użytkownik spełnia kryteria, dostęp warunkowy udziela użytkownikowi dostępu do platformy Azure za pośrednictwem witryny Azure Portal lub innego interfejsu.
Dostęp just-in-time oparty na tożsamości: podczas autoryzacji firma Microsoft Entra PIM przypisuje użytkownikowi niestandardową rolę typu kwalifikującą się. Uprawnienia są ograniczone do wymaganych zasobów i są rolą związaną czasowo, a nie stałą. W określonym przedziale czasu użytkownik żąda aktywacji tej roli za pośrednictwem interfejsu usługi Azure PIM. To żądanie może wyzwolić inne akcje, takie jak uruchomienie przepływu pracy zatwierdzania lub monitowanie użytkownika o uwierzytelnianie wieloskładnikowe w celu zweryfikowania tożsamości. W przepływie pracy zatwierdzania inna osoba musi zatwierdzić żądanie. W przeciwnym razie użytkownik nie ma przypisanej roli niestandardowej i nie może przejść do następnego kroku.
Dostęp just in time oparty na sieci: po uwierzytelnieniu i autoryzacji rola niestandardowa jest tymczasowo połączona z tożsamością użytkownika. Następnie użytkownik żąda dostępu do maszyny wirtualnej JIT. Ten dostęp otwiera połączenie z podsieci usługi Azure Bastion na porcie 3389 dla protokołu RDP lub portu 22 dla protokołu SSH. Połączenie jest uruchamiane bezpośrednio z kartą sieciową maszyny wirtualnej lub podsiecią karty sieciowej maszyny wirtualnej. Usługa Azure Bastion otwiera wewnętrzną sesję protokołu RDP przy użyciu tego połączenia. Sesja jest ograniczona do sieci wirtualnej platformy Azure i nie jest widoczna w publicznym Internecie.
Nawiązywanie połączenia z maszyną wirtualną platformy Azure: użytkownik uzyskuje dostęp do usługi Azure Bastion przy użyciu tokenu tymczasowego. Za pośrednictwem tej usługi użytkownik ustanawia pośrednie połączenie RDP z maszyną wirtualną platformy Azure. Połączenie działa tylko przez ograniczony czas. Użytkownik może pobrać hasło z usługi Azure Key Vault, jeśli hasło zostało zapisane jako wpis tajny w usłudze Key Vault, a wystarczające uprawnienia RBAC są skonfigurowane w celu ograniczenia dostępu do odpowiedniego konta użytkownika.
Składniki
To rozwiązanie korzysta z następujących składników:
Usługa Azure Virtual Machines to oferta typu infrastruktura jako usługa (IaaS). Za pomocą usługi Virtual Machines można wdrażać skalowalne zasoby obliczeniowe na żądanie. W środowiskach produkcyjnych korzystających z tego rozwiązania wdróż obciążenia na maszynach wirtualnych platformy Azure. Następnie wyeliminować niepotrzebne narażenie na maszyny wirtualne i zasoby platformy Azure.
Microsoft Entra ID to oparta na chmurze usługa tożsamości, która kontroluje dostęp do platformy Azure i innych aplikacji w chmurze.
PIM to usługa firmy Microsoft Entra, która zarządza, kontroluje i monitoruje dostęp do ważnych zasobów. W tym rozwiązaniu ta usługa:
- Ogranicza stały dostęp administratora do standardowych i niestandardowych ról uprzywilejowanych.
- Zapewnia dostęp oparty na tożsamości just in time do ról niestandardowych.
Dostęp do maszyn wirtualnych JIT to funkcja Defender dla Chmury, która zapewnia dostęp just in time do maszyn wirtualnych. Ta funkcja dodaje regułę odmowy do sieciowej grupy zabezpieczeń platformy Azure, która chroni interfejs sieciowy maszyny wirtualnej lub podsieć zawierającą interfejs sieciowy maszyny wirtualnej. Ta reguła minimalizuje obszar ataków maszyny wirtualnej, blokując niepotrzebną komunikację z maszyną wirtualną. Gdy użytkownik żąda dostępu do maszyny wirtualnej, usługa dodaje tymczasową regułę zezwalania do sieciowej grupy zabezpieczeń. Ponieważ reguła zezwalania ma wyższy priorytet niż reguła odmowy, użytkownik może nawiązać połączenie z maszyną wirtualną. Usługa Azure Bastion najlepiej sprawdza się w przypadku nawiązywania połączenia z maszyną wirtualną. Jednak użytkownik może również użyć bezpośredniej sesji protokołu RDP lub SSH.
Kontrola dostępu oparta na rolach platformy Azure to system autoryzacji, który zapewnia szczegółowe zarządzanie dostępem do zasobów platformy Azure.
Role niestandardowe RBAC platformy Azure umożliwiają rozwijanie wbudowanych ról RBAC platformy Azure. Można ich używać do przypisywania uprawnień na poziomach spełniających potrzeby organizacji. Te role obsługują funkcje PoLP. Udzielają tylko uprawnień, których potrzebuje użytkownik w celu użytkownika. Aby uzyskać dostęp do maszyny wirtualnej w tym rozwiązaniu, użytkownik otrzymuje uprawnienia:
- Korzystanie z usługi Azure Bastion.
- Żądanie dostępu do maszyny wirtualnej JIT w Defender dla Chmury.
- Odczytywanie lub wyświetlanie listy maszyn wirtualnych.
Microsoft Entra Conditional Access to narzędzie używane przez firmę Microsoft Entra ID do kontrolowania dostępu do zasobów. Zasady dostępu warunkowego obsługują model zabezpieczeń zerowego zaufania . W tym rozwiązaniu zasady zapewniają, że tylko uwierzytelnieni użytkownicy uzyskują dostęp do zasobów platformy Azure.
Usługa Azure Bastion zapewnia bezpieczną i bezproblemową łączność RDP i SSH z maszynami wirtualnymi w sieci. W tym rozwiązaniu usługa Azure Bastion łączy użytkowników korzystających z przeglądarki Microsoft Edge lub innej przeglądarki internetowej dla protokołu HTTPS lub zabezpieczonego ruchu na porcie 443. Usługa Azure Bastion konfiguruje połączenie RDP z maszyną wirtualną. Porty RDP i SSH nie są widoczne dla Internetu ani źródła użytkownika.
Usługa Azure Bastion jest opcjonalna w tym rozwiązaniu. Użytkownicy mogą łączyć się bezpośrednio z maszynami wirtualnymi platformy Azure przy użyciu protokołu RDP. Jeśli skonfigurujesz usługę Azure Bastion w sieci wirtualnej platformy Azure, skonfiguruj oddzielną podsieć o nazwie
AzureBastionSubnet
. Następnie skojarz sieciową grupę zabezpieczeń z tej podsieci. W tej grupie określ źródło ruchu HTTPS, takie jak lokalny blok routingu międzydomenowego (CIDR) bezklasowego routingu międzydomenowego użytkownika. Korzystając z tej konfiguracji, blokujesz połączenia, które nie pochodzą ze środowiska lokalnego użytkownika.Usługa Azure Key Vault zapewnia bezpieczny mechanizm przechowywania hasła użytkownika maszyny wirtualnej jako wpisu tajnego. Klucz tajny RBAC można skonfigurować tak, aby tylko konto użytkownika, które uzyskuje dostęp do maszyny wirtualnej, ma uprawnienia do jego pobierania. Pobieranie wartości hasła z magazynu kluczy można wykonać za pośrednictwem interfejsów API platformy Azure (takich jak korzystanie z interfejsu wiersza polecenia platformy Azure) lub z witryny Azure Portal, ponieważ usługa Azure Key Vault integruje się z interfejsem użytkownika usługi Azure Bastion w bloku maszyny wirtualnej w witrynie Azure Portal.
Współautorzy
Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następujących współautorów.
Główny autor:
- Husam Hilal | Starszy architekt rozwiązań w chmurze
Aby wyświetlić niepubalne profile serwisu LinkedIn, zaloguj się do serwisu LinkedIn.
Następne kroki
- Aktywowanie ról zasobów platformy Azure w usłudze Privileged Identity Management
- Informacje o dostępie just in time (JIT) do maszyny wirtualnej
- Konfigurowanie usługi Bastion i nawiązywanie połączenia z maszyną wirtualną z systemem Windows za pośrednictwem przeglądarki
- Zabezpieczanie zdarzeń logowania użytkownika za pomocą uwierzytelniania wieloskładnikowego firmy Microsoft