voila j'ai retrouvé
NAT avant VPN
Par défaut, le module NAT intervient après le module IPSec. Cela implique qu'aucune traduction ne peut-être effectuée avant l'entrée des paquets au sein de tunnels. Pour permettre la traduction avant l'entrée au sein de tunnels, l'option NAT avant VPN (ou NAT before VPN) doit être activée. Cette option ne fait que modifier l'ordre de traitement des paquets : le module NAT traitera alors les paquets avant le module IPSec.
En configurant le module NAT lorsque l'option NAT avant VPN est active, plusieurs choses doivent être prises en compte :
Le module NAT n'a pas conscience d'un possible traitement des flux sortant par le module IPSec. La définition de NAT sortant s'appliquant à des flux devant entrer dans un tunnel IPSec doit mentionner l'interface de sortie des flux IPSec (e.g., Out) et non l'interface IPSec.
Les flux en provenance de tunnels IPSec sont perçus par le module NAT comme venant de l'interface IPSec.
L'opération nomap doit être utilisée pour éviter tout conflit avec les opérations de NAT sortant ne concernant pas les flux IPSec.
Par exemple, supposons la configuration suivante :
Un firewall doté de deux interfaces : in et out et dont l'interface externe est out.
Deux tunnels IPSec : l'un à destination du réseau Alpha et l'autre du réseau Bravo.
Une opération map utilisée pour donner accès à Internet aux machines de Network_in et définie comme suit :
Map permettant l'accès à Internet Interface Action Original Destination Port destination Translaté Port translaté
out map Network_in any any Firewall_out ephemeral_fw
Il devient nécessaire d'appliquer une traduction des flux à destination du réseau Bravo. L'option NAT avant VPN doit donc être utilisée. Le réseau local Network_in doit-être traduit en son équivalent, le réseau Virtuel avant l'entrée dans le tunnel IPSec à destination du réseau Bravo. L'administrateur de la passerelle IPSec protégeant le réseau Bravo modifie donc sa politique IPSec afin de refléter ce changement : le réseau Bravo n'est plus interconnecté au réseau Network_in mais au réseau Virtuel. De même, l'administrateur du firewall modifie la politique IPSec de manière concordante.
Comme le module NAT n'a pas conscience que les flux à destination du réseau Bravo seront traités par le module IPSec, la règle de traduction sortante à définir est la suivante :
Traduction du réseau Bravo en Virtuel en sortie sur out Interface Action Original Destination Port destination Translaté Port translaté
out bimap Network_in Bravo any Virtuel any
Cependant, si une machine du réseau Bravo tente d'initier une connexion à destination d'une machine du réseau Virtuel, celle-ci échouera car le module NAT ne cherchera pas à appliquer une opération bimap définie sur l'interface out à un flux entrant par l'interface IPSec. Par conséquent, cette seconde règle est nécessaire :
Traduction du réseau Bravo en Virtuel en entrée sur IPSec Interface Action Original Destination Port destination Translaté Port translaté
IPSec bimap Network_in Bravo any Virtuel any
A noter que cette règle est identique à l'interface prés à la règle précédente. A noter également que ces deux règles, pour être prioritaires sur la règle map permettant l'accès à Internet aux machines du réseau Network_in, doivent être positionnées avant cette règle car elles sont de précision égale (voir Ordre d'application des règles de traduction) puisque visant toutes deux à traduire des réseaux.
Maintenant que le module NAT traite les flux sortant avant le module IPSec, les flux à destination du réseau Alpha seront sujet à la même traduction que les flux à destination d'Internet. Pour éviter que les flux allant du réseau Network_in au réseau Alpha ne soient traduits, il est nécessaire d'utiliser l'opération nomap :
Empêcher la traduction des flux à destination du réseau Alpha Interface Action Original Destination Port destination
out nomap Network_in Alpha any
Cette règle devra être positionnée avant la règle map. Voici un récapitulatif de la configuration NAT :
Résultat Interface Action Original Destination Port destination Translaté Port translaté
out bimap Network_in Bravo any Virtuel any
IPSec bimap Network_in Bravo any Virtuel any
out nomap Network_in Alpha any n/a n/a
out map Network_in any any Firewall_out ephemeral_fw