Vytvoření správy seznamu řízení přístupu (ACL) pro externí sítě s izolací NNI a vrstvy 3
Seznamy řízení přístupu (ACL) jsou sada pravidel, která regulují příchozí a odchozí tok paketů v síti. Služba Azure Nexus Network Fabric nabízí mechanismus založený na rozhraní API pro konfiguraci seznamů ACL pro propojení mezi sítěmi a externí sítě izolace vrstvy 3. Tato příručka popisuje postup vytvoření seznamů ACL.
Vytváření seznamů řízení přístupu (ACL)
Pokud chcete vytvořit seznam ACL a definovat jeho vlastnosti, můžete tento příkaz využít az networkfabric acl create
. Tady jsou uvedené kroky:
Požadavky
Použijte prostředí Bash v Azure Cloud Shellu. Další informace najdete v tématu Rychlý start pro Bash v Azure Cloud Shellu.
Pokud dáváte přednost místnímu spouštění referenčních příkazů rozhraní příkazového řádku, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Docker. Další informace najdete v tématu Jak spustit Azure CLI v kontejneru Dockeru.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Pokud chcete dokončit proces ověřování, postupujte podle kroků zobrazených na terminálu. Další možnosti přihlášení najdete v tématu Přihlášení pomocí Azure CLI.
Po zobrazení výzvy nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Využití rozšíření v Azure CLI.
Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
- Nastavte předplatné (v případě potřeby):
Pokud máte více předplatných a potřebujete ho nastavit jako výchozí, můžete to udělat takto:
az account set --subscription <subscription-id>
- Vytvořit seznam ACL:
az networkfabric acl create --resource-group "<resource-group>" --location "<location>" --resource-name "<acl-name>" --annotation "<annotation>" --configuration-type "<configuration-type>" --default-action "<default-action>" --match-configurations "[{matchConfigurationName:<match-config-name>,sequenceNumber:<sequence-number>,ipAddressType:<IPv4/IPv6>,matchConditions:[{ipCondition:{type:<SourceIP/DestinationIP>,prefixType:<Prefix/Exact>,ipPrefixValues:['<ip-prefix1>', '<ip-prefix2>', ...]}}],actions:[{type:<Action>}]}]"
Parametr | Popis |
---|---|
Skupina prostředků | Zadejte skupinu prostředků síťové infrastruktury. |
Umístění | Definujte umístění, kde se vytvoří seznam ACL. |
Název prostředku | Zadejte název seznamu ACL. |
Poznámka | Volitelně můžete přidat popis nebo poznámku pro seznam ACL. |
Typ konfigurace | Určete, zda je konfigurace vložená, nebo pomocí souboru. |
Výchozí akce | Definujte výchozí akci, která se má provést, pokud nebyla nalezena žádná shoda. |
Shoda konfigurací | Definujte podmínky a akce pro porovnávání provozu. |
Akce | Zadejte akci, která se má provést na základě podmínek shody. |
Pokyny k použití parametrů
Následující tabulka obsahuje pokyny k použití parametrů při vytváření seznamů ACL:
Parametr | Popis | Příklad nebo oblast |
---|---|---|
defaultAction | Definuje výchozí akci, která se má provést. | "defaultAction": "Permit" |
resource-group | Skupina prostředků síťových prostředků infrastruktury | nfresourcegroup |
název prostředku | Název seznamu ACL | example-ingressACL |
vlanGroups | Seznam skupin sítě VLAN | |
sítě vlan | Seznam sítí VLAN, které se musí shodovat | |
konfigurace shody | Název konfigurace shody | example_acl |
matchConditions | Podmínky, které se musí shodovat | |
ttlValues | TTL [Time To Live] | 0-255 |
dscpMarking | Označení DSCP, která se musí shodovat | 0-63 |
fargments | Zadání paketů fragmentu PROTOKOLU IP | Rozsah: 1-8191 Příklad: [1, 5, 1250-1300, 8000-8191] |
portCondition | Podmínka portu, která se musí shodovat | |
portType | Typ portu, který se musí shodovat | Příklad: SourcePort |
ports | Číslo portu, které se musí shodovat | Rozsah: 0-65535 Příklad: [1, 10, 500, 1025-1050, 64000-65535] |
protocolTypes | Protokoly, které se musí shodovat | [tcp, udp, rozsah[1–2, 1, 2]] |
vlanMatchCondition | Podmínka shody sítě VLAN, která se musí shodovat | |
layer4Protocol | Protokol vrstvy 4 | musí být TCP nebo UDP. |
ipCondition | Podmínka PROTOKOLU IP, která se musí shodovat | |
akce | Akce, která se má provést na základě podmínky shody | Příklad: povolení |
typ konfigurace | Typ konfigurace (vložený nebo soubor) | Příklad: vložený |
Poznámka:
- Vložené porty a vložené sítě VLAN jsou staticky definované pomocí azcli.
- PortGroupNames a VlanGroupNames jsou dynamicky definované.
- Kombinování vložených portů s portGroupNames není povolené, podobně pro vložené sítě VLAN a VLANGroupNames.
- IpGroupNames a IpPrefixValues nelze kombinovat.
- Seznamy ACL výchozího přenosu dat nepodporují určité možnosti, jako jsou možnosti PROTOKOLU IP, délka IP adresy, fragment, ether-type, označení DSCP a hodnoty TTL.
- Seznamy ACL příchozího přenosu dat nepodporují následující možnosti: etherType.
- Vstupy portů mohou být
port-number
neborange-of-ports
. - Vstupy fragmentů mohou být
port-number
neborange-of-ports
. - Seznam ACL s dynamickou konfigurací shody v nekonečných sítích se nepodporuje.
Příklad datové části pro vytvoření seznamu ACL
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:example-match,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}]}]"
Příklad výstupu
{
"administrativeState": "Disabled",
"annotation": "annotation",
"configurationState": "Succeeded",
"configurationType": "Inline",
"defaultAction": "Deny",
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/Fab3LabNF-4-0/providers/Microsoft.ManagedNetworkFabric/accessControlLists/L3domain091123-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": "example-Ipv4ingressACL ",
"sequenceNumber": 1110
}
],
"name": "example-Ipv4ingressACL",
"provisioningState": "Succeeded",
"resourceGroup": "Fab3LabNF-4-0",
"systemData": {
"createdAt": "2023-09-11T10:20:20.2617941Z",
"createdBy": "user@email.com",
"createdByType": "User",
"lastModifiedAt": "2023-09-11T10:20:20.2617941Z",
"lastModifiedBy": "user@email.com",
"lastModifiedByType": "User"
},
"type": "microsoft.managednetworkfabric/accesscontrollists"
}
Poznámka:
Po vytvoření seznamu ACL nezapomeňte si poznamenejte REFERENČNÍ ID seznamu ACL pro další odkaz.