javaapacheminasshd:如何在中间创建一个合法的人?反向代理?

javaapacheminasshd:如何在中间创建一个合法的人?反向代理?,java,sftp,apache-mina,apache-sshd,Java,Sftp,Apache Mina,Apache Sshd,这个问题来自一种不太了解ssh/sftp的立场。。。 所以这里可能需要教育 我有一个可能看起来像透明反向代理的要求, 或者是一个正统的男人在中间。客户端需要连接到其sftp 服务器(我们已经开始工作了),但是现在我们需要设置一些路由 在他们和我们将拥有的众多服务器之间。这里的关键是我们 无法更改客户端sftp命令(例如,我们无法要求他们 添加-L、-R或-D等,用于ssh,或-oLocalForward,-oRemoteForward,或 -oProxyCommand等,用于sftp) 所以,因

这个问题来自一种不太了解
ssh
/
sftp
的立场。。。 所以这里可能需要教育

我有一个可能看起来像透明反向代理的要求, 或者是一个正统的男人在中间。客户端需要连接到其
sftp
服务器(我们已经开始工作了),但是现在我们需要设置一些路由 在他们和我们将拥有的众多服务器之间。这里的关键是我们 无法更改客户端
sftp
命令(例如,我们无法要求他们 添加
-L
-R
-D
等,用于
ssh
,或
-oLocalForward
-oRemoteForward
,或
-oProxyCommand
等,用于
sftp

所以,因为
tcp/ip
路由不能查看更有用的数据(source
ip
不是) 够了),我们需要基于用户名之类的内容进行路由

输入-这有一些很好的ascii艺术 显示它如何解决此问题。。。但是在
Go
中这样做

问题是,我们可以用apachesshd做类似于
sshpiper
的事情吗

我可以看到如何捕获所有
sftp
事件(使用
SftpEventListener
) 并将命令传递给由
会话id
映射的客户端,该客户端具有 可能是在授权阶段建造的?这不是一个好主意 选项as文件将暂时位于中间服务器上

我想我想要的是,但是要知道传入的用户名

是否有办法(从原始客户处)对下游连接进行管道连接 到由用户名映射的上游连接(许多
sftp
服务器之一)