Zabezpieczanie kontrolera sieci
Dotyczy: Azure Local, wersje 23H2 i 22H2; Windows Server 2022, Windows Server 2019, Windows Server 2016
W tym artykule opisano sposób konfigurowania zabezpieczeń dla całej komunikacji między kontrolerem sieci a innymi urządzeniami i oprogramowaniem.
Ścieżki komunikacyjne, które można zabezpieczyć, obejmują komunikację Northbound na płaszczyźnie zarządzania, komunikację klastra między maszynami wirtualnymi kontrolera sieci w klastrze i komunikację typu Southbound na płaszczyźnie danych.
Komunikacja w ruchu północnym. Kontroler sieci komunikuje się na płaszczyźnie zarządzania za pomocą oprogramowania do zarządzania obsługującego sieć SDN, takiego jak Program Windows PowerShell i program System Center Virtual Machine Manager (SCVMM). Te narzędzia do zarządzania zapewniają możliwość definiowania zasad sieci i tworzenia stanu celu dla sieci, na którym można porównać rzeczywistą konfigurację sieci, aby zapewnić równoważność rzeczywistej konfiguracji ze stanem celu.
Komunikacja klastra kontrolera sieci. Podczas konfigurowania co najmniej trzech maszyn wirtualnych jako węzłów klastra kontrolera sieci te węzły komunikują się ze sobą. Ta komunikacja może być związana z synchronizacją i replikacją danych między węzłami lub konkretną komunikacją między usługami kontrolera sieci.
Komunikacja południowo-ruchowa. Kontroler sieci komunikuje się na płaszczyźnie danych z infrastrukturą SDN i innymi urządzeniami, takimi jak programowe moduły równoważenia obciążenia, bramy i maszyny hosta. Za pomocą kontrolera sieci można skonfigurować te urządzenia typu southbound i zarządzać nimi, aby zachować stan celu skonfigurowany dla sieci.
Komunikacja ruchu północno-przychodzącego
Kontroler sieci obsługuje uwierzytelnianie, autoryzację i szyfrowanie dla komunikacji northbound. W poniższych sekcjach opisano sposób konfigurowania tych ustawień zabezpieczeń.
Uwierzytelnianie
Podczas konfigurowania uwierzytelniania dla komunikacji northbound kontrolera sieci można zezwolić węzłom klastra kontrolera sieci i klientom zarządzania na weryfikowanie tożsamości urządzenia, za pomocą którego komunikują się.
Kontroler sieci obsługuje następujące trzy tryby uwierzytelniania między klientami zarządzania i węzłami kontrolera sieci.
Uwaga
Jeśli wdrażasz kontroler sieci za pomocą programu System Center Virtual Machine Manager, obsługiwany jest tylko tryb Kerberos .
Kerberos. Użyj uwierzytelniania Kerberos podczas dołączania zarówno klienta zarządzania, jak i wszystkich węzłów klastra kontrolera sieci do domeny usługi Active Directory. Domena usługi Active Directory musi mieć konta domeny używane do uwierzytelniania.
X509. Użyj platformy X509 do uwierzytelniania opartego na certyfikatach dla klientów zarządzania, którzy nie są przyłączni do domeny usługi Active Directory. Należy zarejestrować certyfikaty we wszystkich węzłach klastra kontrolera sieci i klientach zarządzania. Ponadto wszystkie węzły i klienci zarządzania muszą ufać certyfikatom innych.
Brak. Użyj wartości None do celów testowych w środowisku testowym i dlatego nie zaleca się używania ich w środowisku produkcyjnym. Po wybraniu tego trybu nie ma uwierzytelniania wykonywanego między węzłami i klientami zarządzania.
Tryb uwierzytelniania dla komunikacji northbound można skonfigurować przy użyciu polecenia programu Windows PowerShell Install-NetworkController z parametrem ClientAuthentication.
Autoryzacja
Podczas konfigurowania autoryzacji dla komunikacji northbound kontrolera sieci zezwalasz węzłom klastra kontrolera sieci i klientom zarządzania sprawdzić, czy urządzenie, za pomocą którego komunikują się, jest zaufane i ma uprawnienia do udziału w komunikacji.
Użyj następujących metod autoryzacji dla każdego z trybów uwierzytelniania obsługiwanych przez kontroler sieci.
Kerberos. W przypadku korzystania z metody uwierzytelniania Kerberos należy zdefiniować użytkowników i komputery autoryzowane do komunikowania się z kontrolerem sieci przez utworzenie grupy zabezpieczeń w usłudze Active Directory, a następnie dodanie autoryzowanych użytkowników i komputerów do grupy. Kontroler sieci można skonfigurować tak, aby używał grupy zabezpieczeń do autoryzacji przy użyciu parametru ClientSecurityGroup polecenia Install-NetworkController środowiska Windows PowerShell. Po zainstalowaniu kontrolera sieci można zmienić grupę zabezpieczeń przy użyciu polecenia Set-NetworkController z parametrem -ClientSecurityGroup. W przypadku korzystania z programu SCVMM należy podać grupę zabezpieczeń jako parametr podczas wdrażania.
X509. W przypadku korzystania z metody uwierzytelniania X509 kontroler sieci akceptuje żądania tylko od klientów zarządzania, których odciski palca certyfikatu są znane kontrolerowi sieci. Te odciski palca można skonfigurować przy użyciu parametru ClientCertificateThumbprint polecenia Install-NetworkController środowiska Windows PowerShell. Inne odciski palca klienta można dodawać w dowolnym momencie za pomocą polecenia Set-NetworkController.
Brak. Po wybraniu tego trybu nie ma uwierzytelniania wykonywanego między węzłami i klientami zarządzania. Użyj wartości None do celów testowych w środowisku testowym i dlatego nie zaleca się używania ich w środowisku produkcyjnym.
Szyfrowanie
Komunikacja northbound używa protokołu SECURE Sockets Layer (SSL) do utworzenia szyfrowanego kanału między klientami zarządzania i węzłami kontrolera sieci. Szyfrowanie SSL dla komunikacji ruchu northbound obejmuje następujące wymagania:
Wszystkie węzły kontrolera sieci muszą mieć identyczny certyfikat, który obejmuje cele uwierzytelniania serwera i uwierzytelniania klienta w rozszerzeniach rozszerzonego użycia klucza (EKU).
Identyfikator URI używany przez klientów zarządzania do komunikowania się z kontrolerem sieci musi być nazwą podmiotu certyfikatu. Nazwa podmiotu certyfikatu musi zawierać w pełni kwalifikowaną nazwę domeny (FQDN) lub adres IP punktu końcowego REST kontrolera sieci.
Jeśli węzły kontrolera sieci znajdują się w różnych podsieciach, nazwa podmiotu ich certyfikatów musi być taka sama jak wartość używana dla parametru RestName w poleceniu Install-NetworkController środowiska Windows PowerShell.
Wszyscy klienci zarządzania muszą ufać certyfikatowi SSL.
Rejestrowanie i konfiguracja certyfikatu SSL
Należy ręcznie zarejestrować certyfikat SSL w węzłach kontrolera sieci.
Po zarejestrowaniu certyfikatu można skonfigurować kontroler sieci do używania certyfikatu z parametrem -ServerCertificate polecenia Install-NetworkController środowiska Windows PowerShell. Jeśli masz już zainstalowany kontroler sieci, możesz zaktualizować konfigurację w dowolnym momencie za pomocą polecenia Set-NetworkController .
Uwaga
Jeśli używasz programu SCVMM, musisz dodać certyfikat jako zasób biblioteki. Aby uzyskać więcej informacji, zobacz Konfigurowanie kontrolera sieci SDN w sieci szkieletowej programu VMM.
Komunikacja klastra kontrolera sieci
Kontroler sieci obsługuje uwierzytelnianie, autoryzację i szyfrowanie komunikacji między węzłami kontrolera sieci. Komunikacja odbywa się za pośrednictwem programu Windows Communication Foundation (WCF) i protokołu TCP.
Ten tryb można skonfigurować za pomocą parametru ClusterAuthentication polecenia Install-NetworkControllerCluster środowiska Windows PowerShell.
Aby uzyskać więcej informacji, zobacz Install-NetworkControllerCluster.
Uwierzytelnianie
Podczas konfigurowania uwierzytelniania dla komunikacji klastra kontrolera sieci można zezwolić węzłom klastra kontrolera sieci na weryfikowanie tożsamości innych węzłów, z którymi się komunikują.
Kontroler sieci obsługuje następujące trzy tryby uwierzytelniania między węzłami kontrolera sieci.
Uwaga
W przypadku wdrażania kontrolera sieci przy użyciu programu SCVMM obsługiwany jest tylko tryb Kerberos .
Kerberos. Uwierzytelnianie Kerberos można użyć, gdy wszystkie węzły klastra kontrolera sieci są przyłączone do domeny usługi Active Directory z kontami domeny używanymi do uwierzytelniania.
X509. X509 to uwierzytelnianie oparte na certyfikatach. Uwierzytelnianie X509 można użyć, gdy węzły klastra kontrolera sieci nie są przyłączone do domeny usługi Active Directory. Aby korzystać z programu X509, należy zarejestrować certyfikaty we wszystkich węzłach klastra kontrolera sieci, a wszystkie węzły muszą ufać certyfikatom. Ponadto nazwa podmiotu certyfikatu zarejestrowanego w każdym węźle musi być taka sama jak nazwa DNS węzła.
Brak. Po wybraniu tego trybu nie ma uwierzytelniania wykonywanego między węzłami kontrolera sieci. Ten tryb jest dostarczany tylko do celów testowych i nie jest zalecany do użycia w środowisku produkcyjnym.
Autoryzacja
Podczas konfigurowania autoryzacji dla komunikacji klastra kontrolera sieci można zezwolić węzłom klastra kontrolera sieci na sprawdzenie, czy węzły, za pomocą których komunikują się, są zaufane i mają uprawnienia do udziału w komunikacji.
Dla każdego z trybów uwierzytelniania obsługiwanych przez kontroler sieci są używane następujące metody autoryzacji.
Kerberos. Węzły kontrolera sieci akceptują żądania komunikacji tylko z innych kont maszyn kontrolera sieci. Te konta można skonfigurować podczas wdrażania kontrolera sieci przy użyciu parametru Name polecenia New-NetworkControllerNodeObject środowiska Windows PowerShell.
X509. Węzły kontrolera sieci akceptują żądania komunikacji tylko z innych kont maszyn kontrolera sieci. Te konta można skonfigurować podczas wdrażania kontrolera sieci przy użyciu parametru Name polecenia New-NetworkControllerNodeObject środowiska Windows PowerShell.
Brak. Po wybraniu tego trybu nie ma autoryzacji wykonywanej między węzłami kontrolera sieci. Ten tryb jest dostarczany tylko do celów testowych i nie jest zalecany do użycia w środowisku produkcyjnym.
Szyfrowanie
Komunikacja między węzłami kontrolera sieci jest szyfrowana przy użyciu szyfrowania na poziomie transportu WCF. Ta forma szyfrowania jest używana, gdy metody uwierzytelniania i autoryzacji są certyfikatami Kerberos lub X509. Aby uzyskać więcej informacji, zobacz następujące tematy:
- Instrukcje: zabezpieczanie usługi za pomocą poświadczeń systemu Windows
- Instrukcje: zabezpieczanie usługi przy użyciu certyfikatów X.509.
Komunikacja ruchu przychodzącego na południe
Kontroler sieci współdziała z różnymi typami urządzeń na potrzeby komunikacji typu Southbound. Te interakcje korzystają z różnych protokołów. W związku z tym istnieją różne wymagania dotyczące uwierzytelniania, autoryzacji i szyfrowania w zależności od typu urządzenia i protokołu używanego przez kontroler sieci do komunikowania się z urządzeniem.
Poniższa tabela zawiera informacje na temat interakcji kontrolera sieci z różnymi urządzeniami typu southbound.
Urządzenie/usługa dla ruchu południowego | Protokół | Używane uwierzytelnianie |
---|---|---|
Programowy moduł równoważenia obciążenia | WCF (MUX), TCP (host) | Certyfikaty |
Firewall | OVSDB | Certyfikaty |
Brama | WinRM | Kerberos, Certyfikaty |
Sieć wirtualna | OVSDB, WCF | Certyfikaty |
Routing zdefiniowany przez użytkownika | OVSDB | Certyfikaty |
Dla każdego z tych protokołów mechanizm komunikacji jest opisany w poniższej sekcji.
Uwierzytelnianie
W przypadku komunikacji southbound używane są następujące protokoły i metody uwierzytelniania.
WCF/TCP/OVSDB. W przypadku tych protokołów uwierzytelnianie odbywa się przy użyciu certyfikatów X509. Zarówno kontroler sieci, jak i równorzędny moduł równoważenia obciążenia oprogramowania (SLB) Multiplexer (MUX)/maszyny hosta prezentują swoje certyfikaty nawzajem na potrzeby wzajemnego uwierzytelniania. Każdy certyfikat musi być zaufany przez zdalną komunikację równorzędną.
W przypadku uwierzytelniania dla ruchu southbound można użyć tego samego certyfikatu SSL skonfigurowanego do szyfrowania komunikacji z klientami northbound. Należy również skonfigurować certyfikat na urządzeniach MUX i hostach SLB. Nazwa podmiotu certyfikatu musi być taka sama jak nazwa DNS urządzenia.
Usługa WinRM. W przypadku tego protokołu uwierzytelnianie odbywa się przy użyciu protokołu Kerberos (dla maszyn przyłączonych do domeny) i przy użyciu certyfikatów (dla maszyn nieprzyłączonych do domeny).
Autoryzacja
W przypadku komunikacji southbound używane są następujące protokoły i metody autoryzacji.
WCF/TCP. W przypadku tych protokołów autoryzacja jest oparta na nazwie podmiotu jednostki równorzędnej. Kontroler sieci przechowuje nazwę DNS urządzenia równorzędnego i używa go do autoryzacji. Ta nazwa DNS musi być zgodna z nazwą podmiotu urządzenia w certyfikacie. Podobnie certyfikat kontrolera sieci musi być zgodny z nazwą DNS kontrolera sieci przechowywaną na urządzeniu równorzędnym.
Usługa WinRM. Jeśli jest używany protokół Kerberos, konto klienta usługi WinRM musi znajdować się w wstępnie zdefiniowanej grupie w usłudze Active Directory lub w grupie Administratorzy lokalni na serwerze. Jeśli są używane certyfikaty, klient przedstawia certyfikat na serwerze, który serwer autoryzuje przy użyciu nazwy podmiotu/wystawcy, a serwer używa zamapowanego konta użytkownika do przeprowadzenia uwierzytelniania.
OVSDB. Autoryzacja jest oparta na nazwie podmiotu jednostki równorzędnej. Kontroler sieci przechowuje nazwę DNS urządzenia równorzędnego i używa go do autoryzacji. Ta nazwa DNS musi być zgodna z nazwą podmiotu urządzenia w certyfikacie.
Szyfrowanie
W przypadku komunikacji southbound następujące metody szyfrowania są używane dla protokołów.
WCF/TCP/OVSDB. W przypadku tych protokołów szyfrowanie jest wykonywane przy użyciu certyfikatu zarejestrowanego na kliencie lub serwerze.
Usługa WinRM. Ruch usługi WinRM jest domyślnie szyfrowany przy użyciu dostawcy obsługi zabezpieczeń Protokołu Kerberos (SSP). Dodatkowe szyfrowanie można skonfigurować w postaci protokołu SSL na serwerze WinRM.