Bagikan melalui


Mengelola ACL port di VMM

Penting

Versi Virtual Machine Manager (VMM) ini telah mencapai akhir dukungan. Kami menyarankan Anda untuk meningkatkan ke VMM 2022.

Di System Center - Virtual Machine Manager (VMM), Anda dapat mengonfigurasi dan mengelola daftar kontrol akses port Hyper-V (ACL) secara terpusat. ACL port dapat dikonfigurasi untuk fabric yang dikelola Pengontrol Jaringan dan untuk jaringan yang tidak dikelola oleh Pengontrol Jaringan.

  • Port ACL adalah seperangkat aturan yang memfilter lalu lintas di tingkat port lapisan 2. Port ACL di VMM memfilter akses ke objek VMM tertentu. Objek jaringan tidak boleh memiliki lebih dari satu port ACL yang terpasang.
  • ACL berisi aturan dan dapat dilampirkan ke sejumlah objek jaringan. Anda dapat membuat ACL tanpa aturan, lalu menambahkan aturan di lain waktu. Setiap aturan ACL hanya sesuai dengan satu port ACL.
  • Jika ACL memiliki beberapa aturan, aturan diterapkan berdasarkan prioritas. Setelah aturan cocok dengan kriteria dan diterapkan, tidak ada aturan lain yang diproses.
  • ACL port pengaturan global diterapkan ke semua adaptor jaringan virtual VM dalam infrastruktur. Tidak ada jenis objek terpisah untuk pengaturan global. Sebagai gantinya, port pengaturan global ACL dilampirkan ke server manajemen VMM.
  • Pengaturan Port ACL hanya diekspos melalui cmdlet PowerShell di VMM dan tidak dapat dikonfigurasi di konsol VMM.
  • ACL port dapat diterapkan ke:
    • Subnet dan adaptor virtual dalam penyebaran Pengontrol Jaringan.
    • Subnet virtual, adaptor jaringan, jaringan VM, dan server manajemen VMM di jaringan yang tidak dikelola oleh Pengontrol Jaringan.

Sebelum memulai

  • Untuk menerapkan ACL ke objek yang dikelola oleh Pengontrol Jaringan, Anda menggunakan bendera ManagedByNC , dan mengaturnya ke True. Jika tidak diatur ke True, ACL hanya berlaku untuk objek jaringan yang tidak dikelola oleh Pengontrol Jaringan.
  • Jenis ACL tidak dapat dipertukarkan. Anda tidak dapat menerapkan ACL dengan ManagedByNC diatur ke false, ke objek yang dikelola oleh Pengontrol Jaringan dan sebaliknya.
  • Perbedaan utama antara kedua jenis ACL ini adalah Anda perlu memulihkan setiap adaptor jaringan setelah menerapkan ACL pada objek yang tidak dikelola oleh Pengontrol Jaringan.
  • Ada juga perbedaan dalam rentang prioritas:
    • ACL port Hyper-V (tidak dikelola oleh Pengontrol Jaringan): 1 - 65535
    • ACL port SDN (dikelola oleh Pengontrol Jaringan): 1 - 64500
  • Anda memerlukan izin admin VMM penuh untuk melampirkan port ACL ke pengaturan global. Untuk melampirkan ACL ke objek VMM (jaringan VM, subnet, adaptor jaringan virtual), Anda harus menjadi admin VMM atau admin penyewa atau pengguna layanan mandiri.

Skenario yang tidak didukung

Berikut adalah daftar skenario yang tidak didukung:

  • Kelola aturan individual untuk satu instans, saat ACL dibagikan dengan beberapa instans. Semua aturan dikelola secara terpusat dalam ACL induknya, dan berlaku di mana pun ACL dilampirkan.
  • Lampirkan lebih dari satu ACL ke entitas.
  • Terapkan ACL port ke adaptor jaringan virtual n partisi induk Hyper-V (sistem operasi manajemen).
  • Buat aturan ACL port di VMM yang menyertakan protokol tingkat IP (selain TCP atau UDP). Protokol lain masih didukung secara asli oleh Hyper-V.
  • Terapkan ACL port ke jaringan logis, situs jaringan (definisi jaringan logis), VLAN subnet, dan objek jaringan VMM lainnya yang tidak disebutkan sebagai didukung.

