Pour un débutant, tu te débrouilles plutôt bien avec mes indications sommaires.
Un mot sur l’ICMP Redirect. Quand la machine retransmet un paquet vers le routeur qui est dans le même réseau que le poste émetteur, normalement elle devrait renvoyer à ce dernier un message ICMP Redirect pour lui signaler qu’il y a une route plus courte pour cette adresse de destination en envoyant directement les paquets suivants au routeur. Ça a l’air plutôt bien dans le principe puisque ça évite un détour inutile, mais il y a un inconvénient : ça concerne tous les paquets envoyés à cette adresse de destination, quel que soit le port. Donc dans le cas de communications en HTTPS (ou autre protocole) puis en HTTP vers un même serveur, les communications en HTTP court-circuiteraient aussi le proxy, ce qui n’est probablement pas souhaitable. Je dois néanmoins préciser que certains OS ignorent les ICMP Redirect par défaut.
Pour désactiver l’envoi d’ICMP Redirect sur une interface, il faut mettre à la fois net/ipv4/conf/all/send_redirects et net/ipv4/conf//send_redirects à 0, alors qu’ils sont à 1 par défaut. Le premier ne suffit pas. On peut modifier la valeur par défaut sur les interfaces en mettant net/ipv4/conf/default/send_redirects à 0 aussi.
Alternativement, on peut ajouter une commande sysctl pour une interface donnée dans une option up dans /etc/network/interfaces.
iface eth0 inet static
...
up sysctl net.ipv4.conf.eth0.send_redirects=0
Ou bien, plus radicalement, on peut bloquer ce type ICMP en sortie avec une règle iptables.
Une petite amélioration supplémentaire consisterait à ne pas faire de suivi de connexion sur les paquets routés. En effet les paquets retour ne repassent pas par la machine, ils vont directement du routeur au poste client. Dans cette configuration de routage asymétrique, le suivi de connexion n’a pas de sens. On peut exonérer des paquets du suivi de connexion avec un règle iptables ayant la cible NOTRACK dans la table ‘raw’.
iptables -t raw -A PREROUTING -s 192.168.0.0/24 -p tcp --dport 80 -j ACCEPT
iptables -t raw -A PREROUTING -j NOTRACK