2

我正在尝试创建简单的 Windows 批处理脚本来管理与我们客户端的连接。这包括一些隧道使用plink.exe和袜子链。每个跃点都需要我正在使用的 ssh 密钥身份验证pageant.exe

我根据需要编写了每件作品,除了我挣扎的选美部分。遇到的事实:

如果我只启动pageant.exe它,它将在没有加载任何 SSH 密钥的情况下启动选美代理,并且脚本将立即继续。然后我可以运行pageant.exe my_key.ppk将密钥添加到选美中并提示密码,但是脚本也会同时继续,所以脚本将继续 plink 部分失败,因为用户直到那时才提供密码。

我一直在研究选美文档,发现一些像-l这样的 CLI 开关应该列出加载的键,但是这似乎不适用于 Windows 版本。似乎 Windows 版本只接受 .ppk 文件形式的参数

我想基本上做某种“等待”功能,直到用户提供密码。有什么方法可以直接从选美中列出加载的密钥,或者使用任何通用方法向 Windows 环境询问 SSH 密钥?

4

1 回答 1

2

Pageant 有-cswitch,您可以使用它来传递要在加载私钥后执行的命令:

您可以安排 Pageant 在其自身初始化并加载其命令行上指定的任何键后启动另一个程序。该程序(可能是 PuTTY,或使用 Plink 的 WinCVS 或其他程序)将能够使用 Pageant 已加载的密钥。

您可以通过指定-c命令后跟的选项来执行此操作,如下所示:

C:\PuTTY\pageant.exe d:\main.ppk -c C:\PuTTY\putty.exe

虽然总的来说,Pageant 是一种交互式使用的工具,而不是用于编写脚本的工具。对于脚本,使用-iPlink 的 switch提供一个用于认证的私钥

于 2018-11-26T17:39:09.890 回答