Langkah penyebaran

Gunakan antarmuka VMM PowerShell untuk melakukan hal berikut:

  1. Tentukan ACL dan aturan port.

    • Aturan diterapkan ke port sakelar virtual di server Hyper-V sebagai "ACL port yang diperluas" (VMNetworkAdapterExtendedAcl). Ini berarti bahwa mereka hanya dapat berlaku untuk host yang menjalankan Windows Server 2012 R2 atau yang lebih baru, karena VMM tidak membuat ACL port Hyper-V warisan (VMNetworkAdapterAcl) untuk versi yang lebih lama.
    • Aturan diterapkan ke port sakelar virtual di server Hyper-V sebagai "ACL port yang diperluas" (VMNetworkAdapterExtendedAcl). Ini berarti bahwa mereka hanya dapat berlaku untuk host yang menjalankan Windows Server 2016 atau yang lebih baru karena VMM tidak membuat ACL port Hyper-V warisan (VMNetworkAdapterAcl) untuk versi yang lebih lama.
    • Semua aturan ACL port yang ditentukan dalam VMM bersifat stateful untuk TCP. Anda tidak dapat membuat aturan ACL TCP stateless.
  2. Lampirkan port ACL ke pengaturan global. Ini menerapkan ACL ke semua adaptor jaringan virtual VM.

  3. Lampirkan ACL port ke jaringan VM, subnet VM, atau adaptor jaringan virtual VM.

  4. Mengelola aturan ACL port.

Membuat ACL port

  1. Buka PowerShell di VMM.

  2. Buat port ACL dengan 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>]
    

Parameter

Parameter Detail
Nama; Deskripsi Nama dan deskripsi Port ACL
JobVariable Menyimpan kemajuan pekerjaan
ManagedByNC Menentukan apakah objek dikelola oleh Pengontrol Jaringan
OnBehalfOfUser/OnBehalfOfRole Menjalankan pekerjaan dengan nama atau peran pengguna
Pemilik Menentukan pemilik objek VMM dalam bentuk akun pengguna domain yang valid. Contoh: Contoso\PattiFuller atau PattiFuller@Contoso
ProTipID ID ProTip yang memicu tindakan
RunAsychronously Menunjukkan apakah pekerjaan berjalan secara asinkron
UserRole Menentukan peran pengguna
VMMServer Menentukan server VMM
CommonParameters Pelajari lebih lanjut

Contoh

Buat port ACL untuk objek yang dikelola oleh Pengontrol Jaringan "DemoACLManagedByNC":

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

Buat port ACL untuk objek yang tidak dikelola Pengontrol Jaringan "DemPortACL":

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

Menentukan aturan ACL port untuk port ACL

  1. Buka PowerShell di VMM.

  2. Buat satu atau beberapa aturan dengan 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>]
    

Parameter

Parameter Detail
Nama, Deskripsi Nama dan deskripsi aturan
Jenis Menentukan arah lalu lintas tempat ACL diterapkan (Masuk atau Keluar)
Tindakan Menentukan apakah ACL mengizinkan atau memblokir lalu lintas (Izinkan atau Tolak)
LocalAddressPrefix Menentukan alamat IP sumber atau subnet yang digunakan untuk mengidentifikasi lalu lintas yang harus difilter.
LocalPortRange Menentukan rentang port sumber yang digunakan untuk mengidentifikasi lalu lintas.
RemoteAddressPrefix Menentukan alamat IP tujuan atau subnet yang digunakan untuk mengidentifikasi lalu lintas untuk pemfilteran.
RemotePortRange Menentukan rentang port tujuan yang digunakan untuk mengidentifikasi lalu lintas.
Protokol Menentukan protokol tempat aturan diterapkan.
Prioritas Tentukan prioritas aturan dalam port ACL. Aturan diterapkan sesuai urutan. Tetapkan prioritas antara 1 dan 65535, di mana angka terendah memiliki prioritas tertinggi. Aturan ACL port untuk objek yang dikelola oleh Pengontrol Jaringan harus diatur sama dengan atau lebih besar dari 100. Pengontrol Jaringan tidak mendukung prioritas di bawah 100.

