Surveillance des réponses DNS avec la commande

Slides:



Advertisements
Présentations similaires
Listes de contrôle d’accès IPv6 John Rullan Formateur d’instructeurs certifiés Cisco Thomas A.Edison CTE HS Stephen Lynch Architecte réseau, CCIE n°
Advertisements

Effacer la Configuration LWAPP sur un LAP
– NAT et PAT - 1.
Client VPN SSL avec ASDM
Sécurité - Configuration du PIX avec un seul réseau interne
Sécurité - ASA - Configuration VPN SSL sans client avec ASDM
Client léger VPN SSL avec ASDM
Sécurité - ASA/PIX 7.x - Adresse IP statique pour Client VPN IPSec avec configuration CLI et ASDM ccnp_cch.
Remote Desktop Protocol l'Appliance de Sécurité
Sécurité - ASA8.x - Import du Plug-in VNC pour utilisation dans WebVPN
Sécurité - Configuration d'un
TP Sécurité - Configuration de Base d'un Routeur avec SDM
QoS - Propagation de la Politique de QoS via BGP
Configuration du PIX/ASA Authentification étendue
Sécurité - ASA8.x - Import du Plug-in RDP pour utilisation dans WebVPN
Configurer NAT et PAT statique pour support d'un serveur Web interne
Sécurité - Cisco ASA Outil de capture WebVPN
Commande ip nat service
Sécurité - Configuration du PIX
Sécurité - Configuration NTP sur le PIX avec ou sans Tunnel IPSec
PIX/ASA 7.x - Configuration Relais DHCP
Sécurité - VPN - Configurer la mise à jour du client
Sécurité - ASA7.x/PIX 6.x et plus
Tunnel pour paquets IP Multicast
Configuration d'un accès
Configuration NAT Overload (PAT)
PIX ASA 7.x - Surveillance DNS avec la commande static et
CBAC - Introduction et Configuration
Comprendre la politique
PIX/ASA - Configuration Serveur et Client DHCP
Configuration Routeur à Routeur avec PAT & Client VPN Cisco
show ip nat translations
Sécurité - ASA/PIX 8.x - Bloquer des sites Web (URLs) en utilisant les expressions régulières et Modular Policy Framework ccnp_cch.
Client VPN pour VPN public Internet
Configuration Routeur SOHO77
Sous-résaux LAN dupliqués
Hot Standby Router Protocol standby preempt et standby track
NAT - Supervision et Maintenance
PIX - Gestion du trafic VoIP
TP Sécurité - IOS Firewall - Configuration de base d'un site avec SDM
Sécurité - Configuration de
Sécurité - Configuration de
- Instructions NAT - PAT
Intégration de NAT avec les VPNs MPLS
Sécurité - Configuration de l'autorisation d'Applets Java
SSH sur l'interface interne
Proxy ARP ccnp_cch ccnp_cch.
Configuration NAT Utilisation de la commande outside source list
Support de NAT pour IPSec ESP Phase II
- Utilisation des commandes nat, global, static, conduit,
Configuration de Liaisons Redondantes ou Opérateur de Secours
Sécurité - Configuration de -
Configuration Routeur SOHO77
Pile IGMPv3 de Host.
Configuration IPSec LAN Privé à LAN Privé et NAT statique
Comment fonctionne RADIUS?
trois réseaux internes
PIX ASA 7.x - Configuration de Contextes multiples
Valider les services VoIP (SIP, H323, MGCP,SCCP)
Sécurité - Configuration d'un
Configuration d'un accès
entre trois routeurs utilisant des
- Restreindre l'accès réseau des utilisateurs VPN distants avec l'ASDM
IOS Firewall - Blocage d'applets Java
Configuration de groupes l'autorisation via ASDM
trois réseaux internes
QoS - Configuration Fragmentation
Sécurité - Configuration de Auth-Proxy Inbound - Client VPN IPSec
Configuration NAT Statique
Configuration NAT Dynamique
Transcription de la présentation:

Surveillance des réponses DNS avec la commande PIX ASA 7.x - Surveillance des réponses DNS avec la commande static et deux interfaces NAT ccnp_cch

Sommaire • Rappel • Scénario : Deux interfaces NAT (inside, outside) • Introduction - Prérequis - Composants utilisés - Produits liés • Rappel • Scénario : Deux interfaces NAT (inside, outside) - Topologie - Problème: Le client ne peut pas accéder ou serveur WWW - Solution: Mot-clé "dns" - Solution alternative: Rebouclage • Configuration de l'inspection DNS • Vérification - Capture de trafic DNS • Résolution de problèmes - La re-écriture DNS n'est pas réalisée - La création de traduction échoue ccnp_cch

