VM 拒绝 Windows 上的密钥

VM 拒绝 Windows 上的密钥

我的 Vagrant VM 已启动并正在运行,但如果我检查 netstat,则ESTABLISHED不是LISTENING

  TCP    192.168.56.1:139       0.0.0.0:0              LISTENING
  TCP    192.168.56.1:50973     192.168.56.101:22      ESTABLISHED

正如我发现的那样,这显然不是一个问题,我无法使用腻子连接它,因为它拒绝我的密钥。

login as: vagrant
Server refused our key
[email protected]'s password:

我使用的是没有密码的私钥,该私钥存储在本地,并且为 Putty 所知。我在 config.yaml 中配置了 Vagrant 以使用它

ssh:
    host: null
    port: null
    private_key_path: ./puphpet/files/dot/ssh/vagrant_key

vagrant_key文件夹中,我有公钥vagrantvagrant.pub私钥vagrant.ppk

有人有什么想法或提示吗?


编辑:我从 Puttygen 调整了我的公共 SSH 文件(vagrant.pub),现在看起来像这样:

ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAsD+KWzLA96mAM9hkwy/xWdRT6+aUJ72M2ZyrZMk/GZTGfZxPXKgNvhPB/2AF3tVikcp8XNw5iVN/Lfu6+9JCzeDl3E4r9Xcbx0zCeclOY8ofLCD1rsKRCC/E33aew/y4QMkGfZQeXj3mVsuQxuPrr5tCTziKUKz7QTNn/MLINa1YuqsO5aqO1ujCeT2RjwShXVcvjFzT9/fRXiaH0M1hygcuIYY3T8MOp6dGPoBHB6WOuVgv5X+BTsilRuL+mQTWnZZw93NF2ySgEZFHwPoMLBCCc+A1quZV+aoDBTaVsOdsSGeCWMAW5oytsG7M/ATUDmZOI7D+M9UWIXkdvImusQ== rsa-key-20140423

它仍然不起作用。


编辑:虽然我无法修复我的 Putty 问题(然而), 谢谢@用户1301428我找到了一种使用 vagrant ssh 连接到我的虚拟机的方法,如果你的 PATH 变量中有来自 git 的 ssh.exe,则可以在 Windows 下使用。阅读这篇 Stackoverflow 文章求助。

答案1

尝试使用这个公钥:

ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAsD+KWzLA96mAM9hkwy/xWdRT6+aUJ72M2ZyrZMk/GZTGfZxPXKgNvhPB/2AF3tVikcp8XNw5iVN/Lfu6+9JCzeDl3E4r9Xcbx0zCeclOY8ofLCD1rsKRCC/E33aew/y4QMkGfZQeXj3mVsuQxuPrr5tCTziKUKz7QTNn/MLINa1YuqsO5aqO1ujCeT2RjwShXVcvjFzT9/fRXiaH0M1hygcuIYY3T8MOp6dGPoBHB6WOuVgv5X+BTsilRuL+mQTWnZZw93NF2ySgEZFHwPoMLBCCc+A1quZV+aoDBTaVsOdsSGeCWMAW5oytsG7M/ATUDmZOI7D+M9UWIXkdvImusQ==

并将其添加到authorized_keys文件中。

与 SSH 一起使用时,Putty 生成的密钥的格式存在问题,这很可能是导致您看到的错误消息的原因。

更新 关于如何在 Windows 上配置这一切,请查看stackoverflow 上的这个问题,也许它能为你指明正确的方向。

更新 2 尝试将公钥保存为insecure_public_key.ppk(参见本文

答案2

出于安全目的,我已将 PuPHPet 设置为禁用内置 SSH 密钥并为您启动的每个 VM 生成一个唯一的密钥。

不过,我可能也应该添加一个与 putty 兼容的版本!

相关内容