Guide pratique de l'IP masquerade simplifié: Version française du Masquerading made simple HOWTO | ||
---|---|---|
Prev | Next |
Cela devrait fonctionner maintenant. N'oubliez pas de :
Configurer toutes les machines du réseau interne afin d'indiquer comme passerelle l'adresse réseau unique de la machine Linux. (Sous Windows, clic droit sur le voisinage réseau ->propriétés->connexion au réseau local -> propriétés -> Protocol Internet (TCP/IP) -> passerelle, et remplacez-la par l'adresse IP interne de la machine Linux.)
Configurer tous vos clients afin d'utiliser le serveur proxy http de votre fournisseur d'accès si vos clients en ont un, et utiliser un proxy en mode transparent (ATTENTION - Certains rapports font état de proxy en mode transparent engendrant un ralentissement très important sur les très grands réseaux ), ou activez le squid sur votre passerelle Linux (ceci est facultatif mais préférable pour les grands réseaux)
Spécifier un serveur de DNS sur les machines clientes. Sinon vous obtiendrez un message d'erreur indiquant 'cannot resolve address' etc. Si la résolution d'adresse DNS fonctionnait (adresse URL fonctionnelle) avant d'avoir configuré le MASQUERADING, cela signifie que le serveur DHCP de votre fournisseur d'accès n'arrive plus à vous indiquer quelle est l'adresse DNS.
[Aparté] Je me demande si vous ne pourriez pas simplement envoyer un broadcast DHCP qui sera acheminé vers le serveur dns ( et vers le proxy http pendant qu'on y est) sans avoir à configurer un serveur DHCP (ou même si vous le faites). Quelqu'un pourrait-il me renseigner à ce sujet? :)
Merci à Richard Atcheson pour me l'avoir fait remarquer
A présent, vous devriez commencer à sécuriser un peu tout cela! Premièrement, désactivez le routage : "iptables -P FORWARD DROP", puis apprenez à utiliser les règles de filtrage iptables, /etc/hosts.allow et /etc/hosts.deny afin de sécuriser votre système. ATTENTION - N'essayez pas d'appliquer ces règles iptables avant d'avoir un masquerading opérationnel. Vous devez explicitement autoriser chaque transfert de paquet si vous paramétrez la dernière règle avec l'option DENY. (Annulez avec "iptables -P FORWARD ACCEPT")
Autorisez les accès provenant d'Internet pour chaque service.
Par exemple, pour autoriser l'accès au serveur web, vous faites:
$> iptables -A INPUT --protocol tcp --dport 80 -j ACCEPT $> iptables -A INPUT --protocol tcp --dport 443 -j ACCEPT
Pour autoriser l'authentification ( Se connecter sur les channels IRC etc...), faites
$> iptables -A INPUT --protocol tcp --dport 113 -j ACCEPT
Pour le tester:
Essayez de vous connecter sur Internet depuis une machine cliente en utilisant une adresse IP. L'adresse IP de Google est 64.233.183.103 (enfin, l'une d'entre elles) et vous devriez obtenir une réponse en retour Par exemple "ping 64.233.183.103" "lynx 64.233.183.103".
Essazyez une connexion par nom, par exemple "ping google.fr" "lynx google.fr" ou depuis Internet Explorer / netscape.
Où eth0 est l'interface réseau externe, et 123.12.23.43 est l'adresse ip de ce client.