问题标签 [plink]

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 投票
1 回答
13502 浏览

ssh - 无法使用公钥/私钥连接 plink

我可以使用我的公钥/私钥与 Putty 连接,而无需提示输入密码(或密码)。我有选美在后台运行。

但是,尝试与 plink 连接将不起作用(形成同一台 Windows 机器):(... 它告诉我密钥被服务器拒绝 :(.. 请参阅下面的输出。

知道为什么吗?

0 投票
0 回答
584 浏览

ssh - 使用 PLINK 后,除非发送回显,否则无法在 tcl 命令行中写入

从 tcl 脚本运行各种程序时,我遇到了一个令人困惑的问题。故事是这样的:我有一个脚本(在 tcl 中),它执行 plink 以在 Linux 计算机上建立远程连接。我基本上使用 eval 来调用 plink,作为参数发送一些 ssh 命令和信息,以及一个要在 Linux 计算机上执行的 bash 文件。

到目前为止,效果很好,或者至少它做了我打算做的事情。这里的问题是,在调用此过程后,我的提示停止正常工作。我可以打字,但它不会出现在屏幕上,除非我发送的命令是“echo”(没有“”)。如果是这样,我会收到“ECHO 开启”消息,并且提示继续正常工作。

有谁知道为什么会发生这种情况?我想只是修补它并在我的脚本中添加“echo”命令,但它说在这种情况下它是一个无效的命令......

嗯,谢谢你的帮助!

0 投票
2 回答
352 浏览

emacs - 通过tramp在Emacs中编译c++:保存密码

我正在使用 Win7 中的 emacs 通过 SSH 在 Linux 服务器上开发 C++ 代码。通过 Tramp(使用 plink)加载和保存效果很好,也可以使用 emacs 中的“编译”命令,但我每次都需要重新输入密码。

有什么方法可以保持与 shell 的连接或保存密码?还是我必须在 plink 中进行一些身份验证?

当然,如果您指点我一份手册或其他文件来解释这方面的细节,我会很高兴。

非常感谢!

0 投票
2 回答
5674 浏览

git - 配置 msysgit 以使用 putty/plink

提前为基本问题道歉 - 我是 git 新手,我确信我错过了一些超级简单的东西,有人可以很快回答。

在安装 msysgit 期间,我指定我想使用 PLink 而不是 OpenSSH 作为我的安全 shell 客户端程序。环境变量“GIT_SSH”设置为“C:\Program Files (x86)\PuTTY\plink.exe”,这是 plink 的正确路径。我试过带引号和不带引号。bash 提示符中的“echo $GIT_SSH”显示环境变量的正确值。我还可以使用 putty 通过 SSH 连接到 github,没有任何问题。

启动 pagent 并添加我的私钥后,我打开了一个新的 git bash 窗口并尝试连接到 github(github 已经有我的公钥并且设置正确 - 我正在使用 jquery 项目作为快速测试)。尽管指定我想使用 PLink 并且显然设置了正确的环境变量,但 msysgit 仍在尝试使用在 ~/.ssh 目录中找到的密钥文件。

我已经通过实际将我的私钥放在该目录中来确认这一点,并且一切正常(我能够毫无问题地克隆 jquery 存储库),但我真的很想进行此设置,以便我可以管理我的如果可能的话,通过腻子使用私钥。

不太确定我错过了什么。非常感谢任何帮助 - 在此先感谢!

0 投票
0 回答
1558 浏览

php - 远程检查机器是 windows 还是 linux 的最佳方法是什么?

我不知道这个或服务器故障是否是提出这个问题的最佳地点。我将把它放在这里,因为我描述的方法是通过 PHP 脚本启动的。

我想从网络上的一台机器远程检查该网络上的另一台机器是 Windows 机器还是 linux 机器。我知道目标机器的登录信息。

我在 PHP 中使用 proc_open 运行 plink 来启动 ls 命令。这是跨平台(我想要的),因为有一个 windows 和一个 linux plink。如果它成功并且我得到一个输出,那么这台机器就是一台 linux 机器。如果它失败了,那么我假设它的窗口。我可以放心地假设 Windows 机器没有在 cygwin 中运行 OpenSSH。

问题是,在某些 Windows 机器上,在它对 Windows 机器失败之前的超时需要永远。我需要一些更快的东西,它仍然可靠并且很容易放入脚本中。谁能想到任何等效的东西?

0 投票
1 回答
5133 浏览

windows - Unix/Windows 脚本帮助:将命令行参数从 Windows 传递到 Unix

所以我正在为我的工作做一个开发项目,基本上这个想法是我们有一个 Excel VBA 宏,它需要对文件进行一些解析,创建一个新文件并将文件位置发送到在大型机上运行的 Unix 脚本。

每次运行宏时文件的位置都不同,并且感谢 Samba,我可以在 Windows 中创建文件,并且可以立即访问 Unix 系统。

现在问题来了:如何传入文件的位置。问题是一个名为 plink 的程序(它是 putty 的一个版本,它允许配置文件与程序本身而不是在 PC 的注册表中)是完成这项工作的唯一被批准的选项(我知道 Cgywin 会很容易做到这一点) 并且该程序位于多个人的网络驱动器上,可能需要同时运行它。authorized_keys 文件有一个 exec 指向需要运行的 Unix 脚本,出于安全原因,我无法更改它。但是,我可以在 Unix 中编写一个脚本来获取未命名的参数并使用它来运行仅将参数(文件位置)作为命名参数(--file=/directory/datafile)的脚本。

我尝试使用(在cmd中)plink.exe serverIP /directory/datafile(登录已配置)运行该脚本,但显然无法以这种方式传递参数。

我也试过 plink.exe serverIP "/directory/datafile" 也没有运气。

我只是想知道是否有一种简短而简洁的方法来完成这项工作。我们有一个具有类似配置的示例项目,但执行此操作的脚本需要 10000 行,我不想阅读,我有点相信这应该像一个 10 或 20 行的短脚本一样完成。如果需要,我可以自由创建任何 Windows 脚本,前提是我可以同时运行具有不同参数的程序的多个会话。

0 投票
1 回答
1232 浏览

c++ - 使用 Code::Blocks、plink 和 makefile 进行远程编译时无法访问环境变量

我正在尝试在 Windows 7 Professional SP1 下设置 Code::Blocks 以在 linux 服务器上进行远程编译(使用 PuTTY 链接-> plink),但我对该主题不太熟悉。这是我使用的手册:

http://wiki.codeblocks.org/index.php?title=Using_Xming_for_remote_compilation

我配置代码块如下:


设置->编译器和调试器->全局编译器设置->工具链可执行文件:

程序文件->制作程序:plink.exe


项目->属性->项目设置:

生成文件:makefile_name

[检查] 这是一个自定义的 makefile

执行方向:Z:\Path\to\Samba\Share


项目的构建选项->调试->“制作”命令:

构建项目/目标:

$make -X -ssh user@linux_server -pw my_great_password make -f $makefile -C /path/to/my/makefile

编译单个文件:

$make -X -ssh user@linux_server -pw my_great_password make -f $makefile -C /path/to/my/makefile $file

清洁项目/目标:

$make -X -ssh user@linux_server -pw my_great_password make -f $makefile clean -C /path/to/my/makefile

询问是否需要重建:

$make -X -ssh user@linux_server -pw my_great_password make -q -f $makefile -C /path/to/my/makefile

静音构建:

$make -X -ssh user@linux_server -pw my_great_password make -s -f $makefile -C /path/to/my/makefile

顺便说一句,我是在 linux 服务器上调用编译器/链接器,还是 Code::Blocks 本身在 linux 服务器上编译和链接源代码?原谅我的无知。


我现在面临的问题是我无法访问makefile中的环境变量:

include $(MY_ENV_VAR)/path/to/another/makefile

我收到的错误让我假设,它MY_ENV_VAR仍然是空的:

/path/to/another/makefile: No such file or directory

我检查了 Code::Blocks 是否尝试解析我的 Windows 计算机的环境变量,但事实并非如此。


附加信息:

代码::块版本:

Version: 10.05, Build: May 27 2010, 19:10:05 - wx2.8.10 (Windows, unicode) - 32 bit

Linux服务器:

Linux linux_server 2.6.18-238.el5 #1 SMP Sun Dec 19 14:22:44 EST 2010 x86_64 x86_64 x86_64 GNU/Linux

如果需要,我可以提供更多信息。我也欢迎其他建议,以在 Windows 上实现在 linux 机器上的远程编译。或者是另一个IDE更适合做远程编译?

感谢阅读/帮助。


编辑:

我发现有人对 NetBeans IDE 有类似的问题:

http://forums.netbeans.org/topic37974.html

0 投票
2 回答
559 浏览

git - 如何通过 plink 获得对 github 的读写访问权限?

SSH 访问github在中国已被阻止,我按照本教程设置了一个 ssh 隧道:

我无法github通过Git Read-Onlyurl 推送代码。
所以我试试这个:

这里不对劲。我已经添加~/.ssh/id_rsa.pubgithub.

0 投票
1 回答
1113 浏览

string - 在 plink 中发送非命令字符串

我正在尝试使用 plink 将数据字符串发送到嵌入式 SSH 服务器。如果我像这样在命令行上使用 plink 登录

plink test2 -l 管理员

并等待“使用用户名“admin”行,然后开始输入数据字符串被正确地逐个字符地传输到服务器

但是,如果我尝试类似

plink test2 -l admin myString

然后 plink 尝试使用字符串作为命令打开服务器上的 shell,但它不会这样做,因此会返回错误。(尝试将字符串放入 txt 文件中,然后通过文件而不是运气)

我怎样才能传递字符串,一个字符串,而不是一个命令?

(原因是 SSH 连接的端口实际上是将数据直接转发到我的嵌入式应用程序应该使用的串行总线上)

编辑:或者也许与隧道的 sexec?或您可以推荐的任何其他合适的基于 Windows 的 ssh cmd 提示客户端。

0 投票
1 回答
213 浏览

plink - Hop Box 问题远程登录失败

我们有一个设置,我们无法使用 putty直接登录到 ServerB 。

我们必须首先通过提供用户名和密码登录到 ServerA,然后它会以某种方式将我们带到 serverB 并提示我输入 ServerB 的登录 ID 的密码。再次提供密码将我登录到 ServerB,在那里我有一个需要执行的脚本 test.sh。

我想从我的本地 Windows 机器上自动执行 ServerB 上的脚本 test.sh,因此我编写了以下命令。

此命令将我登录到 ServerA ,但不会将我带到 ServerB,因此找不到 test.sh 脚本。

由于存在这种跳跃概念,我无法登录到 serverB。

请帮我解决一些问题。

注意:ServerA 和 ServerB 都是 unix 服务器