Table of contents
TOC
Zwiń spis treści
Rozwiń spis treści

Zarządzanie listami ACL portów w programie VMM

Rayne Wiselman|Ostatnia aktualizacja: 14.04.2017
|
1 Współautor

Dotyczy: System Center 2016 — Virtual Machine Manager

Korzystając z programu System Center 2016 — Virtual Machine Manager (VMM), można centralnie konfigurować listy kontroli dostępu (ACL) portów funkcji Hyper-V oraz nimi zarządzać. Listy ACL portów można skonfigurować zarówno dla sieci szkieletowej zarządzanej z użyciem kontrolera sieci, jak i dla sieci, które nie są zarządzane przy użyciu kontrolera sieci.

  • Lista ACL portów to zestaw reguł, które służą do filtrowania ruchu na poziomie warstwy 2 portu. Lista ACL portów w programie VMM filtruje dostęp do określonego obiektu programu VMM. Do obiektu sieciowego może być dołączona tylko jedna lista ACL portów.
  • Lista ACL zawiera reguły i może być dołączana do dowolnej liczby obiektów sieciowych. Można utworzyć listę ACL bez reguł, a następnie dodawać reguły w późniejszym czasie. Każda reguła listy ACL odpowiada tylko jednej liście ACL portów.
  • Jeśli lista ACL zawiera wiele reguł, są one stosowane zależnie od priorytetu. W przypadku odnalezienia i zastosowania reguły zgodnej z kryteriami pozostałe reguły nie są przetwarzane.
  • Lista ACL portów ustawień globalnych jest stosowana do wszystkich wirtualnych kart sieciowych maszyn wirtualnych w infrastrukturze. Nie istnieje oddzielny typ obiektu przeznaczony dla ustawień globalnych. Zamiast tego lista ACL portów ustawień globalnych jest dołączana do serwera zarządzania programu VMM.
  • Ustawienia listy ACL portów są udostępniane tylko za pośrednictwem poleceń cmdlet programu PowerShell w programie VMM i nie można ich skonfigurować w konsoli programu VMM.
  • Listy ACL portów mogą być stosowane do:
    • Podsieci wirtualnych i kart we wdrożeniu kontrolera sieci.
    • Podsieci wirtualnych, kart sieciowych, sieci maszyn wirtualnych i serwera zarządzania programu VMM w sieciach, które nie są zarządzane przy użyciu kontrolera sieci.

Przed rozpoczęciem

  • Aby zastosować listę ACL do obiektów zarządzanych przez kontroler sieci, należy użyć flagi ManagedByNC i przypisać jej wartość True. Jeśli ta flaga nie ma przypisanej wartości True, ta lista ACL jest stosowana tylko do obiektów sieciowych, które nie są zarządzane przez kontrolera sieci.
  • Typy list ACL nie są wymienne. Nie można zastosować listy ACL z flagą ManagedByNC ustawioną jako false do obiektów zarządzanych przez kontrolera sieci i na odwrót.
  • Główną różnicą między tymi dwoma typami list ACL jest konieczność korygowania poszczególnych kart sieciowych po zastosowaniu listy ACL do obiektów, które nie są zarządzane przez kontrolera sieci.
  • Istnieje również różnica dotycząca zakresów priorytetu:
    • Listy ACL portów funkcji Hyper-V (niezarządzane przez kontrolera sieci): 1–65535
    • Listy ACL portów sieci SDN (zarządzane przez kontrolera sieci): 1–64500
  • Do dołączania listy ACL portów do ustawień globalnych wymagane są pełne uprawnienia administratora programu VMM. Aby dołączyć listę ACL do obiektów programu VMM (sieci maszyn wirtualnych, podsieci, wirtualnych kart sieciowych), musisz być administratorem programu VMM, administratorem dzierżawy lub użytkownikiem samoobsługi.

Scenariusze nieobsługiwane

Oto czynności, których nie można obecnie wykonywać:

  • Zarządzanie poszczególnymi regułami dla jednego wystąpienia w przypadku, gdy lista ACL jest udostępniana wielu wystąpieniom. Wszystkie reguły są zarządzane centralnie w ramach ich nadrzędnych list ACL oraz są stosowane wszędzie tam, gdzie lista ACL jest dołączona.
  • Dołączanie więcej niż jednej listy ACL do obiektu.
  • Stosowanie list ACL portów do wirtualnych kart sieciowych w partycji nadrzędnej funkcji Hyper-V (systemu operacyjnego zarządzania).
  • Tworzenie reguł listy ACL portów w programie VMM obejmujących protokoły poziomu IP (inne niż TCP lub UDP). Pozostałe protokoły są nadal obsługiwane natywnie przez funkcję Hyper-V.
  • Stosowanie list ACL portów do sieci logicznych, lokacji sieciowych (definicji sieci logicznych), podsieci VLAN i innych obiektów sieciowych programu VMM, które nie zostały wyraźnie wymienione jako obsługiwane.