Introduction Ce document fournit un exemple de configuration pour réaliser la surveillance DNS (Domain Name System) sur l'appliance de sécurité ASA série 5500 ou l'appliance de sécurité PIX série 500 en utilisant la traduction NAT statique. La surveillance DNS au- torise la re-écriture d'enregistrement A par l'appliance de sécurité. La re-écriture DNS réalise deux fonctions: ● Traduit une adresse publique (routable ou mappée) en une réponse DNS vers une adresse privée (l'adresse réelle) quand le client DNS est situé sur une interface pri- vée. ● Traduit une adresse privée en une adresse publique lorsque le client est sur une interface publique. Note : La configuration dans ce document contient deux interfaces NAT, inside et outside. Prérequis L'inspection DNS doit être validée pour réaliser la surveillance DNS sur l'appliance de sécurité. L'inspection DNS est validée par défaut. Si elle a été dévalidée, voir la section "Configurer l'inspection DNS" dans ce document pour la revalider. Quand l'inspection DNS est validée, l'appliance de sécurité réalise les tâches suivantes: ● Traduit l'enregistrement DNS sur la base de la configuration des commandes nat static (re-écriture DNS). Cette traduction s'applique uniquement aux enregistre- ments A dans les réponses DNS. Par conséquent les recherches inverses qui utili- sent l'enregistrement PTR ne sont pas affectées par la re-écriture DNS. Note : La re-écriture DNS n'est pas compatible avec PAT (Port Address Translation) car plusieurs règles PAT sont applicables pour chaque enregistrement A et la règle PAT à utiliser est ambiguë. ● Force la vérification de la longueur maximum d'un message DNS (la valeur par dé- faut est 512 octets et la valeur maximum est 65535 octets). Le réassemblage est réalisé si nécessaire pour vérifier que la longueur du paquet est inférieure à la lon- gueur configurée. Le paquet est éliminé si la longueur excède le maximum permis. Note : si vous entrez la commande inspect dns sans l'option maximum-length, la taille du paquet DNS n'est pas vérifiée. ● Applique une longueur de nom de domaine de 255 octets et une étiquette de 63 octets. ● Vérifie l'intégrité du nom de domaine référencé par le pointeur si les pointeurs de compression sont présents dans le message DNS. ● Vérifie si une boucle de pointeur de compression existe. ccnp_cch

Rappel Composants utilisés Produits liés ccnp_cch Les informations présentées dans ce document sont basées sur l'appliance de sécurité ASA 550 version 7.2(1). Produits liés Cette configuration peut être également utilisée avec l'appliance de sécurité PIX série 500 version 6.2 et suivantes. Note : La configuration ASDM (Adaptive Security Device Manager) est applicable sur la version 7.x uniquement. Rappel Dans un échange DNS typique un client transmet une URL ou un nom de host à un serveur DNS pour déterminer l'adresse IP de ce host. Le serveur DNS reçoit la requête, recherche la correspondance nom-adresse IP pour ce host et ensuite fournit l'enregis- trement A avec l'adresse IP du client. Bien que cette procédure fonctionne dans beau- coup de cas, des problèmes peuvent survenir. Ces problèmes peuvent survenir quand le client et le host que le client essaie d'atteindre sont tous les deux sur le même ré- seau privé derrière le NAt mais le serveur DNS utilisé par le client est sur un autre réseau public. Scénario : Deux interfaces NAT (inside, outside) Topologie Dans ce scénario, le client et le serveur WWW que le client essaie d'atteindre sont tous les deux situés sur l'interface interne de l'ASA. Du PAT dynamique est configuré pour permettre au client d'accéder à Internet. Du NAT statique est configuré pour permet- tre au serveur d'accéder à Internet tout comme les hosts Internet à accéder au serveur WWW. Client .2 172.20.1.0/24 172.22.1.0/24 .1 .2 192.168.100.0/24 .161 ASA Serveur DNS .10 WWW Server.example.com Mappé : 172.20.1.10 ccnp_cch

Ce schéma est un exemple de cette situation Ce schéma est un exemple de cette situation. Dans ce cas, le client qui a l'adresse 192.168.100.2 veut utiliser l'URL www.example.com pour accéder au serveur WWW situé à l'adresse 192.168.100.10. Les services DNS pour le client sont fournis par le DNS externe situé à l'adresse 172.22.1.161. Comme le serveur DNS est situé sur un autre réseau public il ne connaît pas l'adresse privée du serveur WWW. Au lieu de cela il connaît l'adresse mappée 172.20.1.10 du serveur WWW. Ainsi le serveur DNS con- tient la correspondance adresse IP - Nom de server.example.com vers 172.20.1.10. Problème : Le client ne peut pas accéder au serveur WWW Sans surveillance DNS ou une autre solution valide pour cette situation,si le client transmet une requête DNS pour l'adresse IP de server.example.com, il ne peut pas ac- céder au serveur WWW. Ceci est du au fait que que le client reçoit un enregistrement A qui contient l'adresse l'adresse publique mappée 172.20.1.10 du serveur WWW. Quand le client tente d'accèder à cette adresse IP, l'appliance de sécurité élimine les paquets car elle n'autorise pas la redirection de paquets sur la même interface. Voici à quoi ressemble la configuration quand la surveillance DNS n'est pas validée. ciscoasa(config)#show running−config : Saved : ASA Version 7.2(1) ! hostname ciscoasa !−−− Partie supprimée. access−list OUTSIDE extended permit tcp any host 172.20.1.10 eq www global (outside) 1 interface nat (inside) 1 192.168.100.0 255.255.255.0 static (inside,outside) 172.20.1.10 192.168.100.10 netmask 255.255.255.255 access−group OUTSIDE in interface outside ccnp_cch

Voici à quoi ressemble la configuration dans l'ASDM quand la surveillance DNS n'est pas validée. Voici une capture d'évènements quand la surveillance DNS n'est pas validée. 1. Le client transmet une requête DNS. No. Time Source Destination Protocol Info 1 0.000000 192.168.100.2 172.22.1.161 DNS Standard query A server.example.com Frame 1 (78 bytes on wire, 78 bytes captured) Ethernet II, Src: Cisco_c8:e4:00 (00:04:c0:c8:e4:00), Dst: Cisco_9c:c6:1f (00:0a:b8:9c:c6:1f) Internet Protocol, Src: 192.168.100.2 (192.168.100.2), Dst: 172.22.1.161 (172.22.1.161) User Datagram Protocol, Src Port: 50879 (50879), Dst Port: domain (53) Domain Name System (query) [Response In: 2] Transaction ID: 0x0004 Flags: 0x0100 (Standard query) Questions: 1 Answer RRs: 0 Authority RRs: 0 Additional RRs: 0 Queries server.example.com: type A, class IN Name: server.example.com Type: A (Host address) Class: IN (0x0001) ccnp_cch

2. PAT est réalisé sur la requête DNS par l'ASA et la requête est acheminée. Notez que l'adresse source du paquet a changé pour être celle de l'interface outside de l'ASA. No. Time Source Destination Protocol Info 1 0.000000 172.20.1.2 172.22.1.161 DNS Standard query A server.example.com Frame 1 (78 bytes on wire, 78 bytes captured) Ethernet II, Src: Cisco_9c:c6:1e (00:0a:b8:9c:c6:1e), Dst: Cisco_01:f1:22 (00:30:94:01:f1:22) Internet Protocol, Src: 172.20.1.2 (172.20.1.2), Dst: 172.22.1.161 (172.22.1.161) User Datagram Protocol, Src Port: 1044 (1044), Dst Port: domain (53) Domain Name System (query) [Response In: 2] Transaction ID: 0x0004 Flags: 0x0100 (Standard query) Questions: 1 Answer RRs: 0 Authority RRs: 0 Additional RRs: 0 Queries server.example.com: type A, class IN Name: server.example.com Type: A (Host address) Class: IN (0x0001) 3. Le serveur DNS répond avec l'adresse mappée du serveur WWW. No. Time Source Destination Protocol Info 2 0.005005 172.22.1.161 172.20.1.2 DNS Standard query response A 172.20.1.10 Frame 2 (94 bytes on wire, 94 bytes captured) Ethernet II, Src: Cisco_01:f1:22 (00:30:94:01:f1:22), Dst: Cisco_9c:c6:1e (00:0a:b8:9c:c6:1e) Internet Protocol, Src: 172.22.1.161 (172.22.1.161), Dst: 172.20.1.2 (172.20.1.2) User Datagram Protocol, Src Port: domain (53), Dst Port: 1044 (1044) Domain Name System (response) [Request In: 1] [Time: 0.005005000 seconds] Flags: 0x8580 (Standard query response, No error) Answer RRs: 1 Answers server.example.com: type A, class IN, addr 172.20.1.10 Time to live: 1 hour Data length: 4 Addr: 172.20.1.10 ccnp_cch

4. L'ASA fait la traduction inverse de l'adresse de l'adresse destination de la réponse DNS et achemine le paquet vers le client. Notez que sans surveillance DNS validée, le champ Addr dans la réponse est toujours l'adresse mappée du serveur DNS. No. Time Source Destination Protocol Info 2 0.005264 172.22.1.161 192.168.100.2 DNS Standard query response A 172.20.1.10 Frame 2 (94 bytes on wire, 94 bytes captured) Ethernet II, Src: Cisco_9c:c6:1f (00:0a:b8:9c:c6:1f), Dst: Cisco_c8:e4:00 (00:04:c0:c8:e4:00) Internet Protocol, Src: 172.22.1.161 (172.22.1.161), Dst: 192.168.100.2 (192.168.100.2) User Datagram Protocol, Src Port: domain (53), Dst Port: 50879 (50879) Domain Name System (response) [Request In: 1] [Time: 0.005264000 seconds] Transaction ID: 0x0004 Flags: 0x8580 (Standard query response, No error) Questions: 1 Answer RRs: 1 Authority RRs: 0 Additional RRs: 0 Queries server.example.com: type A, class IN Name: server.example.com Type: A (Host address) Class: IN (0x0001) Answers server.example.com: type A, class IN, addr 172.20.1.10 Time to live: 1 hour Data length: 4 Addr: 172.20.1.10 5. A ce point, le client tente d'accéder au serveur WWW à l'adresse 172.20.2.1. L'ASA crée une entrée de connexion pour cette communication. Cependant il n'autorise pas le flux de trafic de inside vers outside puis vers inside. %ASA−6−302013: Built outbound TCP connection 54175 for outside:172.20.1.10/80 (172.20.1.10/80) to inside:192.168.100.2/11001 (172.20.1.2/1024) %ASA−6−302014: Teardown TCP connection 54175 for outside:172.20.1.10/80 to inside:192.168.100.2/11001 duration 0:00:30 bytes 0 SYN Timeout ccnp_cch

ccnp_cch Solution : Mot-clé "dns" La surveillance DNS avec le mot-clé dns donne à l'appliance de sécurité la capacité d'intercepter et de re-écriture du contenu de la réponse DNS vers le client. Quand elle est correctement configurée, l'appliance de sécurité peut altérer l'enregistrement A pour permettre à un client dans un tel scénario de se connecter au serveur WWW. Dans cette situation, avec la surveillance DNS validée, l'appliance de sécurité re-écrit l'enregistrement A pour diriger le client vers 192.168.100.10 au lieu de 172.20.1.10. La surveillance DNS est validée quand vous ajoutez le mot-clé dns à une instruction nat static. Voici à quoi ressemble la partie de configuration NAT quand la surveillance DNS est validée. ciscoasa(config)#show run : Saved : ASA Version 7.2(1) ! hostname ciscoasa !−−− Partie supprimée. access−list OUTSIDE extended permit tcp any host 172.20.1.10 eq www global (outside) 1 interface nat (inside) 1 192.168.100.0 255.255.255.0 static (inside,outside) 172.20.1.10 192.168.100.10 netmask 255.255.255.255 dns !−−− Le mot-clé "dns" est ajouté pour indiquer à l'appliance de sécurité !−−− de modifier les enregistrements DNS liés à cette entrée. access−group OUTSIDE in interface outside ccnp_cch

Exécutez ces étapes pour configurer la surveillance DNS avec l'ASDM. 1. Allez à Configuration> NAT et choisissez la règle NAT statique à modifier. Cliquez sur Edit. 2. Cliquez sur NAT Options…. ccnp_cch

3. Cochez Translate DNS replies that match the translation rule. 4. Cliquez sur Ok pour quitter la fenêtre NAT options. Cliquez sur Ok pour quitter la fenêtre Edit Static NAT Rule. Cliquez Apply pour transmettre votre configuration à l'appliance de sécurité. Voici une capture de paquets quand la surveillance DNS est validée. 1. Le client transmet la requête DNS No. Time Source Destination Protocol Info 1 0.000000 192.168.100.2 172.22.1.161 DNS Standard query A server.example.com Frame 1 (78 bytes on wire, 78 bytes captured) Ethernet II, Src: Cisco_c8:e4:00 (00:04:c0:c8:e4:00), Dst: Cisco_9c:c6:1f (00:0a:b8:9c:c6:1f) Internet Protocol, Src: 192.168.100.2 (192.168.100.2), Dst: 172.22.1.161 (172.22.1.161) User Datagram Protocol, Src Port: 52985 (52985), Dst Port: domain (53) Domain Name System (query) [Response In: 2] Transaction ID: 0x000c Flags: 0x0100 (Standard query) Questions: 1 Answer RRs: 0 Authority RRs: 0 Additional RRs: 0 Queries server.example.com: type A, class IN Name: server.example.com Type: A (Host address) Class: IN (0x0001) ccnp_cch

2. PAT est réalisé sur la requête DNS par l'ASA et la requête est acheminée. Notez que l'adresse source du paquet a changé pour être celle de l'interface outside de l'ASA. No. Time Source Destination Protocol Info 1 0.000000 172.20.1.2 172.22.1.161 DNS Standard query A server.example.com Frame 1 (78 bytes on wire, 78 bytes captured) Ethernet II, Src: Cisco_9c:c6:1e (00:0a:b8:9c:c6:1e), Dst: Cisco_01:f1:22 (00:30:94:01:f1:22) Internet Protocol, Src: 172.20.1.2 (172.20.1.2), Dst: 172.22.1.161 (172.22.1.161) User Datagram Protocol, Src Port: 1035 (1035), Dst Port: domain (53) Domain Name System (query) [Response In: 2] Transaction ID: 0x000c Flags: 0x0100 (Standard query) Questions: 1 Answer RRs: 0 Authority RRs: 0 Additional RRs: 0 Queries server.example.com: type A, class IN Name: server.example.com Type: A (Host address) Class: IN (0x0001) 3. Le serveur DNS répond avec l'adresse mappée du serveur WWW. No. Time Source Destination Protocol Info 2 0.000992 172.22.1.161 172.20.1.2 DNS Standard query response A 172.20.1.10 Frame 2 (94 bytes on wire, 94 bytes captured) Ethernet II, Src: Cisco_01:f1:22 (00:30:94:01:f1:22), Dst: Cisco_9c:c6:1e (00:0a:b8:9c:c6:1e) Internet Protocol, Src: 172.22.1.161 (172.22.1.161), Dst: 172.20.1.2 (172.20.1.2) User Datagram Protocol, Src Port: domain (53), Dst Port: 1035 (1035) Domain Name System (response) [Request In: 1] [Time: 0.000992000 seconds] Flags: 0x8580 (Standard query response, No error) Answer RRs: 1 Answers server.example.com: type A, class IN, addr 172.20.1.10 Time to live: 1 hour Data length: 4 Addr: 172.20.1.10 ccnp_cch

4. L'ASA réalise la traduction inverse de l'adresse destination de la réponse DNS et achemine le paquet vers le client. Notez qu'avec la surveillance DNS validée, le champ Addr dans la réponse est re-écrit pour être l'adresse réelle du serveur WWW. No. Time Source Destination Protocol Info 2 0.001251 172.22.1.161 192.168.100.2 DNS Standard query response A 192.168.100.10 Frame 2 (94 bytes on wire, 94 bytes captured) Ethernet II, Src: Cisco_9c:c6:1f (00:0a:b8:9c:c6:1f), Dst: Cisco_c8:e4:00 (00:04:c0:c8:e4:00) Internet Protocol, Src: 172.22.1.161 (172.22.1.161), Dst: 192.168.100.2 (192.168.100.2) User Datagram Protocol, Src Port: domain (53), Dst Port: 52985 (52985) Domain Name System (response) [Request In: 1] [Time: 0.001251000 seconds] Transaction ID: 0x000c Flags: 0x8580 (Standard query response, No error) Questions: 1 Answer RRs: 1 Authority RRs: 0 Additional RRs: 0 Queries server.example.com: type A, class IN Name: server.example.com Type: A (Host address) Class: IN (0x0001) Answers server.example.com: type A, class IN, addr 192.168.100.10 Time to live: 1 hour Data length: 4 Addr: 192.168.100.10 !−−− 172.20.1.10 a été remplacé par 192.168.100.10. 5. A ce point le client tente d'accéder au serveur WWW à 192.168.100.10. La conne- xion réussit. aucun trafic n'est capturé car le client et le serveur sont sur la même interface. ccnp_cch

Configuration finale ASA 7.2(1) Configuration finale avec le mot-clé "dns" Voici la configuration finale de l'ASA pour réaliser la surveillance DNS avec le mot-clé dns et deux interfaces NAT. Configuration finale ASA 7.2(1) ciscoasa(config)#show running−config : Saved : ASA Version 7.2(1) ! hostname ciscoasa enable password 9jNfZuG3TC5tCVH0 encrypted names dns−guard interface Ethernet0/0 nameif outside security−level 0 ip address 172.20.1.2 255.255.255.0 interface Ethernet0/1 nameif inside security−level 100 ip address 192.168.100.1 255.255.255.0 interface Ethernet0/2 shutdown no nameif no security−level no ip address interface Management0/0 management−only passwd 2KFQnbNIdI.2KYOU encrypted ftp mode passive access−list OUTSIDE extended permit tcp any host 172.20.1.10 eq www !−−− Liste d'accès simple qui permet l'accès HTTP à l'adresse !−−− mappée du serveur WWW. ccnp_cch

ccnp_cch pager lines 24 logging enable logging buffered debugging mtu outside 1500 mtu inside 1500 asdm image disk0:/asdm512−k8.bin no asdm history enable arp timeout 14400 global (outside) 1 interface nat (inside) 1 192.168.100.0 255.255.255.0 static (inside,outside) 172.20.1.10 192.168.100.10 netmask 255.255.255.255 dns !−−− Configuration PAT et NAT statique. Le mot-clé DNS indique !−−− à l'appliance de sécurité de re-écrire les enregistrements !--- DNS relatifs à cette entrée. access−group OUTSIDE in interface outside !−−− La liste de contrôle d'accès (ACL) qui permet l'accès HTTP !−−− au serveur WWW est appliquée à l'interface outside. route outside 0.0.0.0 0.0.0.0 172.20.1.1 1 timeout xlate 3:00:00 timeout conn 1:00:00 half−closed 0:10:00 udp 0:02:00 icmp 0:00:02 timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp−pat 0:05:00 timeout sip 0:30:00 sip_media 0:02:00 sip−invite 0:03:00 sip−disconnect 0:02:00 timeout uauth 0:05:00 absolute username cisco password ffIRPGpDSOJh9YLq encrypted http server enable no snmp−server location no snmp−server contact snmp−server enable traps snmp authentication linkup linkdown coldstart telnet timeout 5 ssh timeout 5 console timeout 0 ! class−map inspection_default match default−inspection−traffic policy−map type inspect dns MY_DNS_INSPECT_MAP parameters message−length maximum 512 !−−− Politique d'inspection DNS. ccnp_cch

ccnp_cch policy−map global_policy class inspection_default inspect ftp inspect h323 h225 inspect h323 ras inspect rsh inspect rtsp inspect esmtp inspect sqlnet inspect skinny inspect sunrpc inspect xdmcp inspect sip inspect netbios inspect tftp inspect dns MY_DNS_INSPECT_MAP !−−− L'inspection DNS est validée pour utiliser la policy_map !--- configurée. inspect icmp ! policy−map type inspect dns migrated_dns_map_1 parameters message−length maximum 512 service−policy global_policy global prompt hostname context Cryptochecksum:a4a38088109887c3ceb481efab3dcf32 : end ccnp_cch

ccnp_cch Solution alternative : Rebouclage Rebouclage avec NAT statique Attention : Le rebouclage avec NAT statique inclut l'envoi de tout le trafic entre le client et le serveur WWW à travers l'appliance de sécurité. Prenez en compte avec soin le vo- lume de trafic et les capacités de votre appliance de sécurité avant d'implémenter cette solution. Le rebouclage est processus par lequel le trafic est transmis en retourne sur le même interface par laquelle il est arrivé. Cette fonctionnalité a été introduite dans l'appliance de sécurité version 7.0. pour les versions antérieures à 7.2(1), il est requis qu'au moins une branche du trafic rebouclé (entrant ou sortant) utilise le cryptage. Pour la version 7.2(1) et suivantes cette exigence n'a plus lieu. Les trafics entrant et sortant peuvent ne plus être cryptés quand vous utilisez le rebouclage avec la version 7.2(1). Le rebouclage en conjonction avec l'instruction nat static peur être utilisée pour obte- nir le même effet que la surveillance DNS. Cette méthode ne change pas le contenu des enregistrements A du DNS qui sont envoyés par le DNS vers le client. Au lieu de cela, le rebouclage comme cela est décrit dans ce document permet au client d'utiliser l'adresse 172.20.1.10 qui est retournée par le serveur DNS pour pouvoir se connecter. Voici à quoi ressemble la partie de la configuration relative au rebouclage et au NAT statique pour réaliser la surveillance DNS. Les commandes en cararactères gras sont expliquées en détail à la fin de cette sortie: ciscoasa(config)#show run : Saved : ASA Version 7.2(1) ! hostname ciscoasa !−−− Partie supprimée. same−security−traffic permit intra−interface !−−− Valide le rebouclage. global (outside) 1 interface !−−− instruction NAT globale pour l'accès externe. global (inside) 1 interface !−−− Instruction NAT globale pour accès à l'interface interne !--- à travers le PIX. nat (inside) 1 192.168.100.0 255.255.255.0 !−−− Cette instruction NAT définit quelles adresses internes !−−− doivent subir la traduction d'adresse. static (inside,outside) 172.20.1.10 192.168.100.10 netmask 255.255.255.255 !−−− Instruction NAT qui mappe l'adresse réelle du serveur WWW à !−−− l'adresse publique sur l'interface outside. static (inside,inside) 172.20.1.10 192.168.100.10 netmask !−−− Instruction NAT de mapping pour que l'adresse IP publique du !−−− serveur WWW apparaisse sur l'interface inside vers l'adresse !−−− réelle 192.168.100.10 du serveur WWW. ccnp_cch

● same-security-trafic - Cette commande permet au trafic d'un même niveau de sé- curité de transiter sur l'appliance de sécurité. Le mot-clé permit intra-interface permet un trafic de même niveau de sécurité à entrer et sortir par la même interface validant ainsi le rebouclage. ● global (inside) 1 interface - Tout le trafic qui traverse l'appliance de sécurité doit passer par NAT. Cette commande utilise l'adresse de l'interface interne (inside) de l'appliance de sécurité pour permettre au trafic qui entre par l'interface interne à passer par PAT car elle rebouclée sur l'interface interne. ● static (inside, inside) 172.20.1.10 192.168.100.10 netmask 255.255.255.255. Cette entrée NAT statique crée une seconde correspondance pour l'adresse IP publi- que du serveur WWW. cependant au contraire de la première entrée NAT statique, cette fois l'adresse 172.20.1.10 est mappée avec l'interface inside de l'appliance de sécurité. Ceci autorise l'appliance de sécurité à répondre aux requêtes qu'elle voit pour cette adresse sur l'interface interne. Ensuite elle redirige ces requêtes vers l'adresse réelle du serveur WWW au travers d'elle-même. Exécutez ces étapes pour configurer le rebouclage avec NAT statique avec l'ASDM. 1. Dans la fenêtre principale cliquez sur Configuration> Interfaces. 2. Dans le bas de la fenêtre, cochez le contrôle Enable traffic between two or more hosts connected to the same interface. ccnp_cch

ccnp_cch 3. Cliquez sur Apply. 4. Allez à Configuration> NAT et choisissez Add> Add Static NAT Rule… . 5. Remplir les champs pour la nouvelle traduction statique. a. Remplissez la zone Real Address avec l'adresse du serveur WWW. b. Remplissez la zone Static translation avec l'adresse et l'interface que vous voulez mapper avec le serveur WWW. Dans ce cas, l'interface inside est choisie pour autoriser les hosts sur l'interface inside à accéder au serveur WWW via l'adresse mappée 172.20.1.10. ccnp_cch

ccnp_cch 5. Remplir les champs pour la nouvelle traduction statique. a. Remplissez la zone Real Address avec l'adresse du serveur WWW. b. Remplissez la zone Static translation avec l'adresse et l'interface que vous voulez mapper avec le serveur WWW. Dans ce cas, l'interface inside est choisie pour autoriser les hosts sur l'interface inside à accéder au serveur WWW via l'adresse mappée 172.20.1.10. ccnp_cch

6. Cliquez sur OK pour quitter la fenêtre Add Static NAT Rule… 7. Choisissez la traduction PAT dynamique et cliquez sur Edit. 8. Choisissez inside dans la boite liste de choix Interface ccnp_cch

ccnp_cch 9. Cliquez sur Add. 10. Cochez le bouton radio Port Address Translation (PAT) using IP address of the interface. Cliquez sur Add. 11. Cliquez sur Ok pour quitter la fenêtre Add Global Address Pool. Cliquez sur Ok pour quitter la fenêtre Edit Dynamic NAT rule. Cliquez sur Apply pour sauvegar- der votre configuration sur l'appliance de sécurité. ccnp_cch

Voici la séquence des évènements qui prennent place quand le rebouclage est confi- guré. Supposons que le client a déjà fait une requête au serveur DNS et a reçu la ré- ponse 172.20.1.10 pour l'adresse du serveur WWW. 1. Le client tente de contacter le serveur WWW à l'adresse 172.20.1.10. %ASA−7−609001: Built local−host inside:192.168.100.2 2. L'appliance de sécurité voit la requête et reconnaît que le serveur WWW est à l'adresse 192.168.100.10. %ASA−7−609001: Built local−host inside:192.168.100.10 3. L'appliance de sécurité crée une traduction PAT dynamique pour le client. La sour- ce du trafic client est maintenant l'interface inside 192.168.100.1 de l'appliance de sécurité. %ASA−6−305011: Built dynamic TCP translation from inside:192.168.100.2/11012 to inside:192.168.100.1/1026 4. L'appliance de sécurité crée une connexion TCP entre le client et le serveur WWW au travers d'elle-même. Notez les adresses mappées de chaque host entre paran- thèses. %ASA−6−302013: Built inbound TCP connection 67399 for inside:192.168.100.2/11012 (192.168.100.1/1026) to inside:192.168.100.10/80 (172.20.1.10/80 5. La commande show xlate sur l'appliance de sécurité montre que le trafic du client subi la traduction d'adresses à travers l'appliance de sécurité. ciscoasa(config)#show xlate 3 in use, 9 most used Global 172.20.1.10 Local 192.168.100.10 PAT Global 192.168.100.1(1027) Local 192.168.100.2(11013) 6. La commande show conn sur l'appliance de sécurité montre que la connexion a réussi entre l'appliance de sécurité et le serveur WWW à la demande du client. Notez les adresses réelles du client entre paranthèses. ciscoasa#show conn TCP out 192.168.100.1(192.168.100.2):11019 in 192.168.100.10:80 idle 0:00:03 bytes 1120 flags UIOB ccnp_cch

Configuration finale ASA 7.2(1) Configuration finale avec rebouclage et NAT static Voici la configuration finale de l'ASA qui utilise le rebouclage et NAT statique pour réaliser la surveillance DNS avec deux interfaces NAT. Configuration finale ASA 7.2(1) ciscoasa(config−if)#show running−config : Saved : ASA Version 7.2(1) ! hostname ciscoasa enable password 9jNfZuG3TC5tCVH0 encrypted names dns−guard interface Ethernet0/0 nameif outside security−level 0 ip address 172.20.1.2 255.255.255.0 interface Ethernet0/1 nameif inside security−level 100 ip address 192.168.100.1 255.255.255.0 interface Ethernet0/2 shutdown no nameif no security−level no ip address interface Management0/0 management−only passwd 2KFQnbNIdI.2KYOU encrypted ftp mode passive same−security−traffic permit intra−interface access−list OUTSIDE extended permit tcp any host 172.20.1.10 eq www !−−− Liste d'accès simple qui permet l'accès HTTP à l'adresse !−−− mappée du serveur WWW. pager lines 24 logging enable logging buffered debugging ccnp_cch

ccnp_cch mtu outside 1500 mtu inside 1500 asdm image disk0:/asdm512−k8.bin no asdm history enable arp timeout 14400 global (outside) 1 interface !−−− instruction NAT globale pour l'accès externe. global (inside) 1 interface !−−− Instruction NAT globale pour accès à l'interface interne !--- à travrs le PIX. nat (inside) 1 192.168.100.0 255.255.255.0 !−−− Cette instruction NAT définit quelles adresses internes !−−− doivent subir la traduction d'adresse. static (inside,outside) 172.20.1.10 192.168.100.10 netmask 255.255.255.255 !−−− Instruction NAT qui mappe l'adresse réelle du serveur WWW à !−−− l'adresse publique sur l'interface outside. static (inside,inside) 172.20.1.10 192.168.100.10 netmask !−−− Instruction NAT de mapping pour que l'adresse IP publique du !−−− serveur WWW apparaisse sur l'interface inside vers l'adresse !−−− réelle 192.168.100.10 du serveur WWW. access−group OUTSIDE in interface outside !−−− L'ACL qui permet l'accès HTTP au serveur WWW est appliquée !−−− à l'interface outside. route outside 0.0.0.0 0.0.0.0 172.20.1.1 1 timeout xlate 3:00:00 timeout conn 1:00:00 half−closed 0:10:00 udp 0:02:00 icmp 0:00:02 timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp−pat 0:05:00 timeout sip 0:30:00 sip_media 0:02:00 sip−invite 0:03:00 sip−disconnect 0:02:00 timeout uauth 0:05:00 absolute username cisco password ffIRPGpDSOJh9YLq encrypted http server enable no snmp−server location no snmp−server contact snmp−server enable traps snmp authentication linkup linkdown coldstart telnet timeout 5 ssh timeout 5 console timeout 0 ! class−map inspection_default match default−inspection−traffic ccnp_cch

ccnp_cch ! policy−map type inspect dns MY_DNS_INSPECT_MAP parameters message−length maximum 512 policy−map global_policy class inspection_default inspect ftp inspect h323 h225 inspect h323 ras inspect rsh inspect rtsp inspect esmtp inspect sqlnet inspect skinny inspect sunrpc inspect xdmcp inspect sip inspect netbios inspect tftp inspect dns MY_DNS_INSPECT_MAP inspect icmp policy−map type inspect dns migrated_dns_map_1 service−policy global_policy global prompt hostname context Cryptochecksum:7c9b4e3aff085ba90ee194e079111e1d : end ccnp_cch

Configuration de l'inspection DNS Pour valider l'inspection DNS 'qui avait été dévalidée précédemment), exécutez les éta- pes suivantes. Dans cet exemple, l'inspection DNS est ajoutée à la politique d'inspec- tion globale par défaut qui est appliquée globalement avec la commande service-policy bien que l'ASA débute avec une configuration par défaut. 1. Créez une "policy map" d'inspection pour le DNS. ciscoasa(config)#policy−map type inspect dns MY_DNS_INSPECT_MAP 2. A partir du mode de configuration policy-map entrez en mode de configuration para- tre pour spécifier les paramètres de la machine d'inspection. ciscoasa(config−pmap)#parameters 3. En mode de configuration "policy-map parameters" spécifiez la longueur maximale d'un message DNS à 512. ciscoasa(config−pmap−p)#message−length maximum 512 4. Sortir du mode de configuration "policy-map parameters" et "policy-map". ciscoasa(config−pmap−p)#exit ciscoasa(config−pmap)#exit 5. Vérifiez que la policy-map d'inspection a bien été crée. ciscoasa(config)#show run policy−map type inspect dns policy−map type inspect dns MY_DNS_INSPECT_MAP parameters message−length maximum 512 6. Entrez en mode de configuration pour la policy-map global_policy. ciscoasa(config)#policy−map global_policy ciscoasa(config−pmap)# 7. En mode de configuration "policy-map class" spécifiez la "class-map" couche 3/4 inspection-default. ciscoasa(config−pmap)#class inspection_default ciscoasa(config−pmap−c)# 8. En mode de configuration "policy-map class", spécifiez que le DNS doit être inspecté en utilisant la policy-map créée dans les étapes 1 à 3. ciscoasa(config−pmap−c)#inspect dns MY_DNS_INSPECT_MAP ccnp_cch

9. Sortir des modes de configuration "policy-map class" et "policy-map". ciscoasa(config−pmap−c)#exit ciscoasa(config−pmap)#exit 10. Vérifiez que la policy-map global_policy est configurée correctement. ciscoasa(config)#show run policy−map ! !−−− policy map d'inspection DNS configurée. policy−map type inspect dns MY_DNS_INSPECT_MAP parameters message−length maximum 512 policy−map global_policy class inspection_default inspect ftp inspect h323 h225 inspect h323 ras inspect rsh inspect rtsp inspect esmtp inspect sqlnet inspect skinny inspect sunrpc inspect xdmcp inspect sip inspect netbios inspect tftp inspect dns MY_DNS_INSPECT_MAP !−−− Inspection de l'application DNS validée. 11. Vérifiez que la global_policy est appliquée globalement par un "service-policy" ciscoasa(config)#show run service−policy service−policy global_policy global ccnp_cch

Vérification ccnp_cch Utilisez cette section pour confirmer que votre configuration fonctionne correctement. Capture du trafic DNS Une méthode pour vérifier que l'appliance de sécurité re-écrit les enregistrements DNS correctement est de capturer les paquets concernés. exécutez ces étapes pour capturer le trafic sur l'ASA. 1. Créer une liste d'accès pour chaque instance de capture que vous voulez créer. L'ACL doit spécifier le trafic que vous voulez capturer. Dans cet exemple, deux ACLs ont été crées. ● ACL pour le trafic de l'interface outside access−list DNSOUTCAP extended permit ip host 172.22.1.161 host 172.20.1.2 !−−− Tout le trafic entre le serveur DNS et l'ASA. access−list DNSOUTCAP extended permit ip host 172.20.1.2 host 172.22.1.161 !−−− Tout le trafic entre l'ASA et le serveur DNS. ● ACL pour le trafic de l'interface inside access−list DNSINCAP extended permit ip host 192.168.100.2 host !−−− Tout le trafic entre le client et le serveur DNS. access−list DNSINCAP extended permit ip host 172.22.1.161 host 192.168.100.2 !−−− Tout le trafic entre le serveur DNS et le client. 2. Créez l'instance de capture. ciscoasa#capture DNSOUTSIDE access−list DNSOUTCAP interface outside !−−− Cette capture collecte le trafic de l'interface outside qui !−−− correspond à l'ACL DNSOUTCAP. ciscoasa#capture DNSINSIDE access−list DNSINCAP interface inside !−−− Cette capture collecte le trafic de l'interface inside qui !−−− correspond à l'ACL DNSINCAP. ccnp_cch

Résolution de problèmes 3. Voir la capture. Voici à quoi ressemble un exemple de capture après que du trafic DNS soit passé par l'appliance de sécurité. ciscoasa#show capture DNSOUTSIDE 2 packets captured 1: 14:07:21.347195 172.20.1.2.1025 > 172.22.1.161.53: udp 36 2: 14:07:21.352093 172.22.1.161.53 > 172.20.1.2.1025: udp 93 2 packets shown ciscoasa#show capture DNSINSIDE 1: 14:07:21.346951 192.168.100.2.57225 > 172.22.1.161.53: udp 36 2: 14:07:21.352124 172.22.1.161.53 > 192.168.100.2.57225: udp 93 4. (Optionnel) Copier la capture vers un serveur TFTP au format pcap pour l'analyse avec une autre application. Les applications qui peuvent décoder le format pcap peuvent montrer des détails supplémentaires comme le nom et l'adresse IP contenus dans l'enregistrement A du DNS. ciscoasa#copy /pcap capture:DNSINSIDE tftp ... ciscoasa#copy /pcap capture:DNSOUTSIDE tftp Résolution de problèmes Cette section fournit des informations que vous pouvez utiliser pour résoudre des problèmes liés à votre configuration. La re-écriture DNS n'est pas exécutée Assurez-vous que l'inspection DNS a été configurée sur l'appliance de sécurité. La création d'une traduction échoue Si une connexion n'a pas pu être crée entre le client et le serveur WWW, cela pourrait être du à une mauvaise configuration NAT. Vérifiez les logs de l'appliance de sécurité pour des messages qui indiquent qu'un protocole a échoué dans la création d'une tra- duction au travers de l'appliance de sécurité. Si un tel message apparaît, vérifiez que NAT a été configuré pour le trafic désiré et que les adresses sont correctes. %ASA−3−305006: portmap translation creation failed for tcp src inside:192.168.100.2/11000 dst dmz:10.10.10.10/23 ccnp_cch