短い質問:

短い質問:

短い質問:

SSH経由でローカルUnixソケット(〜/ test.sock)にどのように接続しますか?ソケットは物理 SSH サーバーに渡されます。明らかにうまくいかず、文書が見つかりません。

public> ssh /home/username/test.sock
"ssh: Could not resolve hostname: /home/username/test.sock: Name of service not known"

長い質問:

私が解決しようとしている問題は、私の(public)大学サーバーでlocalNATの背後にあり、一般に公開されていない私の()PCに接続することです。

標準的なソリューションは、SSHプロキシ/localトンネルを作成することですpublic

local> ssh -NR 2222:localhost:22 public

しかし、政府が港湾造成を禁止しているため、これは不可能だ。だから私は代わりにUNIXソケットを使う方法を考えましたが、次のように動作します。

local> ssh -NR /home/username/test.sock:localhost:22 public

ところで、SSHを使用してどのように接続できますか?

答え1

あなたは利点を活用する必要がありますsocatそしてプロキシコマンド オプションSSH用。 ProxyCommand プロキシ プロセスを使用してサーバーと通信するように SSH クライアントを構成します。socat間の双方向通信を設定します。標準入力/標準出力socatおよびSSHクライアント)とあなたのUnixソケット

ssh -o "ProxyCommand socat - UNIX-CLIENT:/home/username/test.sock" foo

答え2

動作するようにプール要求を送信しましたが、まだマージしていません。

https://github.com/openssh/openssh-portable/pull/162

答え3

私は偶然偶然発見したhttps://medium.com/@dperny/forwarding-the-docker-socket-over-ssh-e6567cfab160OpenSSH 6.7以降、ソケット配信が可能であることを議論します。

与えられた例は次のとおりです。

ssh -nNT -L $(pwd)/docker.sock:/var/run/docker.sock user@someremote

したがって、socatはもう必要ありません。

関連情報