Kroki wdrażania

Korzystając z interfejsu programu PowerShell programu VMM, można wykonać następujące czynności:

  1. Definiowanie list ACL portów i reguł.
    • Reguły są stosowane do portów przełączników wirtualnych na serwerach funkcji Hyper-V jako „rozszerzone listy ACL portów” (VMNetworkAdapterExtendedAcl). Oznacza to, że mogą być stosowane wyłącznie do hostów z systemem Windows Server 2012 R2 lub nowszym, ponieważ program VMM nie tworzy starszych wersji list ACL portów funkcji Hyper-V (VMNetworkAdapterAcl) dla wcześniejszych wersji.
    • Wszystkie reguły listy ACL portów zdefiniowane w programie VMM są elementem stanowym w odniesieniu do protokołu TCP. Nie można tworzyć bezstanowych reguł listy ACL dla protokołu TCP.
  2. Dołączanie listy ACL portów do ustawień globalnych. Powoduje to zastosowanie listy ACL do wszystkich wirtualnych kart sieciowych maszyny wirtualnej.
  3. Dołączanie listy ACL portów do sieci maszyny wirtualnej, podsieci maszyny wirtualnej lub wirtualnych kart sieciowych maszyn wirtualnych.
  4. Zarządzanie regułami listy ACL portów.

Tworzenie list ACL portów

  1. Otwórz program PowerShell w programie VMM.
  2. Utwórz listę ACL portów przy użyciu polecenia cmdlet New-SCPortACL.

     New-SCPortACL [-Name] <String> [-Description <String>] [-JobVariable <String>] [-ManagedByNC] [-OnBehalfOfUser <String>] [-OnBehalfOfUserRole <UserRole>] [-Owner <String>] [-PROTipID <Guid>] [-RunAsynchronously] [-UserRole <UserRole>] [-VMMServer <ServerConnection>] [<CommonParameters>]
    

Parametry

ParametrSzczegóły
Name; DescriptionNazwa i opis listy ACL portów
JobVariableZapisuje postęp zadania
ManagedByNCOkreśla, czy obiekty są zarządzane przez kontrolera sieci
OnBehalfOfUser/OnBehalfOfRoleUruchamia zadanie przy użyciu roli lub nazwy użytkownika
WłaścicielOkreśla właściciela obiektu programu VMM w postaci prawidłowego konta użytkownika domeny. Przykład: Contoso\PattiFuller lub PattiFuller@Contoso
ProTipIDIdentyfikator elementu ProTip, który wyzwolił akcję
RunAsychronouslyWskazuje, czy zadanie jest uruchamiane asynchronicznie
UserRoleOkreśla rolę użytkownika
VMMServerOkreśla serwer programu VMM
CommonParametersDowiedz się więcej

Przykłady

Tworzenie listy ACL portów „DemoACLManagedByNC” dla obiektów zarządzanych przez kontrolera sieci:

PS: C:\> New-SCPortACL -Name "DemoACLManagedByNC" -Description "PortACL Example Managed by NC" -ManagedByN

Tworzenie listy ACL portów „DemPortACL” dla obiektów, które nie są zarządzane przez kontrolera sieci:

PS: C:\> New-SCPortACL -Name "DemoPortACL" -Description "Port ACL Example Non Managed by NC"

Definiowanie reguł listy ACL portów dla listy ACL portów

  1. Otwórz program PowerShell w programie VMM.
  2. Utwórz co najmniej jedną regułę przy użyciu polecenia cmdlet New-SCPortACLRule.

     New-SCPortACLrule -PortACL <PortACL> -Name <string> [-Description <string>] -Type <Inbound | Outbound> -Action <Allow | Deny> -Priority <uint16> -Protocol <Tcp | Udp | Any> [-LocalAddressPrefix <string: IPAddress | IPSubnet>] [-LocalPortRange <string:X|X-Y|Any>] [-RemoteAddressPrefix <string: IPAddress | IPSubnet>] [-RemotePortRange <string:X|X-Y|Any>]
    

Parametry

