次のようにSSHトンネルを開きたいです。
ssh -f -N -L 172.16.0.0/12:5433:127.0.0.1:5432 server
ただし、このコマンドはエラーを発生させます。
channel_setup_fwd_listener_tcpip: getaddrinfo(172.16.0.0/12): Name or service not known
Could not request local forwarding.
ローカルシステムの複数のインターフェイスにトンネルを渡すにはどうすればよいですか?
そのCIDR範囲内のすべてのDockerコンテナからトンネルにアクセスできるようにこれを実装したいと思います172.16.0.0/12
。
サーバーとローカルシステムの両方がUbuntu 22.04.1 LTSにあります。OpenSSH_8.9p1 Ubuntu-3ubuntu0.1, OpenSSL 3.0.2 15 Mar 2022
回避策として、次のようにローカルIPあたりまたはより広範囲にトンネルを開くことができます。
ssh -f -N -L 0.0.0.0:5433:127.0.0.1:5432 server
必ずしもそうしたくありません。
ベストアンサー1
SSHトンネルがこのように機能するとは思わないでください。コンテナ接続を保護するには、Wireguardをお勧めします。
見るhttps://www.linuxserver.io/blog/routing-docker-host-and-container-traffic-through-wireguard
この概念は、別々のWireguardコンテナ(lscr.io/linuxserver/wireguard:latest)に基づいています。 Wireguardサーバーです
保護するコンテナがそれに接続されます。その後、ルーティングにより、トラフィックをWireguardコンテナ全体に効率的に分散できます。すべてを維持できるように、クライアント構成(Wireguardsクライアント用)の共有フォルダが作成されました。
これらすべてが比較的複雑なので、まずすべてを紙に書き留めて、IPとルーティングを準備することをお勧めします。