我发现OpenSSH 能够像这样转发 UNIX 套接字:
ssh -R /var/run/program.sock:/var/run/program.sock
我的问题是这是否也扩展到抽象 unix 套接字。
我尝试了以下方法无济于事:
ssh -nNT -R @laminar:@laminar
ssh -nNT -R unix-abstract:laminar:unix-abstract:laminar
有问题的程序确实支持基于文件的 unix 套接字,但由于它默认使用抽象套接字,我想避免重新配置它以尽可能简化问题。
- OpenSSH(客户端)版本:
OpenSSH_7.4p1 Raspbian-10+deb9u4, OpenSSL 1.0.2q 20 Nov 2018
- OpenSSH(服务器)版本:
OpenSSH_7.6p1 Ubuntu-4ubuntu0.1, OpenSSL 1.0.2n 7 Dec 2017
不,这对于标准的 openssh-portable 是不可能的。
例如,您可以在此处
unix_listener()
查看函数。也许有补丁浮动,但我不会用谷歌搜索结果来回答;-)
添加这样的东西在技术上应该很容易,但是谁来处理“政治”部分,即。说服 openssh 开发人员加入补丁?
FWIW,这样的补丁应该默认检查连接到套接字的客户端的对等凭据;openssh 已经包含了必要的兼容代码。