Leggere in inglese

Condividi tramite


Creazione della gestione dell'elenco di controllo di accesso (ACL) per reti esterne del dominio di isolamento NNI e di livello 3

Gli elenchi di controllo di accesso (ACL) sono un set di regole che regolano il flusso di pacchetti in ingresso e in uscita all'interno di una rete. Il servizio Nexus Network Fabric di Azure offre un meccanismo basato su API per configurare gli ACL per le interconnessioni da rete a rete e reti esterne di dominio di isolamento di livello 3. Questa guida illustra i passaggi per creare elenchi di controllo di accesso.

Creazione di elenchi di controllo di accesso (ACL)

Per creare un elenco di controllo di accesso e definirne le proprietà, è possibile utilizzare il comando az networkfabric acl create. Di seguito sono riportati i passaggi necessari:

Prerequisiti

  1. Impostare la sottoscrizione (se necessario):

Se si dispone di più sottoscrizioni ed è necessario impostarne una come predefinita, è possibile farlo con:

az account set --subscription <subscription-id>
  1. Creare un elenco di controllo di accesso:
    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>}]}]"
Parametro Descrizione
Gruppo di risorse Specificare il gruppo di risorse dell'infrastruttura di rete.
Ufficio Definire il percorso in cui viene creato l'ACL.
Nome della risorsa Specificare un nome per l'elenco di controllo di accesso.
Annotazione Facoltativamente, aggiungere una descrizione o un'annotazione per l'ACL.
Tipo configurazione Specificare se la configurazione è inline o tramite un file.
Azione predefinita Definire l'azione predefinita da eseguire se non viene trovata alcuna corrispondenza.
Configurazioni delle corrispondenze Definire le condizioni e le azioni per la corrispondenza del traffico.
Azioni Specificare l'azione da eseguire in base alle condizioni di corrispondenza.

Indicazioni sull'utilizzo dei parametri

La tabella seguente fornisce indicazioni sull'utilizzo dei parametri durante la creazione di elenchi di controllo di accesso:

Parametro Descrizione Esempio o intervallo
defaultAction Definisce l'azione predefinita da eseguire "defaultAction": "Permit"
resource-group Gruppo di risorse dell'infrastruttura di rete nfresourcegroup
resource-name Nome dell'elenco di controllo di accesso example-ingressACL
vlanGroups Elenco di gruppi VLAN
vlans Elenco di VLAN che devono essere confrontate
match-configurations Nome della configurazione della corrispondenza example_acl
matchConditions Condizioni che devono essere confrontate
ttlValues TTL [Durata] 0-255
dscpMarking Contrassegni DSCP che devono essere confrontati 0-63
fragments Specificare i pacchetti di frammenti IP Intervallo: 1-8191
Esempio: [1, 5, 1250-1300, 8000-8191]
portCondition Condizione della porta che deve essere confrontata
portType Tipo di porta che deve essere confrontato Esempio: SourcePort
ports Numero di porta che deve essere confrontato Intervallo: 0-65535
Esempio: [1, 10, 500, 1025-1050, 64000-65535]
protocolTypes Protocolli che devono essere confrontati [tcp, udp, range[1-2, 1, 2]]
vlanMatchCondition Condizione di corrispondenza VLAN che deve essere confrontata
layer4Protocol Protocollo di livello 4 deve essere TCP o UDP
ipCondition Condizione IP che deve essere confrontata
actions Azione da eseguire in base alla condizione di corrispondenza Esempio: permit
configuration-type Tipo di configurazione (inline o file) Esempio: inline

Nota

  • Le porte inline e le VLAN inline vengono definite in modo statico usando azcli.
  • PortGroupNames e VlanGroupNames vengono definiti dinamicamente.
  • La combinazione di porte inline con portGroupNames non è consentita, analogamente per le VLAN inline e VLANGroupNames.
  • Impossibile combinare IPGroupNames e IpPrefixValues.
  • Gli ACL in uscita non supportano determinate opzioni, ad esempio opzioni IP, lunghezza IP, frammento, ether-type, contrassegno DSCP e valori TTL.
  • Gli elenchi di controllo di accesso in ingresso non supportano le opzioni seguenti: etherType.
  • Gli input delle porte possono essere port-number o range-of-ports.
  • Gli input di frammenti possono essere port-number o range-of-ports.
  • L'ACL con configurazione dinamica delle corrispondenze nelle reti eterne non è supportato.

Payload di esempio per la creazione dell'elenco di controllo di accesso

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

Output di esempio

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

Nota

Dopo aver creato l'ACL, assicurarsi di annotare l'ID riferimento ACL per ulteriori informazioni di riferimento.

Passaggi successivi

Applicazione di elenchi di controllo di accesso (ACL) a NNI in Azure Fabric