Vagrant 因 SSH 身份验证方法挂起:密码

Vagrant 因 SSH 身份验证方法挂起:密码

我正在尝试通过 Vagrant 加载虚拟机。这是我第一次尝试这样的事情。

我正在使用 Windows 10 64 位并尝试运行我的 MS Server 2016 标准。

我在 VirtualBox 中创建了一个新的 VM 并添加了 MS2016 标准。

我已经创建了一个盒子。

从 Powershell(以管理员身份),我输入vagrant up并出现以下错误消息

SSH 身份验证方法:密码

VM 仍在加载,我可以按 CTRL ALT DELETE 并正常登录。但是,PowerShell 窗口没有从上面的消息中继续前进

现在 StackOverflow 和 GitHub 上对此有相当详尽的记录,但有关此问题的所有帖子都很旧了。而且,我所读的内容并没有解决我的问题,我将尝试在这里介绍这些问题,而不会用大量的列表让您感到厌烦。

然后他们来启用 VT-X 并确保网络路径 https://superuser.com/a/1051626/293658显示我需要启用 VT-X(我已启用)但禁用 BIOS 中的虚拟化。我的华硕 p8z77-v 主板上没有在 BIOS 中禁用虚拟化的选项

https://www.vagrantup.com/docs/boxes/base.html提供了我需要为 Windows 做的事情,我已经做了:

  • 关闭 UAC(包括注册表编辑)
  • 禁用复杂密码
  • 禁用“关机跟踪器”
  • 在登录时禁用“服务器管理器”(非核心)

在我的计算机上,我禁用了所有防病毒和防火墙软件。

我唯一能想到的一点是,我没有向 Vagrant 提供任何用户名/密码详细信息,但虚拟机上的管理员是(用户)vagrant 和(密码)vagrant

我也尝试使用 VagrantFile,因为很多人抱怨网线,所以我的 VagrantFile

Vagrant.configure("2") do |config|

   config.vm.provider "virtualbox" do |vb|
     vb.gui = true
     config.ssh.username = "vagrant"
     config.ssh.password = "vagrant"
     config.ssh.insert_key = false
     vb.customize ["modifyvm", :id, "--cableconnected1", "on"]
   end

  config.vm.provision 'Task', :type => 'shell', :path => "Task.ps1", :powershell_elevated_interactive => false

end

当 VM 通过 Vagrant 启动时,这是底部工具栏,显示所有部分都在“运行”

在此处输入图片描述

如果我进入控制面板 -> 程序和软件并从左侧菜单中选择打开或关闭 Windows 功能,它会显示 Hyper-V 未启用

为什么它无法登录到我的 Windows 桌面?

VirtualBox 版本 5.2.8
Vagrant 版本 2.0.2

答案1

SSH 不包含在 Windows 安装程序中。您需要在 vagrant box 上的 Windows 路径中安装“ssh.exe”。

在流浪者盒子上:

  1. 安装 Githttp://git-scm.com/downloads
  2. 您想选择“从 Windows 命令提示符中使用 Git 和可选的 Unix 工具”。

来源: http://tech.osteel.me/posts/2015/01/25/how-to-use-vagrant-on-windows.html

答案2

您需要将找到的 Vagrant 公钥放入 github,文件名vagrant.pub,在 的 SSH 文件夹下authorized_keys

"vagrant" User请 参阅Vagrant 文档

在 Linux 下,此文件夹位于.ssh/authorized_keys;在 Windows 下,此文件夹位于 C:\Users\vagrant\.ssh\authorized_keys

答案3

我的经验:

  • 停止没有起作用
  • 更改不同的 Vagrantfile 选项不起作用
  • 销毁没有起作用
  • 尝试不同的 VM 盒,没有起作用

重新启动 Windows 10 就可以了...我应该想象到的!

相关内容