【发布时间】:2012-11-24 05:20:50
【问题描述】:
我在一个项目中使用OpenSSH version13。 然而,当我们尝试使用 ssh 连接到产品时,nchan.c 时不时会返回一个错误,我们会在产品中得到以下打印结果,然后连接被关闭。
channel 0: rcvd eof
output open -> drain
channel 0: obuf empty
channel 0: close_write
channel 0: output drain -> closed
所有这些输出都来自nchan.c。至少对我来说,仅仅阅读代码并尝试查看可能发生的事情似乎是不可能的!有谁知道为什么OpenSSH 可能会打印此错误消息并关闭连接?
我希望有人非常熟悉 OpenSSH 实现,为我指明正确的方向!
我使用python 连接到产品,更具体地说是python pexpect module。我建立了一个 SSH 连接,使用用户名、密码登录,然后执行一些命令并检查输出。这在大多数情况下都可以正常工作,但如前所述,连接时不时地失败。上面提供的输出可以在产品中看到,并且从pexpect 抛出异常,它从产品接收到EOF(文件结束)(意味着无法建立连接)。这几乎是我得到的所有打印输出。我希望有人能理解为什么 OpenSSH 不想建立连接!
【问题讨论】:
-
“产品”是否产生了这些信息?您如何尝试连接到它?如果使用
ssh,请在发生错误时提供ssh -v的打印输出。 -
您向我们展示的是调试消息。是否记录了任何其他错误消息?如果是:请按出现顺序将它们添加到调试消息中。
-
@soulseekah,请参阅上面修改后的问题
-
您使用的是来自
pexpect的pxssh吗?你能从运行中获得更多的详细信息吗?您需要提供更多信息,因为无法猜出问题所在。 -
@soulseekah,我使用 pexpect spawn 方法来设置 SSH 连接。我无法获得更多日志,因为我们直接使用 openssh,而这些都是我每次无法建立连接时得到的所有打印输出。