「ssh_config(5)」マンページが、各共有接続を一意に識別するために、ControlPath
オプションに少なくとも%h
、%p
および%r
プレースホルダーを含めることを推奨するのはなぜですか?
複数のセッションが同じホストへの接続で同じソケットを共有する必要があると考えました。その場合、次のような単純な定義を持つことは意味がありませんか?
ControlPath ~/.cache/ssh/mux/%h
次のようなものの代わりに:
ControlPath ~/.cache/ssh/mux/%r@%h:%p
最初の定義を理解すると、1つの接続が、異なるリモートポート上の同じリモートホストへの、異なるリモートユーザーとの複数のセッション間で共有されます。
ホストのデフォルトセクションに最初の定義がありたいので、それで十分ssh -o ControlMaster=no
です。
リモートユーザーとリモートポートに関係なく、同じローカルユーザーによって開始されたすべてのセッション間で同じリモートホストへの接続を共有したい。マスタークライアントのソケットは、ローカルユーザーのホームディレクトリの下に存在する必要があります。