ParametrSzczegóły
Name, DescriptionNazwa i opis reguły.
TypOkreśla kierunek ruchu, do którego stosowana jest lista ACL (przychodzący lub wychodzący).
AkcjaOkreśla, czy lista ACL umożliwia lub blokuje ruch (Zezwalaj lub Odmów).
LocalAddressPrefixOkreśla źródłowy adres IP lub podsieć używaną do identyfikacji ruchu, który ma być filtrowany.
LocalPortRangeOkreśla źródłowy zakres portów używany do identyfikowania ruchu.
RemoteAddressPrefixOkreśla docelowy adres IP lub podsieć używaną do identyfikacji ruchu, który ma być filtrowany.
RemotePortRangeOkreśla docelowy zakres portów używany do identyfikowania ruchu.
ProtokółOkreśla protokół, dla którego jest stosowana reguła.
PriorytetOkreśla priorytet reguły na liście ACL portów. Reguły są stosowane w kolejności. Ustaw priorytet z zakresu od 1 do 65535, gdzie najniższa liczba ma najwyższy priorytet. Dla reguł list ACL portów dla obiektów zarządzanych przez kontrolera sieci należy ustawić wartość większą lub równą 100. Kontroler sieci nie obsługuje priorytetów niższych niż 100.

Przykłady

Tworzenie listy ACL portów i zapisanie obiektu w zmiennej $portACL:

PS: C:\> $portACL = New-SCPortACL -Name "RDP ACL" -Description "Acl on RDP access"

Tworzenie reguły listy ACL portów, aby umożliwić dostęp RDP z podsieci zdalnej:

PS: C:\> New-SCPortACLRule -Name "AllowRDPAccess" -PortACL $portACL -Description "Allow RDP Rule from a subnet" -Action Allow -Type Inbound -Priority 110 -Protocol Tcp -LocalPortRange 3389 -RemoteAddressPrefix 10.184.20.0/24

Modyfikowanie priorytetu reguły listy ACL:

PS: C:\> $portACLRule = Get-SCPortACLRule -Name "AllowRDPAccess" `` <br/><br/> `` PS: C:\> Set-SCPortACLRule -PortACLRule $portACLRule -Priority 220

Pierwsze polecenie pobiera regułę listy ACL portów „AllowRDPAccess”. Drugie polecenie zmienia priorytet reguły na 220.

Modyfikowanie reguły listy ACL portów dla docelowego zakresu adresów i protokołu dla reguły:

PS: C:\> $portACLRule = Get-SCPortACLRule -Name "AllowRDPAccess" `` <br/><br/> `` PS: C:\> Set-SCPortACLRule -PortACLRule $portACLRule -RemoteAddressPrefix 172.185.21.0/24 -Protocol Udp

Pierwsze polecenie pobiera regułę „AllowRDPAccess”. Drugie polecenie zmienia protokół na UDP i ustawia lokalizację docelową na podsieć 172.185.21.0/24.

Dołączanie i odłączanie list ACL portów

Listę ACL portów można dołączyć do ustawień globalnych, sieci maszyn wirtualnych, podsieci maszyn wirtualnych i wirtualnych kart sieciowych. Lista ACL portów dołączona do ustawień globalnych jest stosowana domyślnie do wszystkich wirtualnych kart sieciowych maszyny wirtualnej.

  1. Otwórz program PowerShell w programie VMM.
  2. Dołącz listę ACL portów przy użyciu polecenia cmdlet Set-SCVMMServer.

     Set-SCVMMServer –VMMServer <VMMServer> [-PortACL <NetworkAccessControlList> | -RemovePortACL ]
    

Parametry

ParametrSzczegóły
Serwer VMMNazwa serwera programu VMM, do którego jest stosowana lista ACL portów.
PortACLOpcjonalnie dołącza określoną listę ACL portów do ustawień globalnych.

Przykłady

Dołączanie listy ACL do ustawień globalnych:

Set-SCVMMServer -VMMServer "VMM.Contoso.Local" -PortACL $acl`` <br/><br/> ExampleL: `` Set-SCVMMServer -VMMServer "VMM.Contoso.Local" -PortACL $acl

Odłączanie listy ACL od ustawień globalnych:

Set-SCVMMServer -VMMServer "VMM.Contoso.Local" -RemovePortACL

Dołączanie listy ACL do sieci maszyn wirtualnych podczas jej tworzenia:

New-SCVMNetwork [–PortACL <NetworkAccessControlList>] [rest of the parameters]

Dołączanie listy ACL do istniejącej sieci maszyn wirtualnych:

