A
ホストとがあるとしますB
。は、IP アドレスに基づいてA
への SSH アクセスが許可されます。 ここで、別のホスト について考えます。は にアクセスできませんが、そのトラフィックを 経由でルーティングできれば、にアクセスできます。 問題は、この種のアドレス変換をどのように行うかです。 2 つのホストが同じ LAN 上に存在することはできません。B
C
C
B
A
C
B
最初に考えたのは、iptables をオンにして SNAT を実行することでしたA
。
iptables -t nat -A POSTROUTING --protocol tcp --source C --destination B --sport 7777 --dport 22 -j SNAT A
つまり、C
接続を試みるべきですA:7777
が、SNAT の前にパケットをルーティングするとすべてが台無しになるので、アドレス変換は PREROUTING で行う必要があることに気付きました。残念ながらこれは不可能です。別の考えとしては、VPN を設定することでしたが、複雑すぎると思います。これを行うための、できれば iptables のようなクリーンなもので、すっきりとした方法はありますか?