问题标签 [sshj]

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 投票
2 回答
1220 浏览

java - 使用 SSHJ 时的 Sudo 访问

我正在编写一个 Java 程序,它可以以编程方式 SSH 连接到任何远程机器并执行命令。我正在重新使用现有的 Java 库来执行此操作:https ://github.com/shikhar/sshj

我遇到的问题是弄清楚如何 sudo 切换用户:

“sudo su - [此处的用户名]”。

如果您在终端中手动运行此程序,系统将提示您输入密码。据我了解,如果您在 sudoers 文件下,并且您输入了正确的密码,您将能够运行该命令来切换用户。我不想让用户必须输入他们的密码。理想情况下,该程序根本不需要任何人为干预即可运行。

我想要实现的是:以编程方式通过套接字发送密码,这样用户就不必将其输入标准输入。如果用户可以使用他的凭据登录到远程机器,程序应该能够获取在这些相同的凭据上,并在 sudo 要求用户输入密码时将其传递。

谷歌搜索了一段时间后,我不知道如何使用这个库来实现这一点。请记住,我并不是 SSH 底层细节方面的专家。有人对这个有想法吗?

多谢你们。

0 投票
3 回答
1513 浏览

java - SSHJ 和 Maven 阴影插件

在 Eclipse 中测试 SSHJ,一切看起来都不错。但是当我使用 Maven shade 插件打包 SSHJ 时,我得到以下错误:

添加

将错误消息更改为:

知道如何解决这个问题吗?

关于我为什么要使用阴影的一些背景知识......我试图达到一个点,即 Java 的使用和小型实用程序的分发非常简单。所以我使用这个创建了一个真正可执行的 jar:https ://github.com/brianm/really-executable-jars-maven-plugin 。这使我能够创建一个可执行文件来分发并添加到用户的路径中。有点像 Go 有一个包含所有依赖项的二进制文件。

0 投票
1 回答
1460 浏览

java - sshj 0.9.0 抛出 NoClassDefFoundError: net/schmizz/sshj/SSHClient

我下面的代码抛出以下错误,我可以在 Google 上找到的唯一信息涉及日志记录错误,但没有任何东西看起来像我的。我已经尝试在中央 maven repo 上安装它说需要的依赖项,但问题仍然存在。有谁知道为什么我上课没有发现异常?

}


运行时抛出以下错误:


注意我有:

0 投票
1 回答
607 浏览

java - 使用 sshj java 库在我的 Amazon EC2 机器上执行“sudo”命令

我正在尝试使用 SSHJ 库 ( https://github.com/shikhar/sshj ) 在我的 Amazon EC2 机器上执行 sudo 命令。不幸的是,我没有得到服务器的任何响应。我确信其他非 sudo 命令可以完美执行。这是一些示例代码。

0 投票
1 回答
663 浏览

java - 如何在 Java 中转换 linux 伪终端输出?

我想通过 JAVA API 连接到 Amazon EC2 终端并执行 sudo 操作。我最终使用了 SSHJ 库,因为我发现它的界面非常简单易用。好消息是我什至可以通过这个库执行 sudo 操作。这是一些示例代码:

// 开始一个新的会话 session = sshClient.startSession(); session.allocatePTY("vt220", 80,24,0,0,Collections.emptyMap());

但是,我收到的回复包含控制字符,并希望将它们转换为纯文本。

0 投票
1 回答
3816 浏览

sshj - 用尽了可用的身份验证方法

搜索和研究但找不到答案/解决方案

感谢任何帮助

0 投票
3 回答
8871 浏览

java - 在 sshj 中执行命令序列

我需要使用 sshj 库通过 ssh 在远程服务器上执行一些命令序列。

我愿意

它把我扔了

net.schmizz.sshj.common.SSHRuntimeException: 此会话通道已全部用完

但是我不能为每个命令重新创建会话,因为这个例子将显示主目录列表,而不是 /some/dir 列表。

0 投票
1 回答
386 浏览

java - 在 Maven shade jar 中使用 SSHJ 进行远程连接

我已经使用 SSHJ 连接到远程计算机,并且从 IntelliJIDEA 执行此操作时效果很好。但是,当我尝试使用 maven-shade-plugin 构建“uberjar”时,我得到了如下所示的堆栈跟踪。

我确实在遮荫罐中有 org.bouncycastle.bcprov-jdk16,我的程序明确将其添加为提供者: Security.addProvider(new BouncyCastleProvider());

我试图根据此处提供的答案对 jar 进行签名:SSHJ and the Maven shade plugin Testing with 'maven-jarsigner-plugin' and 'maven-gpg-plugin' 但没有运气。

任何帮助深表感谢!谢谢!


0 投票
1 回答
903 浏览

java - SSHJ How change current user with command su ?

I use sshj library for communication with linux from my Java app. And I need change user with command: su

But, in IOUtils.readLines(cmd.getInputStream(), ... app is waits and does not go next. Thanks for any help.

0 投票
2 回答
436 浏览

android - Android sshj 发送多个命令,报错

我正在尝试从我的 android 手机向 raspi 发送连续命令。我已使用此链接中的代码,但出现错误。

链接:https ://stackoverflow.com/questions/23471439/android-sshexecute-multiple-commands-with-sshj/23806942?noredirect=1#comment36621476_23806942

主要的 :

连接类:

空主机类:包 com.example.sshjdeneme;

我在哪里做错了?谢谢

ps:错误提示