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:
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.
Lampirkan port ACL ke pengaturan global. Ini menerapkan ACL ke semua adaptor jaringan virtual VM.
Lampirkan ACL port ke jaringan VM, subnet VM, atau adaptor jaringan virtual VM.
Mengelola aturan ACL port.
Membuat ACL port
Buka PowerShell di VMM.
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
Buka PowerShell di VMM.
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.
Buka PowerShell di VMM.
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
Buka PowerShell di VMM.
Jalankan cmdlet Get-SCPortACL , untuk mengambil dan melihat port ACL:
Get-SCPortACL [[-Name] <String> ] [-ID <Guid> ] [-OnBehalfOfUser <String> ] [-OnBehalfOfUserRole <UserRole> ] [-VMMServer <ServerConnection> ] [ <CommonParameters>]
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
Buka PowerShell di VMM.
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>]
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.