Compartir a través de


Ejemplos de configuración y creación de listas de control de acceso

En este artículo se proporcionan ejemplos de cómo crear y actualizar listas de control de acceso (ACLS).

Información general sobre el flujo de creación de ACL

La creación de una lista de control de acceso (ACL) asociada a una interconexión de red a red (NNI) implica estos pasos:

  • Cree un recurso de Network Fabric y agréguele un recurso secundario NNI.

  • Cree recursos de ACL de entrada y salida mediante el az networkfabric acl create comando . Puede proporcionar configuraciones de coincidencia y la acción predeterminada para la ACL. También puede proporcionar configuraciones de coincidencia dinámica en línea o en un archivo almacenado en el contenedor de blobs de la cuenta de Azure Storage.

  • Actualice el recurso NNI con los identificadores de ACL de entrada y salida mediante el az networkfabric nni update comando . Debe proporcionar identificadores de recursos de ACL válidos en los --ingress-acl-id parámetros y --egress-acl-id .

  • Aprovisione el recurso de Network Fabric mediante el az networkfabric fabric provision comando . Esto genera la configuración base y la configuración de coincidencia dinámica para las ACL y las envía a los dispositivos.

Información general sobre el flujo de actualización de ACL

  • Cree recursos de ACL de entrada y salida mediante az networkfabric acl create , como se describe en la sección anterior.

  • Actualice la ACL de entrada o salida mediante el az networkfabric acl update comando .

  • Compruebe que el estado de configuración de la ACL es accepted.

  • Compruebe que el estado de configuración del tejido es accepted.

  • Ejecute la confirmación de Fabric para actualizar la ACL.

Comandos de ejemplo

Lista de control de acceso en una interconexión de red a red

En este ejemplo se muestra cómo crear una NNI con dos ACL: una para la entrada y otra para la salida.

Las ACL deben aplicarse antes de aprovisionar Network Fabric. Esta limitación es temporal y se quitará en futuras versiones. Las ACL de entrada y salida se crean antes del recurso NNI y se hace referencia a ellas cuando se crea la NNI, lo que también desencadena la creación de las ACL. Esta configuración debe realizarse antes de aprovisionar el tejido de red.

Creación de una ACL de entrada: comando de ejemplo

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

Creación de una ACL de salida: comando de ejemplo

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

Lista de control de acceso en una red externa de dominio de aislamiento

Use el az networkfabric acl create comando para crear ACL de entrada y salida para la red externa. En el ejemplo, se especifica el grupo de recursos, el nombre, la ubicación, el identificador de tejido de red, el identificador de red externo y otros parámetros. También puede especificar las condiciones y acciones de coincidencia para las reglas de ACL mediante los --match parámetros y --action .

Este comando crea una ACL de entrada denominada acl-ingress que permite el tráfico ICMP desde cualquier origen a la red externa:

az networkfabric acl create \
    --resource-group myResourceGroup \
    --name acl-ingress \
    --location eastus \
    --network-fabric-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.NetworkFabric/networkFabrics/myNetworkFabric \
    --external-network-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.NetworkFabric/externalNetworks/ext-net \
    --match "ip protocol icmp" \
    --action allow

Use el az networkfabric externalnetwork update comando para actualizar la red externa con el grupo de recursos, el nombre y el identificador de tejido de red. También debe especificar los identificadores de ACL de entrada y salida mediante los --ingress-acl-id parámetros y --egress-acl-id . Por ejemplo, el siguiente comando actualiza la red externa denominada ext-net para hacer referencia a la ACL de entrada denominada acl-ingress:

az networkfabric externalnetwork update \
    --resource-group myResourceGroup \
    --name ext-net \
    --network-fabric-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.NetworkFabric/networkFabrics/myNetworkFabric \
    --ingress-acl-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.NetworkFabric/acls/acl-ingress

Más escenarios y comandos de ejemplo

Para crear una ACL de salida para un NNI que deniega todo el tráfico excepto HTTP y HTTPS, puede usar este comando:

az networkfabric acl create \
    --name acl-egress \
    --resource-group myResourceGroup \
    --nni-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.NetworkFabric/networkInterfaces/myNni \
    --match "ip protocol tcp destination port 80 or 443" \
    --action allow \
    --default-action deny

Para actualizar una ACL existente para agregar una nueva condición de coincidencia y una acción, puede usar este comando:

az networkfabric acl update \
    --name acl-ingress \
    --resource-group myResourceGroup \
    --match "ip protocol icmp" \
    --action allow \
    --append-match-configurations

Para enumerar todas las ACL de un grupo de recursos, puede usar este comando:

az networkfabric acl list --resource-group myResourceGroup

Para mostrar los detalles de una ACL específica, puede usar este comando:

az networkfabric acl show \
    --name acl-ingress \
    --resource-group myResourceGroup

Para eliminar una ACL, puede usar este comando:

az networkfabric acl delete \
    --name acl-egress \
    --resource-group myResourceGroup