问题标签 [libssh]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
501 浏览

php - 使用 phpseclib 解析“passwd”命令

我尝试使用 phpseclib 将“passwd”命令解析到我的机器,但它无法通过第一个密码输入。看看下面的代码。

我得到的输出是:

或者我可以用另一种方式做到这一点吗?

谢谢

0 投票
1 回答
1544 浏览

libssh - libssh 会话连接超时错误

我已经从libSSH下载并编译了 libssh 0.6.1 。
我还将 ssh.lib,ssh.dll 链接到一个可视化 c++ 项目。
带有以下代码的库编译并运行良好,
但在调用 ssh_connect() 时,它返回 -1: Timeout 。
我使用了以下选项:

ssh_options_set(my_ssh_session, SSH_OPTIONS_LOG_VERBOSITY, &verbosity);

打印日志,它说:

ssh_connect :套接字连接现在等待回调工作。
ssh_connect : 连接本地主机超时。

在我的笔记本电脑上,我安装了FreeSSHd服务器并使用 putty 连接到它。

我的代码,直到出现错误:

此代码示例从典型的 SSH 会话示例站点复制而来。

0 投票
0 回答
417 浏览

c - 我可以将 libssh 与 SSH2 一起使用吗?

我正在尝试使用 libssh在远程主机上执行show_remote_files(session) 。但它卡住并给出以下输出。

我使用了 get_ssh_version,它显示2

我不能将 ssh2 与 libshh 一起使用吗?如何告诉我的系统(linux)改用 ssh1?

[2014/09/28 11:21:02.134908, 1] ssh_connect: libssh 0.6.1 (c) 2003-2014 Aris Adamantiadis、Andreas Schneider 和 libssh 贡献者。在 LGPL 下分发,请参阅 COPYING 文件以获取有关您的权利的信息,使用线程threads_noop

[2014/09/28 11:21:02.170424, 2] ssh_socket_connect:非阻塞连接套接字:3

[2014/09/28 11:21:02.170466, 2] ssh_connect:套接字连接,现在等待回调工作

[2014/09/28 11:21:02.294109, 1] socket_callback_connected: 套接字连接回调: 1 (0)

[2014/09/28 11:21:02.330777, 1] ssh_client_connection_callback:SSH 服务器横幅:SSH-1.99-OpenSSH_5.3

[2014/09/28 11:21:02.330815, 1] ssh_analyze_banner:分析横幅:SSH-1.99-OpenSSH_5.3

[2014/09/28 11:21:02.330827, 1] ssh_analyze_banner:我们正在与 OpenSSH 客户端版本对话:5.3 (50300)

[2014/09/28 11:21:02.492126, 2] ssh_packet_dh_reply:收到 SSH_KEXDH_REPLY

[2014/09/28 11:21:02.493287, 2] ssh_client_dh_reply: SSH_MSG_NEWKEYS 已发送

[2014/09/28 11:21:02.493324, 2] ssh_packet_newkeys:收到 SSH_MSG_NEWKEYS

[2014/09/28 11:21:02.493604, 2] ssh_packet_newkeys:签名验证和有效 ssh_get_version = 2 before after

[2014/09/28 11:21:02.495199, 2] channel_open:创建具有 64000 窗口和 32768 最大数据包的通道 43

[2014/09/28 11:21:02.602802, 1] ssh_packet_unimplemented:收到 SSH_MSG_UNIMPLEMENTED(序列号 3)

int rc = ssh_channel_open_session(channel);

当会话处于阻塞模式时,此行会阻塞代码。

0 投票
1 回答
542 浏览

c++ - 使用 libssh 链接期间未定义的符号

我正在使用libssh来完成两个系统之间的连接,ssh服务器是redhat,客户端是CentOS。

我的代码编译和链接都很好,除了在运行时我一直看到这个,

代码看起来像这样,

我知道这段代码有很多问题,但在这一点上,我第一次尝试这个库,更关心让它工作。任何对正在发生的事情的见解将不胜感激。

0 投票
2 回答
1756 浏览

ssh - libssh 尝试使用公钥和私钥进行身份验证

