Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Bidirektionale IP- UND Port-Translation: Wie lauten die konkreten iptables-Befehle?

Frage Linux Linux Netzwerk

Mitglied: Server-Nutzer

Server-Nutzer (Level 1) - Jetzt verbinden

06.12.2014 um 10:40 Uhr, 1889 Aufrufe, 6 Kommentare, 2 Danke

Hallo liebe Expertinnen und Experten.

Folgende Frage beschäftigt mich bezüglich IP- bzw. Port-Übersetzungen leider erneut (siehe http://www.administrator.de/frage/bidirektionale-ip-und-port-translatio ...).
Die dort vorgeschlagene Lösung war aus div. Gründen nicht das, was ich suche.

Ich weiß, dass es z.B. in Routern NAT gibt, z.B. um <externe-IP:443> zu <interne-IP:443> oder <externe-IP:8080> zu <interne-IP:80> hin und her zu übersetzen.

Wie lauten die konkreten iptables-Befehle, um auf einem (Root)vServer im Internet die (hier erfundene) IP 156.128.132.100 und z.B. Port 443 (156.128.132.100:443) auf sagen wir 103.95.199.67:10443 in bidirektionaler Richtung die Datenpakete transparent hin- und her übersetzen zu lassen?

Es sollen "lediglich" die IP-Adressen _UND_ zeitgleich der Port ausgetauscht, die Datenpakete aber in ihren Informationen ansonsten möglichst nicht tangiert werden.

Im LANCOM-Router hier am DSL würden dann die von extern eintreffenden, umgelenkten Datenpakete 103.95.199.67:10443 auf 192.168.10.100:443 geNATet. Die Antworten gehen dann wieder ebenso geNATet retour.

Hat das schon mal jemand gemacht?

Und wie lauten die konkreten Befehle bei iptables, um oben beschriebene IP-Adressen _UND_ zeitgleich Ports übersetzt werden?
(Und wie kann ich das wieder rückgängig machen, wenn ich mich vertan habe, ohne den vServer neu installieren zu müssen? )

Bin auf Linux noch ambitionierter Anfänger bis leichter Fortgeschrittener, würde das gern verstehen und lernen.

Herzliche Grüße
Jörg
Mitglied: colinardo
06.12.2014, aktualisiert um 15:20 Uhr
Hallo Jörg,
das ganze nennt sich Port-Proxy und sollte mit folgenden drei Regeln anhand deines Beispiel funktionieren:
01.
iptables -t nat -A PREROUTING --dst 156.128.132.100 -p tcp --dport 443 -j DNAT --to-destination 103.95.199.67:10443 
02.
iptables -t nat -A POSTROUTING -p tcp --dst 103.95.199.67 --dport 10443 -j SNAT --to-source 156.128.132.100 
03.
iptables -t nat -A OUTPUT --dst 156.128.132.100 -p tcp --dport 443 -j DNAT --to-destination 103.95.199.67:10443
Und nicht vergessen das IP Forwarding zu aktivieren:
echo 1 > /proc/sys/net/ipv4/ip_forward

Erläuterung zu den obigen Regeln

Die erste Regel macht ein DNAT(Destination NAT) in der Prerouting Tabelle, also alle Pakete die am Server auf dem jeweiligen Port eintreffenden Pakete, deren Destination wird umgeschrieben auf die Zieladresse.
Die zweite Regel ändert anschließend in der Post-Routing-Tabelle die Absenderadresse des Pakets (SNAT = Source NAT) auf die IP des Servers so das die Pakete auch wieder geregelt über ihn zurückfließen können.
Die dritte Regel leitet Pakete die von einem lokalen Prozess auf dem Server erzeugt wurden über die OUTPUT Chain ebenfalls auf den Zielserver.

Und wie kann ich das wieder rückgängig machen, wenn ich mich vertan habe, ohne den vServer neu installieren zu müssen?
Übe es am besten in einer VM zu Hause ! Und wenn du es dann verstanden hast und es läuft, gehst du über zum Live-Objekt und setzt es dort um.

Bin auf Linux noch ambitionierter Anfänger bis leichter Fortgeschrittener, würde das gern verstehen und lernen.
iptables-Grundlagen

Schönen Nikolaus
Grüße Uwe
Bitte warten ..
Mitglied: Server-Nutzer
06.12.2014 um 23:57 Uhr
Hallo Uwe,

so, hab das mal probiert. Scheint zu funktionieren.

Schönen Dank! Und schönes Loch im Hemde äh Wochenende!
Jörg
Bitte warten ..
Mitglied: Server-Nutzer
07.12.2014 um 01:58 Uhr
Hm, eine Nachfrage hab ich dann doch:

"iptables -L" macht mir die o.g. drei eingefügten iptabels-Einträge nicht sichtbar.
Wie geht das denn, grad wenn ich die Einträge mal ändern/löschen möchte?

Beste Grüße
Jörg
Bitte warten ..
Mitglied: colinardo
07.12.2014, aktualisiert um 09:23 Uhr
Zitat von Server-Nutzer:

Hm, eine Nachfrage hab ich dann doch:

"iptables -L" macht mir die o.g. drei eingefügten iptabels-Einträge nicht sichtbar.
Wie geht das denn, grad wenn ich die Einträge mal ändern/löschen möchte?
Mit IPTables -L werden die Standardmäßig nur die Filter-CHAINS angezeigt, um dir die NAT-Tables (Prerouting/Postrouting/OUTPUT) anzeigen zu lassen benutze zusätzlich die Angabe der Tabelle mit dem Parameter -t
iptables -t nat -vL
Das v macht die Ausgabe etwas ausführlicher.

Um jetzt als Beispiel den ersten Eintrag in der PREROUTING Chain zu löschen:
iptables -t nat -D PREROUTING 1
Alles andere erfährst du in der manpage zu iptables (man iptables).

Grüße Uwe
Bitte warten ..
Mitglied: Server-Nutzer
07.12.2014 um 10:18 Uhr
Hallo Uwe,

ich bin bei der vielen Parametermöglichkeiten irgendwie "falsch" abgebogen.
Danke Dir.

Klappt übrigens, wie gewünscht: Habe mal Exchange-Zugang fürs Büro damit umgeleitet.
Über die Methode könnte man tatsächlich nun zwei Exchangeserver an einem (V)DSL-Anschluss (nur eine feste IP erhältlich bei Telekom) betreiben und von außen drauf zugreifen.

Schönen Sonntag noch.

Jörg
Bitte warten ..
Mitglied: colinardo
07.12.2014, aktualisiert um 12:21 Uhr
Noch zur Info falls du es mal irgendwann brauchen solltest: Die Funktion eines Port-Proxies gibt es nativ auch auf Windows-Maschinen: netsh interface portproxy

Schönen Sonntag noch.
Gleichfalls

Uwe
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
DSL, VDSL
Telekom blockiert immer noch den Port 7547 in ihrem Netz (6)

Erfahrungsbericht von joachim57 zum Thema DSL, VDSL ...

Firewall
gelöst Site-to-Site-VPN und Cisco VPN-Client von gleicher IP (2)

Frage von TripleDouble zum Thema Firewall ...

LAN, WAN, Wireless
gelöst 1 Port in mehreren VLANs? (7)

Frage von mario87 zum Thema LAN, WAN, Wireless ...

Erkennung und -Abwehr
Backdoor in IP-Kameras von Sony (5)

Link von Lochkartenstanzer zum Thema Erkennung und -Abwehr ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...