Set-SCVMNetwork -PortACL $acl`

Dołączanie listy ACL do podsieci maszyn wirtualnych podczas jej tworzenia:

New-SCVMSubnet [–PortACL <NetworkAccessControlList>] [rest of the parameters]

Dołączanie listy ACL do istniejącej podsieci maszyn wirtualnych:

Set-SCVMSubnet [–PortACL <NetworkAccessControlList> | -RemovePortACL] [rest of the parameters]

Pobieranie i wyświetlanie list ACL portów i reguł

  1. Otwórz program PowerShell w programie VMM.
  2. Uruchom polecenie cmdlet Get-SCPortACL, aby pobrać i wyświetlić listę ACL portów:

     Get-SCPortACL [[-Name] <String> ] [-ID <Guid> ] [-OnBehalfOfUser <String> ] [-OnBehalfOfUserRole <UserRole> ] [-VMMServer <ServerConnection> ] [ <CommonParameters>]
    
  3. Uruchom polecenie cmdlet Get-SCPortACLRule, aby pobrać i wyświetlić regułę:

     Get-SCPortACLRule [-Name <String> ] [-ID <Guid> ] [-OnBehalfOfUser <String> ] [-OnBehalfOfUserRole <UserRole> ] [-PortACL <PortACL> ] [-VMMServer <ServerConnection> ] [ <CommonParameters>] 
    

Parametry

ParametrSzczegóły
Brak parametrówPobieranie wszystkich list ACL
Name/IDPobieranie przy użyciu nazwy lub identyfikatora GUID
OnBehalfOfUser/OnBehalfOfUserRoleUruchamianie polecenia przy użyciu roli lub nazwy użytkownika
VMMServerPobieranie listy ACL na określonym serwerze programu VMM
CommonParametersDowiedz się więcej

Przykłady

Pobieranie określonej listy ACL:

    PS: C:> $portACL = Get-SCPortACL -Name "DemoPortACL"

Pobieranie reguł dla określonej listy ACL:

    PS: C:> Get-SCPortACLRule -Name "AllowRDPAccess"

Pobieranie wszystkich reguł listy ACL:

    PS: C:> Get-SCPortACLRule -PortACL $portACL

Modyfikowanie list ACL portów i reguł

  1. Otwórz program PowerShell w programie VMM.
  2. Uruchom polecenie cmdlet Set-SCPortACL, aby zmodyfikować listę ACL portów:

     Set-SCPortACL [-PortACL] <PortACL> [[-Description] <String>] [-JobVariable <String>] [-Name <String>] [-OnBehalfOfUser <String>] [-OnBehalfOfUserRole <UserRole>] [-PROTipID <Guid>] [-RunAsynchronously] [-VMMServer <ServerConnection>] [<CommonParameters>]
    
  3. Uruchom polecenie cmdlet Remove-SCPortACL, aby usunąć listę ACL:

     Remove-SCPortACL [-PortACL] <PortACL> [-Confirm] [-JobVariable <String>] [-OnBehalfOfUser <String>] [-OnBehalfOfUserRole <UserRole>] [-PROTipID <Guid>] [-RunAsynchronously] [-VMMServer <ServerConnection>] [-WhatIf] [<CommonParameters>]
    

    Parametry

ParametrSzczegóły
Name/DescriptionNazwa i opis listy ACL portów
JobVariableZapisuje postęp zadania
OnBehalfOfUser/OnBehalfOfUserRoleUruchamia polecenie przy użyciu nazwy użytkownika lub roli.
ProTipIDIdentyfikator elementu ProTip, który wyzwolił akcję
RunAsynchronouslyWskazuje, czy zadanie jest uruchamiane asynchronicznie.
PotwierdzenieWyświetla monit przed uruchomieniem zadania.
WhatIfWyświetla wynik polecenia bez jego uruchamiania.

Przykłady

Ustawianie opisu listy ACL:

PS: C:> $portACL = Get-SCPortACL -Name "DemoPortACL"
PS: C:> Set-SCPortACL -PortACL $portACL -Description "Port ACL Example Non Managed by Network Controller"

Pierwsze polecenie cmdlet pobiera listę ACL, a drugie ustawia opis listy ACL.

Usuwanie listy ACL:

PS: C:> $portACL = Get-SCPortACL -Name "DemoPortACL"
PS: C:> Remove-SCPortACL -PortACL $portACL

Pierwsze polecenie cmdlet pobiera listę ACL, a drugie ją usuwa.

© 2017 Microsoft