Angenommen, es gibt Hosts A
und B
. A
darf B
aufgrund seiner IP-Adresse SSH-Zugriff auf haben. Betrachten wir nun einen anderen Host C
. C
hat keinen Zugriff auf B
, aber wenn wir seinen Datenverkehr über umleiten könnten A
, C
könnte er auf zugreifen B
. Das Problem ist, wie diese Art der Adressübersetzung durchgeführt werden soll? Es befinden sich keine zwei Hosts im selben LAN.
Mein erster Gedanke war, SNAT mit iptables auf folgendem auszuführen A
:
iptables -t nat -A POSTROUTING --protocol tcp --source C --destination B --sport 7777 --dport 22 -j SNAT A
Das heißt, es C
sollte versucht werden, eine Verbindung herzustellen A:7777
, aber mir ist aufgefallen, dass das Routing des Pakets vor SNAT alles verdirbt, daher sollte die Adressübersetzung in PREROUTING erfolgen – was leider unmöglich ist. Ein anderer Gedanke war, ein VPN einzurichten, aber ich denke, das ist zu kompliziert. Gibt es eine saubere Möglichkeit, dies zu tun, vorzugsweise mit etwas so Sauberem wie iptables?