Le transfert du trafic sur Linux avec IPTABLES
IPTables vous permet de configurer facilement les règles de filtrage de paquets / expédition.
Donc, pour faire court et simple: supposons que vous souhaitez transférer tout le trafic provenant de votre machine (192.168.0.1) sur le port 80 à machine2 (192.168.0.2) sur le port 8080, puis:
- Activer la redirection de port:
echo 1> / proc/sys/net/ipv4/ip_forward
- Maintenant, ajoutez les règles:
iptables-t nat-A PREROUTING-p tcp-d 192.168.0.1-dport 80-j DNAT-to 192.168.0.2:8080
iptables-t nat-A POSTROUTING-d 192.168.0.2-j MASQUERADE
Le flag-p tcp spécifie que le protocole est TCP (par opposition à UDP, ICMP par exemple).
L'option-d 192.168.0.1 drapeau spécifie que les paquets était destiné à IP 192.168.0.1
Le-dport 80 signifie que le paquet avait comme destination le port 80
-J est la cible de la règle appliquée, NAT (network address translation). En plus des règles avancées, on peut spécifier une chaîne prédéfinie de règles iptables.
À précisera à l'endroit où le paquet doit être transmis, et sur lequel le port
Quant à la seconde règle, il est dit que les paquets sortants à la deuxième machine doit être masqué. En d'autres termes, l'utilisateur tente d'accéder à la machine d'origine sur le port 80 n'aura pas le sentiment que sa demande a été transmise. Le paquet va apparaître comme s'il venait de la machine de masquage, tandis que dans la pratique, la demande a été transmise à machine2, et la réponse revient à partir de cette même machine.
Sur une note latérale, assurez-vous d'ajouter ces règles iptables dans un fichier, lui donner une autorisation d'exécution (chmod + x / chemin / vers / fichier), et l'ajouter au fichier / etc / rc.local pour qu'il soit exécuté à chaque démarrage du système. Autrement, les règles ci-dessus seront fliushed chaque fois que votre système est redémarré.
