【问题标题】:Sending data to SSH client from server implemented in SSH Apache Mina从 SSH Apache Mina 中实现的服务器向 SSH 客户端发送数据
【发布时间】:2015-10-19 14:59:57
【问题描述】:

我们是 Apache MINA SSH 服务器的新手,目前正在研究反向 SSH

以下是后续步骤

  1. SSHD服务器在一个端口上启动,服务器实现StreamIOHandler
  2. 在收到来自设备的连接后,我们有IOSessionInputStreamOutputStream

问题:

  1. 如何使用这个IoSession,将数据写回设备。
  2. 我们能否获得与IoSession 关联的ClientChannel/ClientSession。 (或)这些仅适用于从客户端到服务器的连接而不是其他方式?
  3. 什么是IOInputStreamIOOuputStream

如果有人分享一些程序会很有帮助

谢谢 维克拉姆

【问题讨论】:

  • 什么意思“将数据写回设备”
  • 当设备连接到应用程序时,我们得到了 IoSession。在 Netconf 协议的情况下,当通道打开/创建时,我们(应用程序和设备)必须交换 hello 消息,这是需要使用 IoSession 将数据写回服务器的地方
  • 我在 Apache MINA (0.14) 中看不到任何 StreamIOHandler

标签: ssh mina


【解决方案1】:

您似乎正在通过 SSH 实现 NETCONF 协议。

当 NETCONF 通过 SSH 使用时,它被实现为“netconf”通道。

所以我假设你应该在 MINA 中实现一个 SSH 子系统,类似于实现 Command 接口的 SftpSubsystem

public interface Command {
    void setInputStream(InputStream in);
    void setOutputStream(OutputStream out);
    ...
}

使用setOutputStream 你会得到一个OutputStream。您写入流的任何内容都会发送到 (SSH) 客户端。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-23
    • 2018-01-12
    • 1970-01-01
    • 2014-09-07
    • 2012-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多