Configurar ACLs IPv4 estendidos
Configurar ACLs IPv4 estendidos

Configurar ACLs IPv4 Estendidos

[note note_color=”#21ab5136″ text_color=”#2c2c2d” radius=”3″ class=”” id=””]Bem-vindo: este tópico faz parte do Capítulo 14 do curso Cisco CCNA 3, para um melhor acompanhamento do curso você pode ir para a seção CCNA 2 para orientá-lo durante um pedido.[/note]

ACLs estendidos

Nos tópicos anteriores, você aprendeu como configurar e modificar ACLs padrão e como proteger portas VTY com uma ACL IPv4 padrão. ACLs padrão filtram apenas no endereço de origem. Quando um controle de filtragem de tráfego mais preciso é necessário, ACLs IPv4 estendidos podem ser criados.

As ACLs estendidas são usadas com mais frequência do que as ACLs padrão porque fornecem um grau maior de controle. Eles podem filtrar por endereço de origem, endereço de destino, protocolo (ou seja, IP, TCP, UDP, ICMP) e número de porta. Isso fornece uma gama maior de critérios nos quais basear a ACL. Por exemplo, uma ACL estendida pode permitir o tráfego de e-mail de uma rede para um destino específico, enquanto nega transferências de arquivos e navegação na web.

Como ACLs padrão, ACLs estendidos podem ser criados como:

  • Numerada ACL estendida – Criada usando o comando de configuração global access-list access-list-number.
  • ACL estendida nomeada – Criada usando o nome da lista de acesso estendida da lista de acesso IP.

Sintaxe de ACL IPv4 estendida numerada

As etapas do procedimento para configurar ACLs estendidas são as mesmas das ACLs padrão. A ACL estendida é primeiro configurada e, em seguida, ativada em uma interface. No entanto, a sintaxe e os parâmetros do comando são mais complexos para oferecer suporte aos recursos adicionais fornecidos pelas ACLs estendidas.

Para criar uma ACL estendida numerada, use o seguinte comando de configuração global:

Router(config)# access-list access-list-number {deny | permit | remark text} 
protocol source source-wildcard [operator {port}] destination destination-wildcard [operator {port}] [established] [log]

Use o comando de configuração global no access-list access-list-number para remover uma ACL estendida.

Embora existam muitas palavras-chave e parâmetros para ACLs estendidos, não é necessário usar todos eles ao configurar um ACL estendido. A tabela fornece uma explicação detalhada da sintaxe para uma ACL estendida.

ParâmetroDescrição
access-list-numberEste é o número decimal da ACL.
A faixa de números da ACL estendida é de 100 a 199 e de 2000 a 2699.
denyIsso nega o acesso se a condição for correspondida.
permitIsso permite o acesso se a condição for compatível.
remark text(Opcional) Adiciona uma entrada de texto para fins de documentação.
Cada observação é limitada a 100 caracteres.
protocolNome ou número de um protocolo de internet.
Palavras-chave comuns incluem ip, tcp, udp e icmp.
A palavra-chave ip corresponde a todos os protocolos IP.
sourceIsso identifica a rede de origem ou o endereço do host a ser filtrado.
Use a palavra-chave any para especificar todas as redes.
Use a palavra-chave do endereço IP do host ou simplesmente insira um endereço IP (sem a palavra-chave do host) para identificar um endereço IP específico.
source-wildcard(Opcional) Uma máscara curinga de 32 bits aplicada à origem.
destinationIsso identifica a rede de destino ou o endereço do host a ser filtrado.
Use a palavra-chave any para especificar todas as redes.
Use a palavra-chave do endereço IP do host ou endereço IP.
destination-wildcard(Opcional) Esta é uma máscara curinga de 32 bits aplicada ao destino.
operator(Opcional) Isso compara as portas de origem ou destino.
Alguns operadores incluem lt (menor que), gt (maior que), eq (igual) e neq (diferente).
port(Opcional) O número decimal ou nome de uma porta TCP ou UDP.
established(Opcional) Apenas para o protocolo TCP.
Este é um recurso de firewall de 1ª geração.
log(Opcional) Esta palavra-chave gera e envia uma mensagem informativa sempre que a ACE é correspondida.
Esta mensagem inclui o número ACL, condição de correspondência (ou seja, permitido ou negado), endereço de origem e número de pacotes.
Esta mensagem é gerada para o primeiro pacote correspondido

O comando para aplicar uma ACL IPv4 estendida a uma interface é o mesmo que o comando usado para ACLs IPv4 padrão.

Router(config-if)# ip access-group {access-list-number | access-list-name} {in | out}

Para remover uma ACL de uma interface, primeiro digite o comando de configuração de interface no ip access-group. Para remover a ACL do roteador, use o comando de configuração global no access-list.

Nota: A lógica interna aplicada à ordenação de instruções ACL padrão não se aplica a ACLs estendidas. A ordem em que as declarações são inseridas durante a configuração é a ordem em que são exibidas e processadas.

Protocolos e portas

As ACLs estendidas podem filtrar em muitos tipos diferentes de protocolos e portas da Internet. Clique em cada botão para obter mais informações sobre os protocolos e portas da Internet nos quais as ACLs estendidas podem filtrar.

Os quatro protocolos destacados são as opções mais populares.

Nota: Use o ? para obter ajuda ao inserir um ACE complexo.

Nota: Se um protocolo de Internet não estiver listado, o número do protocolo IP pode ser especificado. Por exemplo, o protocolo ICMP número 1, TCP é 6 e UDP é 17.

R1(config)# access-list 100 permit ?
  <0-255>       An IP protocol number
  ahp           Authentication Header Protocol
  dvmrp         dvmrp
  eigrp         Cisco's EIGRP routing protocol
  esp           Encapsulation Security Payload
  gre           Cisco's GRE tunneling
  icmp          Internet Control Message Protocol
  igmp          Internet Gateway Message Protocol
  ip            Any Internet Protocol
  ipinip        IP in IP tunneling
  nos           KA9Q NOS compatible IP over IP tunneling
  object-group  Service object group
  ospf          OSPF routing protocol
  pcp           Payload Compression Protocol
  pim           Protocol Independent Multicast
  tcp           Transmission Control Protocol
  udp           User Datagram Protocol
R1(config)# access-list 100 permit

Exemplos de configuração de protocolos e números de porta

As ACLs estendidas podem filtrar em diferentes opções de número de porta e nome de porta. Este exemplo configura um ACL 100 estendido para filtrar o tráfego HTTP. O primeiro ACE usa o nome da porta www. A segunda ACE usa o número de porta 80. Ambas as ACEs alcançam exatamente o mesmo resultado.

R1(config)# access-list 100 permit tcp any any eq www
!or...
R1(config)# access-list 100 permit tcp any any eq 80

A configuração do número da porta é necessária quando não há um nome de protocolo específico listado, como SSH (número da porta 22) ou HTTPS (número da porta 443), conforme mostrado no próximo exemplo.

R1(config)# access-list 100 permit tcp any any eq 22
R1(config)# access-list 100 permit tcp any any eq 443
R1(config)#

Aplicar uma ACL IPv4 estendida numerada

A topologia na figura será usada para demonstrar a configuração e a aplicação de ACLs IPv4 estendidos numerados e nomeados a uma interface. Este primeiro exemplo mostra uma implementação de ACL IPv4 estendida numerada.

Aplicar uma ACL IPv4 estendida numerada

Neste exemplo, a ACL permite que o tráfego HTTP e HTTPS da rede 192.168.10.0 vá para qualquer destino.

As ACLs estendidas podem ser aplicadas em vários locais. No entanto, eles são comumente aplicados próximos à fonte. Portanto, o ACL 110 foi aplicado de entrada na interface R1 G0/0/0.

R1(config)# access-list 110 permit tcp 192.168.10.0 0.0.0.255 any eq www
R1(config)# access-list 110 permit tcp 192.168.10.0 0.0.0.255 any eq 443
R1(config)# interface g0/0/0
R1(config-if)# ip access-group 110 in
R1(config-if)# exit
R1(config)#

ACL estendida estabelecida por TCP

O TCP também pode executar serviços básicos de firewall com monitoração de estado usando a palavra-chave established pelo TCP. A palavra-chave permite que o tráfego interno saia da rede privada interna e permite que o tráfego de resposta de retorno entre na rede privada interna, conforme mostrado na figura.

ACL estendida estabelecida por TCP

No entanto, o tráfego TCP gerado por um host externo e a tentativa de comunicação com um host interno é negado.

A palavra-chave established pode ser usada para permitir apenas o retorno do tráfego HTTP de sites solicitados, enquanto nega todo o outro tráfego.

Na topologia, o design para este exemplo mostra que o ACL 110, que foi configurado anteriormente, filtrará o tráfego da rede privada interna. O ACL 120, usando a palavra-chave established , filtrará o tráfego que entra na rede privada interna da rede pública externa.

Dentro da rede privada

No exemplo, o ACL 120 é configurado para permitir apenas o retorno do tráfego da web para os hosts internos. A nova ACL é então aplicada de saída na interface R1 G0 / 0/0. O comando show access-lists exibe ambas as ACLs. Observe nas estatísticas de correspondência que os hosts internos têm acessado os recursos da Web seguros da Internet.

R1(config)# access-list 120 permit tcp any 192.168.10.0 0.0.0.255 established
R1(config)# interface g0/0/0
R1(config-if)# ip access-group 120 out
R1(config-if)# end
R1# show access-lists
Extended IP access list 110
    10 permit tcp 192.168.10.0 0.0.0.255 any eq www
    20 permit tcp 192.168.10.0 0.0.0.255 any eq 443 (657 matches) 
Extended IP access list 120
    10 permit tcp any 192.168.10.0 0.0.0.255 established (1166 matches) 
R1#

Observe que os contadores HTTPS seguros de permissão (ou seja, eq 443) no ACL 110 e os contadores de retorno estabelecidos no ACL 120 aumentaram.

O parâmetro established permite que apenas respostas ao tráfego originado da rede 192.168.10.0/24 retornem a essa rede. Especificamente, ocorre uma correspondência se o segmento TCP de retorno tiver os bits de sinalizador ACK ou de redefinição (RST) definidos. Isso indica que o pacote pertence a uma conexão existente. Sem o parâmetro established na instrução ACL, os clientes podem enviar tráfego para um servidor da web e receber o tráfego que retorna do servidor da web. Todo o tráfego seria permitido.

Sintaxe de ACL IPv4 estendida nomeada

Nomear uma ACL torna mais fácil entender sua função. Para criar uma ACL estendida nomeada, use o seguinte comando de configuração global:

Router(config)# ip access-list extendedaccess-list-name

Este comando entra no modo de configuração estendida nomeado. Lembre-se de que os nomes de ACL são alfanuméricos, diferenciam maiúsculas de minúsculas e devem ser exclusivos.

No exemplo, uma ACL estendida nomeada chamada NO-FTP-ACCESS é criada e o prompt alterado para o modo de configuração de ACL estendida nomeada. As instruções ACE são inseridas no modo de subconfiguração ACL estendida nomeada.

R1(config)# ip access-list extended NO-FTP-ACCESS
R1(config-ext-nacl)#

Exemplo de ACL IPv4 estendida nomeada

As ACLs estendidas nomeadas são criadas essencialmente da mesma maneira que as ACLs padrão nomeadas são criadas.

A topologia na figura é usada para demonstrar a configuração e aplicação de duas ACLs IPv4 estendidas nomeadas a uma interface:

  • SURFING – Isso permitirá que o tráfego dentro de HTTP e HTTPS saia para a Internet.
  • NAVEGAÇÃO – Isso só permitirá o retorno do tráfego da web para os hosts internos, enquanto todo o outro tráfego que sai da interface R1 G0 / 0/0 é implicitamente negado.
Exemplo de ACL IPv4 estendida nomeada

O exemplo mostra a configuração para SURFING ACL de entrada e BROWSING ACL de saída.

O SURFING ACL permite que o tráfego HTTP e HTTPS de usuários internos saia da interface G0 / 0/1 conectada à Internet. O tráfego da Web que retorna da Internet é permitido de volta à rede privada interna pelo BROWSING ACL.

O SURFING ACL é aplicado na entrada e o BROWSING ACL é aplicado na saída na interface R1 G0 / 0/0, conforme mostrado na saída.

Os hosts internos têm acessado os recursos da Web seguros a partir da Internet. O comando show access-lists é usado para verificar as estatísticas de ACL. Observe que os contadores HTTPS seguros de permissão (ou seja, eq 443) no SURFING ACL e os contadores de retorno estabelecidos no BROWSING ACL aumentaram.

R1(config)# ip access-list extended SURFING
R1(config-ext-nacl)# Remark Permits inside HTTP and HTTPS traffic 
R1(config-ext-nacl)# permit tcp 192.168.10.0 0.0.0.255 any eq 80
R1(config-ext-nacl)# permit tcp 192.168.10.0 0.0.0.255 any eq 443
R1(config-ext-nacl)# exit
R1(config)# 
R1(config)# ip access-list extended BROWSING
R1(config-ext-nacl)# Remark Only permit returning HTTP and HTTPS traffic 
R1(config-ext-nacl)# permit tcp any 192.168.10.0 0.0.0.255 established
R1(config-ext-nacl)# exit
R1(config)# interface g0/0/0
R1(config-if)# ip access-group SURFING in
R1(config-if)# ip access-group BROWSING out
R1(config-if)# end
R1# show access-lists
Extended IP access list SURFING
    10 permit tcp 192.168.10.0 0.0.0.255 any eq www
    20 permit tcp 192.168.10.0 0.0.0.255 any eq 443 (124 matches) 
Extended IP access list BROWSING
    10 permit tcp any 192.168.10.0 0.0.0.255 established (369 matches) 
R1#

Editar ACLs estendidos

Como ACLs padrão, uma ACL estendida pode ser editada usando um editor de texto quando muitas alterações são necessárias. Caso contrário, se a edição se aplicar a uma ou duas ACEs, os números de sequência podem ser usados.

Por exemplo, suponha que você acabou de inserir as ACLs SURFING e BROWSING e deseja verificar sua configuração usando o comando show access-lists.

R1# show access-lists 
Extended IP access list BROWSING
    10 permit tcp any 192.168.10.0 0.0.0.255 established 
Extended IP access list SURFING
    10 permit tcp 19.168.10.0 0.0.0.255 any eq www
    20 permit tcp 192.168.10.0 0.0.0.255 any eq 443 
R1#

Você observa que o número de sequência 10 do ACE no SURFING ACL tem um endereço de rede IP de origem incorreto.

Para corrigir esse erro usando números de seqüência, a instrução original é removida com o comando no sequence_ # e a instrução corrigida é adicionada substituindo a instrução original.

R1# configure terminal
R1(config)# ip access-list extended SURFING 
R1(config-ext-nacl)# no 10
R1(config-ext-nacl)# 10 permit tcp 192.168.10.0 0.0.0.255 any eq www
R1(config-ext-nacl)# end

A saída verifica a alteração da configuração usando o comando show access-lists.

R1# show access-lists 
Extended IP access list BROWSING
    10 permit tcp any 192.168.10.0 0.0.0.255 established 
Extended IP access list SURFING
    10 permit tcp 192.168.10.0 0.0.0.255 any eq www 
    20 permit tcp 192.168.10.0 0.0.0.255 any eq 443
R1#

Outro exemplo de ACL IPv4 estendida nomeada

A figura mostra outro cenário para implementar uma ACL IPv4 estendida nomeada. Suponha que PC1 na rede privada interna tenha tráfego FTP, SSH, Telnet, DNS, HTTP e HTTPS permitido. No entanto, todos os outros usuários na rede privada interna devem ter o acesso negado.

Duas ACLs estendidas nomeadas serão criadas:

  • PERMIT-PC1 – Isso só permitirá o acesso do TCP do PC1 à Internet e negará todos os outros hosts na rede privada.
  • REPLY-PC1 – Isso só permitirá o retorno de tráfego TCP especificado para PC1 negar implicitamente todo o outro tráfego.
ACL IPv4 Estendido Nomeado Exemplo 2

O exemplo mostra a configuração para PERMIT-PC1 ACL de entrada e REPLY-PC1 de saída.

A ACL PERMIT-PC1 permite PC1 (ou seja, 192.168.10.10) acesso TCP ao FTP (ou seja, portas 20 e 21), SSH (22), Telnet (23), DNS (53), HTTP (80) e HTTPS (443) tráfego. DNS (53) é permitido para TCP e UDP.

A ACL REPLY-PC1 permitirá o retorno do tráfego para PC1.

Há muitos fatores a serem considerados ao aplicar uma ACL, incluindo:

  • O dispositivo para aplicá-lo
  • A interface para aplicá-lo
  • A direção para aplicá-lo

Uma consideração cuidadosa deve ser tomada para evitar resultados de filtragem indesejados. A ACL PERMIT-PC1 é aplicada na entrada e a ACL REPLY-PC1 aplicada na saída na interface R1 G0/0/0.

R1(config)# ip access-list extended PERMIT-PC1
R1(config-ext-nacl)# Remark Permit PC1 TCP access to internet 
R1(config-ext-nacl)# permit tcp host 192.168.10.10 any eq 20
R1(config-ext-nacl)# permit tcp host 192.168.10.10 any eq 21
R1(config-ext-nacl)# permit tcp host 192.168.10.10 any eq 22
R1(config-ext-nacl)# permit tcp host 192.168.10.10 any eq 23
R1(config-ext-nacl)# permit udp host 192.168.10.10 any eq 53
R1(config-ext-nacl)# permit tcp host 192.168.10.10 any eq 53
R1(config-ext-nacl)# permit tcp host 192.168.10.10 any eq 80
R1(config-ext-nacl)# permit tcp host 192.168.10.10 any eq 443
R1(config-ext-nacl)# deny ip 192.168.10.0 0.0.0.255 any 
R1(config-ext-nacl)# exit
R1(config)# 
R1(config)# ip access-list extended REPLY-PC1
R1(config-ext-nacl)# Remark Only permit returning traffic to PC1 
R1(config-ext-nacl)# permit tcp any host 192.168.10.10 established
R1(config-ext-nacl)# exit
R1(config)# interface g0/0/0
R1(config-if)# ip access-group PERMIT-PC1 in
R1(config-if)# ip access-group REPLY-PC1 out
R1(config-if)# end
R1#

Verificar ACLs estendidos

Depois que uma ACL foi configurada e aplicada a uma interface, use os comandos show do Cisco IOS para verificar a configuração.

Clique em cada botão para obter mais informações sobre como verificar a configuração de uma ACL.

O comando show ip interface é usado para verificar a ACL na interface e a direção na qual foi aplicada, conforme mostrado na saída.

O comando gera bastante saída, mas observe como os nomes ACL em maiúsculas se destacam na saída.

Para reduzir a saída do comando, use técnicas de filtragem, conforme mostrado no segundo comando.

R1# show ip interface g0/0/0
GigabitEthernet0/0/0 is up, line protocol is up (connected)
  Internet address is 192.168.10.1/24
  Broadcast address is 255.255.255.255
  Address determined by setup command
  MTU is 1500 bytes
  Helper address is not set
  Directed broadcast forwarding is disabled
  Outgoing access list is REPLY-PC1
  Inbound  access list is PERMIT-PC1
  Proxy ARP is enabled
  Security level is default
  Split horizon is enabled
  ICMP redirects are always sent
  ICMP unreachables are always sent
  ICMP mask replies are never sent
  IP fast switching is disabled
  IP fast switching on the same interface is disabled
  IP Flow switching is disabled
  IP Fast switching turbo vector
  IP multicast fast switching is disabled
  IP multicast distributed fast switching is disabled
  Router Discovery is disabled
R1#
R1# show ip interface g0/0/0 | include access list
Outgoing access list is REPLY-PC1
Inbound access list is PERMIT-PC1
R1#

O comando show running-config pode ser usado para validar o que foi configurado. O comando também exibe comentários configurados.

O comando pode ser filtrado para exibir apenas informações pertinentes, conforme mostrado a seguir.

R1# show running-config | begin ip access-list
ip access-list extended PERMIT-PC1
 remark Permit PC1 TCP access to internet
 permit tcp host 192.168.10.10 any eq ftp-data
 permit tcp host 192.168.10.10 any eq ftp
 permit tcp host 192.168.10.10 any eq 22
 permit tcp host 192.168.10.10 any eq telnet
 permit udp host 192.168.10.10 any eq domain
 permit tcp host 192.168.10.10 any eq domain
 permit tcp host 192.168.10.10 any eq www
 permit tcp host 192.168.10.10 any eq 443
 deny   ip 192.168.10.0 0.0.0.255 any
ip access-list extended REPLY-PC1
 remark Only permit returning traffic to PC1
 permit tcp any host 192.168.10.10 established
!
(output omitted)
!
end 

R1#

Packet Tracer – Configurar ACLs IPv4 estendidos – Cenário 1

Nesta atividade do Packet Tracer, você completará os seguintes objetivos:

  • Parte 1: Configurar, aplicar e verificar uma ACL IPv4 numerada estendida
  • Parte 2: configurar, aplicar e verificar uma ACL IPv4 nomeada estendida
[button url=”https://www.ccna.network/wp-content/uploads/2021/03/5.4.12-pt.zip” target=”self” style=”default” background=”#2fa614″ color=”#FFFFFF” size=”3″ wide=”no” center=”yes” radius=”auto” icon=”” icon_color=”#FFFFFF” text_shadow=”none” desc=”” download=”” onclick=”” rel=”” title=”” id=”” class=””]BAIXE AQUI[/button]

Packet Tracer – Configurar ACLs IPv4 estendidos – Cenário 2

Nesta atividade do Packet Tracer, você completará os seguintes objetivos:

  • Parte 1: Configurar uma ACL IPv4 estendida nomeada
  • Parte 2: Aplicar e verificar a ACL IPv4 estendida
[button url=”https://www.ccna.network/wp-content/uploads/2021/03/5.4.13-pt.zip” target=”self” style=”default” background=”#2fa614″ color=”#FFFFFF” size=”3″ wide=”no” center=”yes” radius=”auto” icon=”” icon_color=”#FFFFFF” text_shadow=”none” desc=”” download=”” onclick=”” rel=”” title=”” id=”” class=””]BAIXE AQUI[/button]

Pronto para ir! Continue visitando nosso blog do curso de networking, confira todo o conteúdo do CCNA 3 aqui; e você encontrará mais ferramentas e conceitos que o tornarão um profissional de rede.

O seu endereço de email não será publicado. Campos obrigatórios marcados com *