next up previous contents
Next: Utilisation de ``jetons'' Up: Toujours plus de sécurité Previous: Mandatement ou relais (serveur

Translation d'adresses (masquerading, NAT)

C'est le système fréquemment utilisé sous Linux ou *BSD, et qui a un très grand mérite : il ne demande aucune configuration sur le client (hormis l'adresse IP, réseau et routeur ; et encore, en DHCP cela peut être entièrement automatisé). Cela fonctionne comme un mandatement généralisé. Le serveur responsable de cette opération a dans sa table de routage ou de firewall une entrée du type ``masquerade tous les paquets venant du réseau X, destinés au réseau Y, sur le port Z''. En général, X désigne le réseau interne, Y le réseau Internet, et Z tous les ports (sauf si on veut restreindre à l'usage du Web, par exemple). Concrètement, lorsque le serveur reçoit un paquet venant du réseau X et destiné au réseau Y, il ``maquille'' ce paquet, en faisant croire qu'il vient de lui-même ; et il note le port source qu'il utilise de son côté. Et ensuite il l'envoie sur Y. Lorsque les réponses arrivent - sur le port source, qu'il a noté - il remaquille les paquets et les renvoie à l'hôte du réseau X, qui n'y voit que du feu.

C'est à ce jour la seule solution que je connaisse qui marche sur toutes les plateformes sans installation d'aucun logiciel particulier. Les gens pointilleux remarqueront un détail : cela ne peut marcher que pour les protocoles où il y a une notion de port, puisque j'ai parlé de port source. Eh bien ça marche aussi pour ICMP, mais au lieu de noter le port, le serveur note un numéro de séquence.

La traduction d'adresses, comme tous les autres systèmes de mandatement, a cela de magique qu'un hôte du réseau privé a un accès quasi illimité au monde extérieur, mais que le monde extérieur ne peut en aucun cas s'introduire sur le réseau privé, puisque les hôtes de ce réseau n'existent pas, de l'extérieur. Le seul moyen est alors de s'introduire dans le firewall - ce qui est très difficile, puisque nous avons consciencieusement désactivé tous les serveurs, et tous les moyens d'accès extérieurs.


next up previous contents
Next: Utilisation de ``jetons'' Up: Toujours plus de sécurité Previous: Mandatement ou relais (serveur
Jerome PETAZZONI
1999-04-02