%rにスラッシュが含まれている場合にSSH ControlPathを正しく設定する方法は?

%rにスラッシュが含まれている場合にSSH ControlPathを正しく設定する方法は?

ユーザー名にスラッシュが含まれています。 ConfigPath として標準を使用する場合、~/.ssh/sockets/master-%r@%h:%pssh は unix_listener: Cannot Bind to Path ~/.ssh/sockets/master-username/which/contains/slash@host_ip:port.s5FLlcqcHkethwd0: No such file or Directory について文句を言います。

ユーザー名のスラッシュはパス区切り文字として解釈されるようです。

この問題をどのように解決できますか?

ベストアンサー1

これが%Cトークンの目的です。ドキュメントから:

%C    Hash of %l%h%p%r.

ユーザー名(およびその他のデータ)のハッシュを生成するので、ユーザー名に奇妙な文字が含まれていることを心配する必要はありません。

たとえば、次のように実行すると:

ssh -M -o ControlPath=/tmp/control-%C [email protected]

次の名前を見つけることができます。

/tmp/control-3ba0719e3df95b719713923899a65f64655dea64

おすすめ記事