Alle Anfragen auf Port 80 + 443 auf eine andere IP umleiten

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
jack88
Beiträge: 72
Registriert: 23.05.2008 18:50:25

Alle Anfragen auf Port 80 + 443 auf eine andere IP umleiten

Beitrag von jack88 » 16.07.2014 08:52:00

Hallo,

ich möchte alle Anfragen auf Port 80 + 443 übergangsweise auf einen anderen Server/IP umleiten.

Würde/könnte man das z.B. direkt mit iptables machen:

Code: Alles auswählen

echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination xx.xx.xx.xx:80
iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination xx.xx.xx.xx:443
iptables -t nat -A POSTROUTING -j MASQUERADE
oder spricht etwas dagegen?

VG
jack

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Alle Anfragen auf Port 80 + 443 auf eine andere IP umlei

Beitrag von Cae » 16.07.2014 09:07:26

Das kann man schon so machen, ist halt die Frage, ob das so sinnvoll ist (oder ein transparenter reverse proxy das nicht besser tut). Probleme waeren: Die Anwendung kann die Quell-IP des Clients nicht richtig zuordnen, d.h. u.U. ist es einem normalen Account leicher moeglich, z.B. eine administrative Session zu uebernehmen. Dann haengt es von der restlichen Firewall (FORWARD-Policy) ab, ob die Kiste ab sofort auch ungewollten Traffic routet. Unspezifisches -j MASQUERADE kann ungewollt anderen Traffic umschreiben, da sollte man mit -d {Ziel-IP} genauer eingrenzen.

Generell werden die obenstehenden Zeilen aber die gewuenschte Wirkung haben.

Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

jack88
Beiträge: 72
Registriert: 23.05.2008 18:50:25

Re: Alle Anfragen auf Port 80 + 443 auf eine andere IP umlei

Beitrag von jack88 » 16.07.2014 09:26:22

Vielen Dank erstmal für die schnelle Antwort.
Probleme waeren: Die Anwendung kann die Quell-IP des Clients nicht richtig zuordnen
Ja, das ist mir bekannt, es handelt sich allerdings nur um eine kurzfristige Übergangslösung während der Serverumstellung. Es ist so, daß wir bei dem Provider ziemlich viele Domains haben und es leider keine vernünftige Möglichkeit gibt diese auf einmal auf eine andere IP umzuswitchen. Deshalb wird das wahrscheinlich 1-2 Tage dauern bis alles umgestellt ist und in dieser Zeit möchte ich die noch nicht umgestellten Domains so einfach wie möglich schon mal auf den neuen Server umleiten.
Unspezifisches -j MASQUERADE kann ungewollt anderen Traffic umschreiben, da sollte man mit -d {Ziel-IP} genauer eingrenzen.
Ok, also würde die endgültige Version so aussehen:

Code: Alles auswählen

echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination xx.xx.xx.xx:80
iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination xx.xx.xx.xx:443
iptables -t nat -A POSTROUTING -d xx.xx.xx.xx -j MASQUERADE
oder gibt es evtl. noch etwas anderes zu beachten?

vg
jack

wanne
Moderator
Beiträge: 7625
Registriert: 24.05.2010 12:39:42

Re: Alle Anfragen auf Port 80 + 443 auf eine andere IP umlei

Beitrag von wanne » 16.07.2014 10:22:17

Code: Alles auswählen

echo "1" > /proc/sys/net/ipv4/ip_forward
Kannst du dir sparen.
rot: Moderator wanne spricht, default: User wanne spricht.

Antworten