Membuat ACL pada NNI di Azure Operator Nexus
Di Azure Operator Nexus, daftar kontrol akses (ACL) untuk Permit
dan Deny
tindakan pada tingkat interkoneksi jaringan-ke-jaringan (NNI) membantu melindungi akses Secure Shell (SSH) pada jaringan privat virtual (VPN) manajemen. Anda membuat ACL masuk dan keluar sebelum pembuatan sumber daya NNI lalu mereferensikan ACL tersebut dalam payload NNI. Anda perlu membuat ACL masuk dan keluar yang direferensikan sebelum Anda menyediakan fabric jaringan.
Ini adalah langkah-langkah tingkat tinggi untuk membuat ACL pada NNI:
- Buat ACL masuk dan keluar NNI.
- Perbarui referensi sumber daya Azure Resource Manager dalam NNI manajemen.
- Buat NNI dan provisikan kain jaringan.
Panduan penggunaan parameter
Parameter | Deskripsi | Contoh atau rentang |
---|---|---|
defaultAction |
Tindakan default yang akan diambil. Jika Anda tidak menentukannya, lalu lintas diizinkan. | "defaultAction": "Permit" |
resource-group |
Grup sumber daya dari fabric jaringan. | nfresourcegroup |
resource-name |
Nama ACL. | example-ingressACL |
vlanGroups |
Daftar grup jaringan area lokal virtual (VLAN). | |
vlans |
Daftar VLAN yang perlu dicocokkan. | |
match-configurations |
Nama konfigurasi kecocokan. | example_acl . Spasi dan karakter ampersand (&) tidak didukung. |
matchConditions |
Kondisi yang diperlukan untuk dicocokkan. | |
ttlValues |
Time to live (TTL). | 0 -255 |
dscpMarking |
Penandaan Titik Kode Layanan Diferensiasi (DSCP) yang perlu dicocokkan. | 0 -63 |
portCondition |
Kondisi port yang perlu dicocokkan. | |
portType |
Jenis port yang perlu dicocokkan. | Contoh: SourcePort . Nilai yang diizinkan: DestinationPort , SourcePort . |
protocolTypes |
Protokol yang perlu dicocokkan. | [tcp, udp, range[1-2, 1, 2]] . Jika itu adalah nomor protokol, itu harus dalam rentang 1 -255 . |
vlanMatchCondition |
Kondisi kecocokan VLAN yang perlu dicocokkan. | |
layer4Protocol |
Protokol Lapisan 4. | Harus berupa TCP atau UDP . |
ipCondition |
Kondisi IP yang perlu dicocokkan. | |
actions |
Tindakan yang akan diambil berdasarkan kondisi kecocokan. | Contoh: permit . |
configuration-type |
Jenis konfigurasi, yang dapat sebaris atau file. Saat ini, Azure Operator Nexus hanya mendukung sebaris. | Contoh: inline . |
Anda juga harus mengetahui pembatasan ini:
- Port sebaris dan VLAN sebaris adalah cara statis untuk menentukan port atau VLAN dengan menggunakan
azcli
. portGroupNames
danvlanGroupNames
merupakan cara dinamis untuk menentukan port dan VLAN.- Port sebaris dan
portGroupNames
bersama-sama tidak diizinkan. - VLAN sebaris dan
vlanGroupNames
bersama-sama tidak diizinkan. ipGroupNames
danipPrefixValues
bersama-sama tidak diizinkan.- ACL Keluar tidak mendukung opsi IP, panjang IP, fragmen, EtherType, penandaan DSCP, atau nilai TTL.
- ACL Ingress tidak mendukung opsi EtherType.
Membuat ACL ingress
Untuk membuat ACL ingress, Anda bisa menggunakan perintah Azure CLI berikut. Perintah ini membuat ACL ingress dengan konfigurasi yang ditentukan dan memberikan hasil yang diharapkan sebagai output. Sesuaikan parameter sesuai kebutuhan untuk kasus penggunaan Anda.
az networkfabric acl create
--resource-group "example-rg"
--location "eastus2euap"
--resource-name "example-Ipv4ingressACL"
--configuration-type "Inline"
--default-action "Permit"
--dynamic-match-configurations "[{ipGroups:[{name:'example-ipGroup',ipAddressType:IPv4,ipPrefixes:['10.20.3.1/20']}],vlanGroups:[{name:'example-vlanGroup',vlans:['20-30']}],portGroups:[{name:'example-portGroup',ports:['100-200']}]}]"
--match-configurations "[{matchConfigurationName:'example-match',sequenceNumber:123,ipAddressType:IPv4,matchConditions:[{etherTypes:['0x1'],fragments:['0xff00-0xffff'],ipLengths:['4094-9214'],ttlValues:[23],dscpMarkings:[32],portCondition:{flags:[established],portType:SourcePort,layer4Protocol:TCP,ports:['1-20']},protocolTypes:[TCP],vlanMatchCondition:{vlans:['20-30'],innerVlans:[30]},ipCondition:{type:SourceIP,prefixType:Prefix,ipPrefixValues:['10.20.20.20/12']}}],actions:[{type:Count,counterName:'example-counter'}]}]"
Output yang diharapkan
{
"properties": {
"lastSyncedTime": "2023-06-17T08:56:23.203Z",
"configurationState": "Succeeded",
"provisioningState": "Accepted",
"administrativeState": "Enabled",
"annotation": "annotation",
"configurationType": "File",
"aclsUrl": "https://ACL-Storage-URL",
"matchConfigurations": [{
"matchConfigurationName": "example-match",
"sequenceNumber": 123,
"ipAddressType": "IPv4",
"matchConditions": [{
"etherTypes": ["0x1"],
"fragments": ["0xff00-0xffff"],
"ipLengths": ["4094-9214"],
"ttlValues": [23],
"dscpMarkings": [32],
"portCondition": {
"flags": ["established"],
"portType": "SourcePort",
"l4Protocol": "TCP",
"ports": ["1-20"],
"portGroupNames": ["example-portGroup"]
},
"protocolTypes": ["TCP"],
"vlanMatchCondition": {
"vlans": ["20-30"],
"innerVlans": [30],
"vlanGroupNames": ["example-vlanGroup"]
},
"ipCondition": {
"type": "SourceIP",
"prefixType": "Prefix",
"ipPrefixValues": ["10.20.20.20/12"],
"ipGroupNames": ["example-ipGroup"]
}
}]
}],
"actions": [{
"type": "Count",
"counterName": "example-counter"
}]
},
"tags": {
"keyID": "KeyValue"
},
"location": "eastUs",
"id": "/subscriptions/xxxxxx/resourceGroups/resourcegroupname/providers/Microsoft.ManagedNetworkFabric/accessControlLists/acl",
"name": "example-Ipv4ingressACL",
"type": "microsoft.managednetworkfabric/accessControlLists",
"systemData": {
"createdBy": "email@address.com",
"createdByType": "User",
"createdAt": "2023-06-09T04:51:41.251Z",
"lastModifiedBy": "UserId",
"lastModifiedByType": "User",
"lastModifiedAt": "2023-06-09T04:51:41.251Z"
}
}
Membuat ACL keluar
Untuk membuat ACL keluar, Anda bisa menggunakan perintah Azure CLI berikut. Perintah ini membuat ACL keluar dengan konfigurasi yang ditentukan dan memberikan hasil yang diharapkan sebagai output. Sesuaikan parameter sesuai kebutuhan untuk kasus penggunaan Anda.
az networkfabric acl create
--resource-group "example-rg"
--location "eastus2euap"
--resource-name "example-Ipv4egressACL"
--configuration-type "File"
--acls-url "https://ACL-Storage-URL"
--default-action "Permit"
--dynamic-match-configurations "[{ipGroups:[{name:'example-ipGroup',ipAddressType:IPv4,ipPrefixes:['10.20.3.1/20']}],vlanGroups:[{name:'example-vlanGroup',vlans:['20-30']}],portGroups:[{name:'example-portGroup',ports:['100-200']}]}]"
Output yang diharapkan
{
"properties": {
"lastSyncedTime": "2023-06-17T08:56:23.203Z",
"configurationState": "Succeeded",
"provisioningState": "Accepted",
"administrativeState": "Enabled",
"annotation": "annotation",
"configurationType": "File",
"aclsUrl": "https://ACL-Storage-URL",
"dynamicMatchConfigurations": [{
"ipGroups": [{
"name": "example-ipGroup",
"ipAddressType": "IPv4",
"ipPrefixes": ["10.20.3.1/20"]
}],
"vlanGroups": [{
"name": "example-vlanGroup",
"vlans": ["20-30"]
}],
"portGroups": [{
"name": "example-portGroup",
"ports": ["100-200"]
}]
}]
},
"tags": {
"keyID": "KeyValue"
},
"location": "eastUs",
"id": "/subscriptions/xxxxxx/resourceGroups/resourcegroupname/providers/Microsoft.ManagedNetworkFabric/accessControlLists/acl",
"name": "example-Ipv4egressACL",
"type": "microsoft.managednetworkfabric/accessControlLists",
"systemData": {
"createdBy": "email@address.com",
"createdByType": "User",
"createdAt": "2023-06-09T04:51:41.251Z",
"lastModifiedBy": "UserId",
"lastModifiedByType": "User",
"lastModifiedAt": "2023-06-09T04:51:41.251Z"
}
}
Memperbarui referensi Resource Manager
Langkah ini memungkinkan pembuatan ACL (masuk dan keluar jika referensi disediakan) selama pembuatan sumber daya NNI. Setelah Membuat NNI dan sebelum memprovisikan fabric jaringan, Anda dapat melakukan re-put pada NNI.
ingressAclId
: ID referensi untuk ACL ingress.egressAclId
: ID referensi untuk ACL keluar.
Untuk mendapatkan ID sumber daya Resource Manager, buka grup sumber daya langganan yang Anda gunakan.
Perintah berikut memperbarui referensi Resource Manager untuk sumber daya NNI dengan mengaitkannya dengan ACL masuk dan keluar yang disediakan. Sesuaikan parameter sesuai kebutuhan untuk kasus penggunaan Anda.
az networkfabric nni create
--resource-group "example-rg"
--fabric "example-fabric"
--resource-name "example-nniwithACL"
--nni-type "CE"
--is-management-type "True"
--use-option-b "True"
--layer2-configuration "{interfaces:['/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkDevices/example-networkDevice/networkInterfaces/example-interface'],mtu:1500}"
--option-b-layer3-configuration "{peerASN:28,vlanId:501,primaryIpv4Prefix:'10.18.0.124/30',secondaryIpv4Prefix:'10.18.0.128/30',primaryIpv6Prefix:'10:2:0:124::400/127',secondaryIpv6Prefix:'10:2:0:124::402/127'}"
--ingress-acl-id "/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/accesscontrollists/example-Ipv4ingressACL"
--egress-acl-id "/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/accesscontrollists/example-Ipv4egressACL"
Tampilkan detail ACL
Untuk menampilkan detail ACL tertentu, gunakan perintah berikut:
az networkfabric acl show --resource-group "example-rg" --resource-name "example-acl"
Daftar ACL
Untuk mencantumkan semua ACL dalam grup sumber daya tertentu, gunakan perintah berikut:
az networkfabric acl list --resource-group "ResourceGroupName"
Membuat ACL di jaringan eksternal ISD
Gunakan informasi berikut untuk membuat ACL masuk dan keluar untuk jaringan eksternal domain isolasi (ISD). Kemudian, perbarui referensi sumber daya Resource Manager untuk jaringan eksternal.
Membuat ACL keluar untuk jaringan eksternal ISD
Untuk membuat ACL keluar untuk jaringan eksternal ISD yang ditentukan dengan konfigurasi yang disediakan, gunakan perintah berikut. Sesuaikan parameter sesuai kebutuhan untuk kasus penggunaan Anda.
az networkfabric acl create
--resource-group "example-rg"
--location "eastus2euap"
--resource-name "example-Ipv4egressACL"
--annotation "annotation"
--configuration-type "Inline"
--default-action "Deny"
--match-configurations "[{matchConfigurationName:'L3ISD_EXT_OPTA_EGRESS_ACL_IPV4_CE_PE',sequenceNumber:1110,ipAddressType:IPv4,matchConditions:[{ipCondition:{type:SourceIP,prefixType:Prefix,ipPrefixValues:['10.18.0.124/30','10.18.0.128/30','10.18.30.16/30','10.18.30.20/30']}},{ipCondition:{type:DestinationIP,prefixType:Prefix,ipPrefixValues:['10.18.0.124/30','10.18.0.128/30','10.18.30.16/30','10.18.30.20/30']}}],actions:[{type:Count}]}]"
Output yang diharapkan
Setelah eksekusi berhasil, perintah mengembalikan informasi tentang ACL yang dibuat dalam format berikut. Output ini mencakup detail tentang konfigurasi dan status.
{
"administrativeState": "Disabled",
"annotation": "annotation",
"configurationState": "Succeeded",
"configurationType": "Inline",
"defaultAction": "Deny",
"id": "/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/accessControlLists/example-Ipv4egressACL",
"location": "eastus2euap",
"matchConfigurations": [
{
"actions": [
{
"type": "Count"
}
],
"ipAddressType": "IPv4",
"matchConditions": [
{
"ipCondition": {
"ipPrefixValues": [
"10.18.0.124/30",
"10.18.0.128/30",
"10.18.30.16/30",
"10.18.30.20/30"
],
"prefixType": "Prefix",
"type": "SourceIP"
}
},
{
"ipCondition": {
"ipPrefixValues": [
"10.18.0.124/30",
"10.18.0.128/30",
"10.18.30.16/30",
"10.18.30.20/30"
],
"prefixType": "Prefix",
"type": "DestinationIP"
}
}
],
"matchConfigurationName": "L3ISD_EXT_OPTA_EGRESS_ACL_IPV4_CE_PE",
"sequenceNumber": 1110
}
],
"name": "example-Ipv4egressACL",
"provisioningState": "Succeeded",
"resourceGroup": "example-rg",
"systemData": {
"createdAt": "2023-09-11T10:20:20.2617941Z",
"createdBy": "email@address.com",
"createdByType": "User",
"lastModifiedAt": "2023-09-11T10:20:20.2617941Z",
"lastModifiedBy": "email@address.com",
"lastModifiedByType": "User"
},
"type": "microsoft.managednetworkfabric/accesscontrollists"
}
Membuat ACL ingress untuk jaringan eksternal ISD
Untuk membuat ACL ingress untuk jaringan eksternal ISD yang ditentukan dengan konfigurasi yang disediakan, gunakan perintah berikut. Sesuaikan parameter sesuai kebutuhan untuk kasus penggunaan Anda.
az networkfabric acl create
--resource-group "example-rg"
--location "eastus2euap"
--resource-name "example-Ipv4ingressACL"
--annotation "annotation"
--configuration-type "Inline"
--default-action "Deny"
--match-configurations "[{matchConfigurationName:'L3ISD_EXT_OPTA_INGRESS_ACL_IPV4_CE_PE',sequenceNumber:1110,ipAddressType:IPv4,matchConditions:[{ipCondition:{type:SourceIP,prefixType:Prefix,ipPrefixValues:['10.18.0.124/30','10.18.0.128/30','10.18.30.16/30','10.18.30.20/30']}},{ipCondition:{type:DestinationIP,prefixType:Prefix,ipPrefixValues:['10.18.0.124/30','10.18.0.128/30','10.18.30.16/30','10.18.30.20/30']}}],actions:[{type:Count}]}]"
Output yang diharapkan
Setelah eksekusi berhasil, perintah mengembalikan informasi tentang ACL yang dibuat dalam format berikut. Output ini mencakup detail tentang konfigurasi dan status.
{
"administrativeState": "Disabled",
"annotation": "annotation",
"configurationState": "Succeeded",
"configurationType": "Inline",
"defaultAction": "Deny",
"id": "/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/accessControlLists/example-Ipv4ingressACL",
"location": "eastus2euap",
"matchConfigurations": [
{
"actions": [
{
"type": "Count"
}
],
"ipAddressType": "IPv4",
"matchConditions": [
{
"ipCondition": {
"ipPrefixValues": [
"10.18.0.124/30",
"10.18.0.128/30",
"10.18.30.16/30",
"10.18.30.20/30"
],
"prefixType": "Prefix",
"type": "SourceIP"
}
},
{
"ipCondition": {
"ipPrefixValues": [
"10.18.0.124/30",
"10.18.0.128/30",
"10.18.30.16/30",
"10.18.30.20/30"
],
"prefixType": "Prefix",
"type": "DestinationIP"
}
}
],
"matchConfigurationName": "L3ISD_EXT_OPTA_INGRESS_ACL_IPV4_CE_PE",
"sequenceNumber": 1110
}
],
"name": "example-Ipv4ingressACL",
"provisioningState": "Succeeded",
"resourceGroup": "example-rg",
"systemData": {
"createdAt": "2023-09-11T10:20:20.2617941Z",
"createdBy": "email@address.com",
"createdByType": "User",
"lastModifiedAt": "2023-09-11T10:27:27.2317467Z",
"lastModifiedBy": "email@address.com",
"lastModifiedByType": "User"
},
"type": "microsoft.managednetworkfabric/accesscontrollists"
}
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk