Dela via


Skapa ACL-hantering (Access Control List) för externa nätverk för NNI- och layer 3-isoleringsdomäner

Åtkomstkontrollistor (ACL) är en uppsättning regler som reglerar inkommande och utgående paketflöden i ett nätverk. Azures Nexus Network Fabric-tjänst erbjuder en API-baserad mekanism för att konfigurera ACL:er för nätverks-till-nätverk-sammanlänkningar och externa nätverk för layer 3-isoleringsdomäner. Den här guiden beskriver stegen för att skapa ACL:er.

Skapa åtkomstkontrollistor (ACL: er)

Om du vill skapa en ACL och definiera dess egenskaper kan du använda az networkfabric acl create kommandot . Nedan följer de steg som ingår:

Förutsättningar

  1. Ange prenumeration (om det behövs):

Om du har flera prenumerationer och behöver ange en som standard kan du göra det med:

az account set --subscription <subscription-id>
  1. Skapa 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>}]}]"
Parameter Description
Resursgrupp Ange resursgruppen för nätverksinfrastrukturen.
Plats Definiera platsen där ACL:en skapas.
Resursnamn Ange ett namn för ACL:en.
Annotation Du kan också lägga till en beskrivning eller anteckning för ACL.
Konfigurationstyp Ange om konfigurationen är infogad eller med hjälp av en fil.
Standardåtgärd Definiera den standardåtgärd som ska vidtas om ingen matchning hittas.
Matcha konfigurationer Definiera villkor och åtgärder för trafikmatchning.
Åtgärder Ange vilken åtgärd som ska vidtas baserat på matchningsvillkor.

Vägledning för användning av parametrar

Tabellen nedan innehåller vägledning om användningen av parametrar när du skapar ACL:er:

Parameter Description Exempel eller intervall
defaultAction Definierar standardåtgärd som ska vidtas "defaultAction": "Permit" (Tillåt)
resource-group Resursgrupp för nätverksinfrastruktur nfresourcegroup
resource-name Namn på ACL example-ingressACL
vlanGroups Lista över VLAN-grupper
vlans Lista över virtuella lokala nätverk som måste matchas
match-configurations Namn på matchningskonfiguration example_acl
matchConditions Villkor som måste matchas
ttlValues TTL [Time To Live] 0-255
dscpMarking DSCP-markeringar som måste matchas 0-63
fargments Ange IP-fragmentpaketen Intervall: 1-8191
Exempel: [1, 5, 1250-1300, 8000-8191]
portCondition Portvillkor som måste matchas
portType Porttyp som måste matchas Exempel: SourcePort
ports Portnummer som måste matchas Intervall: 0-65535
Exempel: [1, 10, 500, 1025-1050, 64000-65535]
protocolTypes Protokoll som måste matchas [tcp, udp, range[1-2, 1, 2]]
vlanMatchCondition VLAN-matchningsvillkor som måste matchas
layer4Protocol Layer 4-protokoll bör vara TCP eller UDP
ipCondition IP-villkor som måste matchas
åtgärder Åtgärder som ska vidtas baserat på matchningsvillkor Exempel: tillstånd
configuration-type Konfigurationstyp (infogad eller fil) Exempel: infogad

Kommentar

  • Infogade portar och infogade VLAN definieras statiskt med azcli.
  • PortGroupNames och VlanGroupNames definieras dynamiskt.
  • Det är inte tillåtet att kombinera infogade portar med portGroupNames, på samma sätt för infogade VLAN-nätverk och VLANGroupNames.
  • IPGroupNames och IpPrefixValues kan inte kombineras.
  • Utgående ACL:er stöder inte vissa alternativ som IP-alternativ, IP-längd, fragment, etertyp, DSCP-märkning och TTL-värden.
  • Ingress-ACL:er stöder inte följande alternativ: etherType.
  • Portindata kan vara port-number eller range-of-ports.
  • Fragmentindata kan vara port-number eller range-of-ports.

Exempel på nyttolast för att skapa 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}]}]"

Exempel på utdata

{
  "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"
}

Kommentar

När du har skapat ACL ska du anteckna ACL-referens-ID:t för ytterligare referens.

Nästa steg

Tillämpa åtkomstkontrollistor (ACL) på NNI i Azure Fabric