使用 plink 配置 PuTTY 进行键盘交互式身份验证

使用 plink 配置 PuTTY 进行键盘交互式身份验证

请参阅编辑#2 了解最新发现

我看过其他类似的问题,但不幸的是,它们似乎都没有帮助。这个是最接近的,而且我的症状也类似。

问题如下:

  1. 我正在尝试通过 PuTTY 进行等效设置ProxyJump,从 Windows 工作站 A 到 Linux 机器(MFA 保护,密码优先)B 到 Linux 目标 C
  2. 我的代理命令是plink.exe -agent -l <user> %proxyhost -nc %host:%port\n
  3. 在启动与 C 的连接时,我只会看到一个窗口,上面写着

启动本地代理命令:plink.exe -agent -l B -nc C:22

并只是挂在那里。

在PuTTY日志中我看到

Using keyboard-interactive authentication .Password:

但密码提示从未出现在屏幕上,并且打开的窗口不会接受任何输入。

对于我可能遗漏的内容有什么建议吗?

提前感谢所有帮助。

干杯!

编辑 #1:经过进一步的实验,发现这个问题与任何键盘交互的第二因素有关。即使我从 Azure MFA 更改为 Duo,我仍然看到相同的行为。

远程服务器的输出永远不会绑定到 PuTTY 终端 - 我想知道 plink 是否与此有关,因为它的预期行为与ProxyCommand其他行为类似。也许与如何处理往返远程会话的管道有关?

编辑 #2:这几乎肯定是 plink 和键盘交互身份验证的问题。我尝试了PubKeyAuthenticationonly 和GSSAPIAuthenticationonly,它们都运行正常。然后我尝试了PasswordAuthenticationonly,但失败了。

我已相应地更新了帖子标题。

相关内容