Introduction
Este documento descreve os filtros de VPN em detalhes e se aplica a LAN para LAN (L2L), ao Cisco VPN Client e ao Cisco AnyConnect Secure Mobility Client.
Os filtros consistem em regras que determinam se é preciso permitir ou rejeitar pacotes de dados em túnel que vêm pelo Security Appliance, com base em critérios como endereço de origem, endereço de destino e protocolo. Você configura as Listas de Controle de Acesso (ACLs) para permitir ou negar vários tipos de tráfego. O filtro pode ser configurado na política de grupo, nos atributos de nome de usuário ou na Política de acesso dinâmico (DAP).
O DAP substitui o valor configurado nos atributos de nome de usuário e na política de grupo. O valor do atributo de nome de usuário substitui o valor da política de grupo caso o DAP não atribua nenhum filtro.
Prerequisites
Requirements
A Cisco recomenda que você tenha conhecimento destes tópicos:
- Configuração de túneis L2L VPN
- Configuração de acesso remoto (RA) do cliente VPN
- Configuração do AnyConnect RA
Componentes Utilizados
As informações neste documento são baseadas no Cisco 5500-X Series Adaptive Security Appliance (ASA) versão 9.1(2).
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Informações de Apoio
O comando sysopt connection permit-vpn permite que todo o tráfego que entra no Security Appliance através de um túnel VPN ignore as listas de acesso da interface. A política de grupo e as listas de acesso de autorização por usuário ainda se aplicam ao tráfego.
Um filtro vpn é aplicado ao tráfego pós-descriptografado depois que ele sai de um túnel e ao tráfego pré-criptografado antes de entrar em um túnel. Uma ACL usada para um filtro VPN NÃO deve ser usada também para um grupo de acesso de interface.
Quando um filtro vpn é aplicado a uma política de grupo que controla as conexões de cliente VPN de acesso remoto, a ACL deve ser configurada com os endereços IP atribuídos ao cliente na posição src_ip da ACL e a rede local na posição dest_ip da ACL. Quando um filtro VPN é aplicado a uma política de grupo que controla uma conexão VPN L2L, a ACL deve ser configurada com a rede remota na posição src_ip da ACL e a rede local na posição dest_ip da ACL.
Configurar
Os filtros VPN devem ser configurados na direção de entrada, embora as regras ainda sejam aplicadas bidirecionalmente. O aprimoramento CSCsf9428 foi aberto para oferecer suporte a regras unidirecionais, mas ainda não foi programado/confirmado para implementação.
Exemplo 1. Vpn-filter com AnyConnect ou VPN Client
Suponha que o endereço IP atribuído pelo cliente seja 10.10.10.1/24 e que a rede local seja 192.168.1.0/24.
Esta entrada de controle de acesso (ACE) permite que o cliente AnyConnect faça Telnet para a rede local:
access-list vpnfilt-ra permit tcp
10.10.10.1 255.255.255.255 192.168.1.0 255.255.255.0 eq 23
Note: A lista de acesso ACE vpnfilt-ra permit tcp 10.10.10.1 255.255.255.255 192.168.1.0 255.255.255.0 eq 23 também permite que a rede local inicie uma conexão com o cliente RA em qualquer porta TCP se usar uma porta origem de 23.
Essa ACE permite que a rede local execute Telnet para o cliente AnyConnect:
access-list vpnfilt-ra permit tcp 10.10.10.1 255.255.255.255
eq 23 192.168.1.0 255.255.255.0
Note: A lista de acesso ACE vpnfilt-ra permit tcp 10.10.10.1 255.255.255.255 eq 23 192.168.1.0 255.255.255.0 também permite que o cliente RA inicie uma conexão com a rede local em qualquer porta TCP se usar uma porta origem de 23.
Caution: O recurso vpn-filter permite que o tráfego seja filtrado somente na direção de entrada e a regra de saída é compilada automaticamente. Portanto, ao criar uma lista de acesso do Internet Control Message Protocol (ICMP), não especifique o tipo de ICMP na formatação da lista de acesso se desejar filtros direcionais.
Exemplo 2. vpn-filter com Conexão VPN L2L
Suponha que a rede remota seja 10.0.0.0/24 e a rede local seja 192.168.1.0/24.
Essa ACE permite que a rede remota faça Telnet para a rede local:
access-list vpnfilt-l2l permit tcp 10.0.0.0 255.255.255.0 192.168.1.0
255.255.255.0 eq 23
Observação: a lista de acesso ACE vpnfilt-l2l permit tcp 10.0.0.0 255.255.255.0 192.168.1.0 255.255.255.0 eq 23 também permite que a rede local inicie uma conexão com a rede remota em qualquer porta TCP se ela usar uma porta origem de 23.
Essa ACE permite que a rede local execute Telnet para a rede remota:
access-list vpnfilt-l2l permit tcp 10.0.0.0 255.255.255.0 eq 23
192.168.1.0 255.255.255.0
Observação: a lista de acesso ACE vpnfilt-l2l permit tcp 10.0.0.0 255.255.255.0 eq 23 192.168.1.0 255.255.255.0 também permite que a rede remota inicie uma conexão com a rede local em qualquer porta TCP se usar uma porta origem de 23.
Caution: O recurso vpn-filter permite que o tráfego seja filtrado somente na direção de entrada e a regra de saída é compilada automaticamente. Portanto, ao criar uma lista de acesso ICMP, não especifique o tipo de ICMP na formatação da lista de acesso se desejar filtros direcionais.
Filtros VPN e grupos de acesso por substituição de usuário
O tráfego VPN não é filtrado pelas ACLs de interface. O comando no sysopt connection permit-vpn pode ser usado para alterar o comportamento padrão. Nesse caso, duas ACLs podem ser aplicadas ao tráfego do usuário: a interface ACL é verificada primeiro e depois o vpn-filter.
A palavra-chave per-user-override (somente para ACLs de entrada) permite ACLs de usuário dinâmicas que são baixadas para autorização do usuário para substituir a ACL atribuída à interface. Por exemplo, se a ACL de interface negar todo o tráfego de 10.0.0.0, mas a ACL dinâmica permitir todo o tráfego de 10.0.0.0, a ACL dinâmica substituirá a ACL de interface desse usuário e o tráfego será permitido.
Exemplos (quando nenhuma conexão sysopt permit-vpn está configurada):
- no per-user-override, no vpn-filter - o tráfego é comparado com a interface ACL
- no per-user-override, vpn-filter - o tráfego é comparado primeiro com a interface ACL e depois com o vpn-filter
- per-user-override, vpn-filter - o tráfego é comparado somente com o filtro vpn
Verificar
Use esta seção para confirmar se a sua configuração funciona corretamente.
O Cisco CLI Analyzer (somente clientes registrados) aceita alguns comandos show. Use o Cisco CLI Analyzer para visualizar uma análise da saída do comando show.
- show asp table filter [access-list <acl-name>] [hits]
Para depurar as tabelas de filtro de caminho de segurança acelerado, use o comando show asp table filter no modo EXEC privilegiado. Quando um filtro tiver sido aplicado a um túnel VPN, as regras de filtro serão instaladas na tabela de filtros. Se o túnel tiver um filtro especificado, a tabela de filtros será verificada antes da criptografia e após a descriptografia para determinar se o pacote interno deve ser permitido ou negado.
USAGE
show asp table filter [access-list
] [hits]
SYNTAX <acl-name> Show installed filter for access-list <acl-name>
hits Show filter rules which have non-zero hits values
- clear asp table filter [access-list <acl-name>]
Esse comando limpa os contadores de ocorrências das entradas da tabela de filtros ASP.
USAGE
clear asp table filter [access-list
]
SYNTAX
<acl-name> Clear hit counters only for specified access-list <acl-name>
Troubleshoot
Esta seção disponibiliza informações para a solução de problemas de configuração.
O Cisco CLI Analyzer (somente clientes registrados) aceita alguns comandos show. Use o Cisco CLI Analyzer para visualizar uma análise da saída do comando show.
Note: Consulte Informações Importantes sobre Comandos de Depuração antes de usar comandos debug.
- debug acl filter
Este comando habilita a depuração de filtro VPN. Ele pode ser usado para ajudar a solucionar problemas de instalações/remoção dos filtros VPN na tabela de filtros ASP. Para o Exemplo 1. vpn-filter com AnyConnect ou VPN Client.
Saída de depuração quando user1 se conecta:
ACL FILTER INFO: first reference to inbound filter vpnfilt-ra(2): Installing
rule into NP.
ACL FILTER INFO: first reference to outbound filter vpnfilt-ra(2): Installing
rule into NP.
Saída de depuração quando o usuário2 se conecta (após o usuário1 e o mesmo filtro):
ACL FILTER INFO: adding another reference to outbound filter vpnfilt-ra(2): refCnt=2
ACL FILTER INFO: adding another reference to inbound filter vpnfilt-ra(2): refCnt=2
Saída de depuração quando o usuário2 se desconecta:
ACL FILTER INFO: removing a reference from inbound filter vpnfilt-ra(2): remaining
refCnt=1
ACL FILTER INFO: removing a reference from outbound filter vpnfilt-ra(2): remaining
refCnt=1
Saída de depuração quando o usuário1 se desconecta:
ACL FILTER INFO: releasing last reference from inbound filter vpnfilt-ra(2): Removing
rule into NP.
ACL FILTER INFO: releasing last reference from outbound filter vpnfilt-ra(2): Removing
rule into NP.
- show asp table
Esta é a saída de show asp table filter antes de quando user1 se conecta. Somente as regras de negação implícita são instaladas para IPv4 e IPv6 nas direções in e out.
Global Filter Table:
in id=0xd616ef20, priority=11, domain=vpn-user, deny=true
hits=0, user_data=0xd613ea60, filter_id=0x0(-implicit deny-), protocol=0
src ip=0.0.0.0, mask=0.0.0.0, port=0
dst ip=0.0.0.0, mask=0.0.0.0, port=0
in id=0xd616f420, priority=11, domain=vpn-user, deny=true
hits=0, user_data=0xd615ef70, filter_id=0x0(-implicit deny-), protocol=0
src ip=::/0, port=0
dst ip=::/0, port=0
out id=0xd616f1a0, priority=11, domain=vpn-user, deny=true
hits=0, user_data=0xd614d900, filter_id=0x0(-implicit deny-), protocol=0
src ip=0.0.0.0, mask=0.0.0.0, port=0
dst ip=0.0.0.0, mask=0.0.0.0, port=0
out id=0xd616f6d0, priority=11, domain=vpn-user, deny=true
hits=0, user_data=0xd6161638, filter_id=0x0(-implicit deny-), protocol=0
src ip=::/0, port=0
dst ip=::/0, port=0