Contoh

Buat port ACL dan simpan objek di $portACL:

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

Buat aturan ACL port untuk mengizinkan akses RDP dari subnet jarak jauh:

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

Ubah prioritas aturan ACL:

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

Perintah pertama mendapatkan aturan ACL port "AllowRDPAccess". Perintah kedua mengubah prioritas aturan menjadi 220.

Ubah aturan ACL port untuk rentang alamat tujuan dan protokol untuk aturan:

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

Perintah pertama mengambil aturan "AllowRDPAccess". Yang kedua mengubah protokol menjadi UDP, dan mengatur tujuan ke subnet 172.185.21.0/24.

Lampirkan dan lepaskan ACL port

Port ACL dapat dilampirkan ke pengaturan global, jaringan VM, subnet VM, dan adaptor jaringan virtual. Port ACL yang dilampirkan ke pengaturan global berlaku secara default ke semua adaptor jaringan virtual VM.

  1. Buka PowerShell di VMM.

  2. Lampirkan ACL portal menggunakan cmdlet Set-SCVMMServer .

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

Parameter

Parameter Detail
Server VMM Nama server VMM tempat port ACL diterapkan.
PortACL Secara opsional melampirkan port ACL yang ditentukan ke pengaturan global.

Contoh

Lampirkan ACL ke pengaturan global:

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

Lepaskan ACL dari pengaturan global:

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

Lampirkan ACL ke jaringan VM selama pembuatan:

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

Lampirkan ACL ke jaringan VM yang ada:

Set-SCVMNetwork -PortACL $acl`

Lampirkan ACL ke subnet VM selama pembuatan:

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

Lampirkan ACL ke subnet VM yang sudah ada:

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

Mengambil dan melihat ACL dan aturan port

  1. Buka PowerShell di VMM.

  2. Jalankan cmdlet Get-SCPortACL , untuk mengambil dan melihat port ACL:

    Get-SCPortACL [[-Name] <String> ] [-ID <Guid> ] [-OnBehalfOfUser <String> ] [-OnBehalfOfUserRole <UserRole> ] [-VMMServer <ServerConnection> ] [ <CommonParameters>]
    
  3. Jalankan Get-SCPortACLRule untuk mengambil dan melihat aturan:

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

Parameter

Parameter Detail
Tidak ada parameter Mengambil semua ACL
Nama/ID Ambil berdasarkan nama atau GUID
OnBehalfOfUser/OnBehalfOfUserRole Jalankan dengan nama pengguna atau peran
VMMServer Mengambil ACL di server VMM tertentu
CommonParameters Pelajari lebih lanjut

Contoh

Ambil ACL tertentu:

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

Dapatkan aturan untuk ACL tertentu:

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

Dapatkan semua aturan untuk ACL:

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

Mengubah ACL dan aturan port

  1. Buka PowerShell di VMM.

  2. Jalankan cmdlet Set-SCPortACL , untuk memodifikasi port ACL:

    Set-SCPortACL [-PortACL] <PortACL> [[-Description] <String>] [-JobVariable <String>] [-Name <String>] [-OnBehalfOfUser <String>] [-OnBehalfOfUserRole <UserRole>] [-PROTipID <Guid>] [-RunAsynchronously] [-VMMServer <ServerConnection>] [<CommonParameters>]
    
  3. Jalankan Remove-SCPortACL untuk menghapus ACL:

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

    Parameter

Parameter Detail
Nama/Deskripsi Nama dan deskripsi port ACL
JobVariable Menyimpan kemajuan pekerjaan
OnBehalfOfUser/OnBehalfOfUserRole Jalankan dengan nama pengguna atau peran.
ProTipID ID ProTip yang memicu tindakan
RunAsynchronously Menunjukkan apakah pekerjaan berjalan secara asinkron.
Konfirmasikan Perintah sebelum menjalankan pekerjaan
WhatIf Memperlihatkan apa yang terjadi tanpa menjalankan perintah

Contoh

Atur deskripsi ACL:

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

Cmdlet pertama mengambil ACL, yang kedua menetapkan deskripsi pada ACL.

Menghapus ACL:

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

Cmdlet pertama mengambil ACL, yang kedua menghapusnya.