我一直在尝试使用 libssh 连接到服务器并通过 SFTP 下载文件。我有一个 PuTTY 私钥文件,其中包含 6 行公钥和 12 行私钥,但我找不到任何体面的帮助或文档来获取这些密钥并使用它们来验证与服务器的连接。有人知道怎么做这个吗?

到目前为止,我能找到的唯一身份验证选项是我在 libssh 头文件中找到的:

但是,我不知道 PuTTY.ppk文件中的密钥如何转换为ssh_string公钥或ssh_private_key私钥。

0 投票
1 回答
234 浏览

c++ - sftp_read 从文件读取时会跳转大块字节

我正在尝试通过 sftp 下载文件,到目前为止,我已经通过 ssh 会话连接到服务器,然后使用 ssh 会话打开了一个 sftp 会话,一切似乎都很好。我在服务器上打开了一个文件,我正在使用 sftp_read() 从文件中获取字节块。我的代码是:

但是由于某种原因,在读取块时,前 20 个字节是正确的,但第 21 个字节直到第 16384 个字节是错误的。事实证明,读取 20 个字节后,读取器跳转到文件的第 16384 个字节并继续读取,就像什么都没发生一样。

我做了一些测试,如果我将缓冲区更改为任何大小,无论是 16384、21、22、50 等,它在正确读取 20 个字节后仍会跳转到第 16384 个字节。

是否有一个原因?有没有比 libssh 和 sftp 更好的库,我可以毫无错误地使用?

0 投票
1 回答
405 浏览

c++ - libssh:简单实现中丢失的内存

我正在尝试一个非常简单的实现,libssh但 valgrind 显示内存泄漏。

代码是:

汇编:

VALGRIND 运行:

直接运行:

LINUX 版本:

我已经对此进行了实验。如果我删除该功能ssh_connect()(当然还有其他以下功能),那么我不会有任何泄漏。所以,泄漏一定是由这个函数引发的。但是在我的小程序中,我使用了函数ssh_disconnect()来释放ssh_connect(). 那么,我怎样才能确保内存被释放呢?

我想在我的软件中使用 SCP 功能,这将是一个长期的过程。因此,内存泄漏将是一个严重的问题。据我了解,泄漏与libcrypto可能不是libssh. 如果是或其他情况,消除这些泄漏的解决方案是什么?我在哪里做错了?

0 投票
1 回答
1580 浏览

ssh - 使用 libssh 进行 ssh 公钥身份验证的服务器

有人可以举一个使用 libssh 进行 ssh 公钥身份验证的服务器示例吗?我找到了这个https://github.com/substack/libssh/blob/master/examples/samplesshd-tty.c,但它是使用密码进行的身份验证。可能有人见过这样的例子,但在 libssh 上使用公钥认证。或者可能有人可以更改下面的代码来获取它。

我将此添加到 switch(ssh_message_subtype(message))

还有这个

0 投票
1 回答
812 浏览

visual-studio-2010 - 不寻常的 VS2010 链接错误 LNK1104:无法打开文件“libssh2d.lib”

我正在尝试在 VS2010 中使用libssh2库。我收到一个奇怪的错误LNK1104: cannot open file 'libssh2d.lib'。我已经清楚地将这些库包含在 Project Properties->Linker->General->Additional Library Directories 中。

除了上述之外,还有其他几个附加库,它们被包含在内没有问题。

Linker->Input->Additional Dependencies 中还指定了文件名“libssh2d.lib”。

关于为什么我仍然看到该错误的任何输入?谢谢。

0 投票
1 回答
318 浏览

c - libssh bind_accept 错误:无法创建 BIO

我在一个团队中构建一个包含 SSH 和客户端-服务器架构的软件。我正在编写 SSH 服务器,使用 libssh C API 在远程服务器计算机上部署之前在本地计算机上进行测试。服务器构建和链接正常,但在运行时,accept 函数上出现错误could not create BIO。下面是我的服务器代码

谷歌搜索后,我发现 BIO 与 SSL 有关,但我不太确定。libssh 社区没有那么大,所以例子很少,也没有我希望的那么清楚。那么这个错误的原因可能是什么,我可以做些什么来解决它?仅供参考,这是 libssh 0.5.0