console.error(`Unable to load nonexistent manifest entry ‘islands/voting-prompt’. Check that your file path is correct.`)

我正在尝试执行以下操作:

  1. 在我的 Windows 机器上保留一个“主”私钥,并将我的所有密钥和连接信息移动到多通道 ubuntu 24.04 实例(通过 VM 本地托管,称为“外部”)中,它有自己的 ssh“配置”(计划在未来使 ubuntu 实例可移植,我现在只是在测试这个概念)。

  2. 从 Windows 计算机通过 SSH 连接到另一台计算机(“orange”),该计算机的身份验证私钥和连接信息保存在“外部”计算机的“配置”中。“orange”只能通过跳转服务器(“banana”)访问,并在那里解析。

  3. 所有机器(“橙色”、“黄色”、“粉色”等)都没有任何公共 IP,必须经过一个跳转服务器或另一个跳转服务器(“香蕉”、“胡萝卜”等)。

我的 Windows“配置”如下所示:

Host external
    HostName 172.20.133.156
    User ubuntu
    IdentityFile C:/users/Workstations/.ssh/someKey.pem
    ForwardAgent yes

Host orange
    ProxyCommand ssh external ssh -vvv -F /home/ubuntu/.ssh/config orange

我的“外部” ssh“配置”如下所示:

Host banana
 HostName 123.123.123.123    # redacted public IP of the jump server
 User bananaJumpUser
 IdentityFile ~/.ssh/bananaJumpKey.pem
 ForwardAgent yes

Host orange
 HostName orange
 User orangeUser
 ProxyJump banana
 IdentityFile ~/.ssh/orangeKey.pem

如果我在我的 Git Bash(Windows)中直接使用以下命令:

ssh -t external ssh orange

它工作得很好,但是当我在 Windows ssh“配置”文件中把所有东西放在一起时,它似乎试图通过“香蕉”机器(跳转服务器)进行连接,但它并没有提示我输入私钥的密码,所以它就失败了。

日志摘录(-vvv):(由于“这看起来像垃圾邮件”消息,我无法发布问题,因此无法在此处发布整个日志)

它似乎没有提示我输入密码……

访问/dev/tty看起来是这样的:crw-rw-rw- 1 root tty 5, 0 Aug 8 17:45 /dev/tty看起来是全局可访问的。我一开始以为这就是问题所在。

我发现另一件奇怪的事情是:

debug1: Connection established.
debug1: identity file /home/ubuntu/.ssh/bananaJumpKey.pem type -1

通常type应该> = 0。我已经检查了600和400的权限,没有任何变化(所有者也是“ubuntu”)。

我也尝试-t在 ProxyCommand 上添加标志,但是-tt没有任何效果。

我觉得另一件奇怪的事情是:

debug1: Will attempt key: /home/ubuntu/.ssh/bananaJumpKey.pem  explicit
debug2: pubkey_prepare: done
debug1: Trying private key: /home/ubuntu/.ssh/bananaJumpKey.pem
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug2: no passphrase given, try next key
debug2: we did not send a packet, disable method
debug1: No more authentication methods to try.
bananaJumpUser@123.123.123.123: Permission denied (publickey).

据我所知,此时它应该提示我输入密码,但它什么也没显示,只是说“没有给出密码”。我的ssh_configsshd_configPasswordAuthentication yesKbdInteractiveAuthentication yes

知道我做错了什么吗?这可能吗?

我也不想剥夺我的私钥的密码…因为它可以正确使用,所以ssh -t external ssh orange问题不应该是它……

感谢您的时间,我非常感激!

附言:我可能在这里或那里使用了错误的术语,对此感到抱歉 – 仍在学习一些东西。

2

  • …您到底想做什么,为什么?


    – 

  • @Massimo 嗨,谢谢您的回复。我的目标是将我的密钥和身份验证配置从我的 Windows ssh“配置”移动到本地 Ubuntu 实例(我将其称为“外部”)。我的目标是首先使用保留在 Windows 计算机上的“主”密钥连接到“外部”Ubuntu 实例,然后从 Windows 计算机建立与其他服务器的连接。连接到“外部”实例后,我想使用存储在那里的密钥和配置连接到其他服务器。我不想在 Windows 机器上存储许多密钥。


    – 


0