Iptables leiten den gesamten Datenverkehr an einen bestimmten Port an ein anderes Gerät weiter

8

Wie kann ich diese iptables-Regel so ändern, dass der gesamte für diesen Computer eingehende Datenverkehr an 192.168.42.10 weitergeleitet wird?

iptables -t nat -A PREROUTING -s 192.168.46.0/24 -p tcp --dport 80 -j DNAT --to-destination 192.168.42.10:80

Das Problem ist, dass ich die IP-Tabellenregel aus ansible erstelle und sie in verschiedenen Umgebungen erstelle, in denen die IP-Adressbereiche unterschiedlich sind, aber ich möchte den 80-Port immer an 192.168.42.10 weiterleiten.

Kürbissamen
quelle

Antworten:

8

Diese Regel leitet den 80-Port an 192.168.42.10 weiter

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.42.10:80

Dies reicht jedoch nicht aus. Wenn Sie Datenverkehr zurückerhalten möchten, sollten Sie diese Regel hinzufügen

iptables -t nat -A POSTROUTING -p tcp -d 192.168.42.10 --dport 80 -j SNAT --to-source 192.168.42.1

Dabei ist die IP-Adresse 192.168.42.1 Ihr iptables-Computer

Diese beiden Regeln müssen die Aufgabe lösen.

Stambata
quelle
Danke, dass es funktioniert, aber ich hatte ein anderes Problem. Hier ist meine aktuelle iptbales pastebin.com/gasEMiqh und es hat eine nat zu den LXC - Container. Wenn ich den Port Forward in den Containern verwende, kann ich das Yum nicht verwenden, daher kann ich keine Pakete installieren. Wie kann ich dieses Problem lösen?
PumpkinSeed
Sie müssen yam für die Verwendung eines HTTP-Proxys konfigurieren. Um allen yum-Vorgängen die Verwendung eines Proxyservers zu ermöglichen, geben Sie die Details des Proxyservers in /etc/yum.conf an. Weitere Informationen finden Sie unter diesem Link centos.org/docs/5/html/yum/sn-yum-proxy-server.html
stambata