2. Sommaire (J'aime bien débuter par un sommaire!)

Considérons que l'interface réseau externe est eth0, l'adresse IP 123.12.23.43 et l'interface réseau interne est eth1 :

$> modprobe ipt_MASQUERADE # Si cela échoue, essayez tout-de-même de continuer
$> iptables -F; iptables -t nat -F; iptables -t mangle -F
$> iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 123.12.23.43
$> echo 1 > /proc/sys/net/ipv4/ip_forward

Ou pour une connexion par modem:

$> modprobe ipt_MASQUERADE # Si cela échoue, essayez tout-de-même de continuer
$> iptables -F; iptables -t nat -F; iptables -t mangle -F
$> iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
$> echo 1 > /proc/sys/net/ipv4/ip_forward

Pour sécuriser cela:

$> iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$> iptables -A INPUT -m state --state NEW -i ! eth0 -j ACCEPT
$> iptables -P INPUT DROP   #seulement si les deux commandes précédentes ont abouties
$> iptables -A FORWARD -i eth0 -o eth0 -j REJECT

Ou pour une connexion par modem (avec eth0 comme interface réseau interne):

$> iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
$> iptables -A INPUT -m state --state NEW -i ! ppp0 -j ACCEPT
$> iptables -P INPUT DROP   #seulement si les deux commandes précédentes ont abouties
$> iptables -A FORWARD -i ppp0 -o ppp0 -j REJECT

Et voilà! Pour visualiser les règles tapez "iptables -t nat -L"