-1

我能够使用 java jsch 库在远程机器上运行命令。场景是当我从 putty 执行特定命令时,它会提示输入密码和执行此命令的原因(出于某种安全目的)。现在我想执行相同的命令并仅使用 java 程序在 propmt 上传递密码和原因。

我怎样才能做到这一点?

“实际上没有特定的代码。我正在使用带有命令“/opt/bin/pbrun username”的putty在unix中执行pbrun命令。输入时提示我输入密码和登录原因。当我通过putty访问它时,我能够传递值。我想使用 java 程序传递这些值。”

4

1 回答 1

0

基本上你不能这样做,由于安全原因,SSH 不允许通过管道传输密码。

但是,您可以做的是粗略地)生成一个公钥/私钥对ssh-keygen并将其放置到主机的.ssh/authorized_keys. 然后你就可以 SSH without a password 了,这是我通常的解决方案(不过,我很想听听任何替代方案)。有很多关于这个主题的教程,只需搜索“passwordless ssh”表达式。

这可能听起来微不足道,但相信我,您将花费数小时来配置它:-)。这ssh -x将是您的朋友(对于一个您需要对密钥文件和类似内容具有确切权限的人)。

于 2013-07-09T08:58:01.650 回答