Implementowanie zabezpieczeń sieci
Zabezpieczenia sieci są definiowane jako proces ochrony zasobów przed nieautoryzowanym dostępem lub atakiem przez zastosowanie kontroli do ruchu sieciowego. Chociaż kontrole mogą być stosowane na różne sposoby, celem jest zapewnienie, że dozwolony jest tylko legalny ruch.
Poniżej znajduje się przykładowa reprezentacja architektury klastra usługi HDInsight wdrożonego z zabezpieczeniami sieci i towarzyszących dyskusji na temat tego, w jaki sposób jest to osiągane. Czarne strzałki reprezentują ruch przychodzący, a niebieskie strzałki reprezentują ruch wychodzący
Celem powyższego projektu jest zapewnienie, że tylko ruch sieciowy pochodzący z zaufanych źródeł może dotrzeć do klastra usługi HDInsight i ruchu sieciowego wychodzącego z klastra usługi HDInsight do zaufanego miejsca docelowego. Ponadto ruch sieciowy docierający do usług Storage i Metastore jest ograniczony do ruchu pochodzącego z usługi HDInsight.
Przejdźmy do szczegółów powyższego projektu, przeglądając następujące obszary
- Zabezpieczenia ruchu przychodzącego i dostęp do klastra
- Zabezpieczenia ruchu wychodzącego
- Punkty końcowe usługi sieci wirtualnej.
Zabezpieczenia ruchu przychodzącego
Zabezpieczenia sieci przychodzącej są osiągane przy użyciu sieciowej grupy zabezpieczeń przypisanej do podsieci. Sieciowa grupa zabezpieczeń używa tagów usług HDInsight i zakresów adresów IP, aby ograniczyć ruch przychodzący do zaufanych źródeł.
W powyższej reprezentacji dwa zestawy reguł zabezpieczeń dla ruchu przychodzącego są tworzone w sieciowej grupie zabezpieczeń. Pierwsza reguła zabezpieczeń dla ruchu przychodzącego używa tagu usługi HDInsight, aby zezwolić na ruch przychodzący z usług kondycji i zarządzania usługi HDInsight. Druga reguła zabezpieczeń dla ruchu przychodzącego to zakres adresów IP, który umożliwia użytkownikom w określonym zakresie adresów IP dostęp do określonych portów w usłudze HDInsight (na przykład port SSH 22).
Zabezpieczenia sieci przychodzącej są osiągane przy użyciu reguł sieciowej grupy zabezpieczeń w podsieci, w której wdrożony jest klaster usługi HDInsight. Poniżej przedstawiono przykład sposobu tworzenia reguł sieciowej grupy zabezpieczeń.
Utwórz sieć wirtualną z wieloma podsieciami zgodnie z potrzebami. Jedna z tych podsieci jest przeznaczona do hostowania klastra usługi HDInsight i zostanie skojarzona z sieciową grupą zabezpieczeń.
Utwórz sieciową grupę zabezpieczeń. W sieciowej grupie zabezpieczeń znajdują się dwa zestawy reguł zabezpieczeń: Ruch przychodzący i Wychodzący w sekcji Ustawienia po lewej stronie. Użyjemy sekcji Reguły zabezpieczeń dla ruchu przychodzącego i dodamy dodatkowe reguły do istniejącego zestawu reguł.
Zidentyfikuj region, w którym usługa HDInsight ma zostać wdrożona i oparta na regionie, zidentyfikuj tagi usługi, które będą potrzebne. W zależności od regionu i poziomu restrykcyjnych uprawnień mogą istnieć permutacje i kombinacje tagów usługi, które należy zastosować, aby osiągnąć cel. Kliknij pozycję Dodaj, aby utworzyć dodatkowe reguły zabezpieczeń dla ruchu przychodzącego w sieciowej grupie zabezpieczeń i przypisać tagi usługi na podstawie regionu wdrożenia.
Poniżej znajduje się przykład kombinacji tagów region-usługa. Wyczerpującą listę regionów kombinacji tagów usługi można znaleźć w obszarze Tagi usługi sieciowej grupy zabezpieczeń dla usługi Azure HDInsight.
Typ tagu usługi | Kraj | Region (Region) | Tag usługi | opis |
---|---|---|---|---|
Globalnie | ND | ND | HDInsight | Tag pojedynczej usługi globalnej dla usługi HDInsight |
Regionalne | Stany Zjednoczone | Zachodnie stany USA 2 | HDInsight.WestUS2 | Tag pojedynczej usługi |
Regionalne | Stany Zjednoczone | Wschodnie stany USA 2 | HDInsight.EastUS2 HDInsight.WestUS HDInsight.EastUS | Kombinacja tagów usługi |
Regionalne | Chiny | Chiny Północne | HDInsight.ChinaNorth HDInsight.ChinaEast | Kombinacja tagów usługi |
- Na podstawie wymagań projektowych można teraz dodać dodatkowe reguły do sekcji Reguły ruchu przychodzącego, aby umożliwić ruch przychodzący z innych zaufanych źródeł.
Dostęp do klastra usługi HDInsight z wdrożonym za pomocą sieci wirtualnej
Z punktu widzenia zabezpieczeń, zazwyczaj wszystkie publiczne punkty końcowe do klastra usługi HDInsight nie są dostępne w tym przypadku istnieje wiele alternatywnych sposobów uzyskiwania dostępu do klastra usługi HDInsight w sieci wirtualnej i przedstawiono je w przykładowej reprezentacji poniżej. Klastry usługi HDInsight podczas tworzenia w sieci wirtualnej uwidaczniają zarówno punkty końcowe o zrównoważonym obciążeniu publicznym, jak i prywatnym.
W ścieżce sieciowej 1 dostęp do klastra jest blokowany za pośrednictwem ogólnego publicznego Internetu, ale można utworzyć reguły sieciowej grupy zabezpieczeń, aby umożliwić określonym klientom zewnętrznym spoza platformy Azure bezpieczny dostęp do klastra za pośrednictwem publicznego punktu końcowego przy użyciu protokołu https przez port 443 przy użyciu https://< clustername.azurehdinsight.net>.
W ścieżce sieciowej 2, aby obejść sieciową grupę zabezpieczeń, serwer przesiadkowy jest tworzony w sieci wirtualnej, w której znajduje się podsieć usługi HDInsight. Użytkownicy mogą połączyć się z tym serwerem przesiadkowym za pomocą protokołu RDP, a następnie uzyskać dostęp do prywatnego punktu końcowego usługi HDInsight przy <użyciu nazwy> klastra przez port 443 przy użyciu https://< clustername.azurehdinsight.net>.
W ścieżce sieciowej 3 reguły sieciowej grupy zabezpieczeń są modyfikowane dla klienta zewnętrznego z platformą Azure w celu uzyskania dostępu SSH do klastra za pośrednictwem publicznego punktu końcowego przez port 22 przy użyciu https://< clustername-ssh.azurehdinsight.net>.
Zabezpieczenia ruchu wychodzącego
Ruch pochodzący z usługi HDInsight musi być dozwolony do wielu miejsc docelowych, aby usługa działała prawidłowo. Należy jednak również zachować ostrożność, aby upewnić się, że te miejsca docelowe są zaufane.
Zależności ruchu wychodzącego usługi HDInsight są definiowane przy użyciu w pełni kwalifikowanych nazw domen (FQDN) i nie mają statycznych adresów IP. Biorąc pod uwagę, że adresy IP nazw FQDN mogą ulec zmianie, sieciowe grupy zabezpieczeń nie mogą służyć do kontrolowania ruchu wychodzącego z klastra usługi HDInsight. W związku z tym usługa Azure Firewall — lub hostowane przez klienta wirtualne urządzenie sieciowe jest używane do kontrolowania ruchu wychodzącego pochodzącego z klastra. W praktycznych scenariuszach ruch wychodzący z podsieci usługi HDInsight jest kierowany przy użyciu trasy zdefiniowanej przez użytkownika (UDR) do wirtualnego urządzenia sieciowego lub usługi Azure Firewall, który następnie zezwala na ruch wychodzący na podstawie reguł zabezpieczeń zdefiniowanych za pomocą tagu usługi HDInsight.
W poniższym przykładzie widać, że ruch wychodzący z podsieci usługi HDInsight przepływa do usługi Azure Firewall, w której jest przeprowadzana ocena tagu usługi HDInsight w celu zapewnienia, że ruch wychodzący przeznaczony dla zaufanego miejsca docelowego. Ruch do magazynów metadanych, adres IP zarządzania usługą Storage i HDInsight itp., ruch do niezatwierdzonych miejsc docelowych w Internecie jest blokowany. Chociaż miejsca docelowe w tagu usługi HDInsight są obsługiwane przez firmę Microsoft, klienci z określonymi wymaganiami dotyczącymi ruchu wychodzącego, które nie są spełnione przez tag usługi HDInsight, mogą zdecydować się na utworzenie własnego tagu usługi z opublikowanej listy do nazw FQDN usługi HDInsight, które mogą obsługiwać i aktualizować. Szczegółowe informacje dotyczące konfiguracji tabeli tras i ustawień zapory można przejrzeć na stronie Ograniczanie ruchu wychodzącego dla usługi HDInsight
Poniższe kroki są wymagane do włączenia ograniczeń ruchu wychodzącego:
- Tworzenie usługi Azure Firewall
- Dodawanie reguł sieciowych aplikacji i wychodzących zabezpieczeń do zapory
- Tworzenie trasy zdefiniowanej przez użytkownika
Punkty końcowe usługi dla sieci wirtualnej
Punkty końcowe usługi dla sieci wirtualnej rozszerzają tożsamość sieci wirtualnej na usługę platformy Azure. Włączenie punktów końcowych usługi sieci wirtualnej w usłudze udziela dostępu do usługi z określonej kombinacji sieci wirtualnej/podsieci, a następnie kieruje ruch z tej podsieci do usługi za pomocą optymalnej i bezpiecznej ścieżki. Zasoby, takie jak konto magazynu i magazyny metadanych SQL, do których usługa HDInsight potrzebuje dostępu, można zabezpieczyć za pośrednictwem punktów końcowych usługi sieci wirtualnej, jak pokazano w poniższej przykładowej architekturze.
W tym przykładzie punkty końcowe usługi sieci wirtualnej są konfigurowane w usłudze ADLS Gen2 Storage i usłudze magazynu metadanych Hive (w programie Azure SQL Server) i będą zezwalać na ruch z sieci wirtualnej usługi HDInsight.
Kroki tworzenia punktów końcowych usługi sieci wirtualnej zostały szczegółowo omówione w sekcji Zabezpieczenia dostępu do danych.