Ich habe derzeit eine NAS-Box unter Port 80. Um von außen auf den NAS zuzugreifen, habe ich den Port 8080 wie folgt dem Port 80 auf dem NAS zugeordnet:
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j DNAT --to-destination 10.32.25.2:80
Das funktioniert wie ein Zauber. Dies funktioniert jedoch nur, wenn ich von außerhalb des Netzwerks auf die Website zugreife (bei der Arbeit, in einem anderen Haus usw.). Wenn ich mywebsite.com:8080
tippe, erledigen IPTables die Arbeit korrekt und alles funktioniert einwandfrei.
Das Problem ist nun, wie kann ich diesen Port von innerhalb des Netzwerks umleiten? Mein Domainname zeigt mywebsite.com
von innen auf meinen Router (meinen Linux-Server) (10.32.25.1), aber ich möchte Port 8080 von innen auf Port 80 auf 10.32.25.2 umleiten.
Irgendeine Ahnung?
Bearbeiten Sie # 1
Um diese Frage zu erleichtern, habe ich dieses Diagramm zusammengestellt. Bitte zögern Sie nicht zu aktualisieren, wenn es falsch ist oder falsch darstellt, wonach Sie suchen.
iptables
| .---------------.
.-,( ),-. v port 80 |
.-( )-. port 8080________ | |
( internet )------------>[_...__...°]------------->| NAS |
'-( ).-' 10.32.25.2 ^ 10.32.25.1 | |
'-.( ).-' | | |
| '---------------'
|
|
__ _
[__]|=|
/::/|_|
10.32.25.1:8080
Weiterleiten an sagen 10.32.25.2:80
. Meine obige Regel lautet: Arbeiten von außen, aber nicht von innen in meinem Netzwerk. Also , wenn ich im Büro bin, kann ich meine NAS aus zugreifen website.com:8080 und es ist völlig transparent. Von zu Hause aus zeigt website.com:8080 auf 10.32.25.1, da es sich um meinen Router oder Linux-Server handelt. Ich möchte den Port 8080 auch auf Port 80 zum NAS umleiten, aber wieder auf transparente Weise.
eth0 10.32.25.2
, damit wir iptables schreiben können, die auf der eingehenden Schnittstelle basieren