Tabla de Contenido
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âmetro | Descrição |
---|---|
access-list-number | Este é o número decimal da ACL. A faixa de números da ACL estendida é de 100 a 199 e de 2000 a 2699. |
deny | Isso nega o acesso se a condição for correspondida. |
permit | Isso 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. |
protocol | Nome 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. |
source | Isso 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. |
destination | Isso 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.
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.
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.
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.
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.
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.
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.
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
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
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.