我在无业游民的盒子上做了vagrant up
StefanScherer/windows_2019 (vmware_desktop, 2020.02.12)
并通过"Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0"
服务器启动并正常运行,但是用户vagrant
无法从VM内部(ssh vagrant@127.0.0.1)或从外部连接。它说允许被拒绝。我使用vagrant
作为密码,就像登录虚拟机一样。
我创建了另一个用户asdf
,并且能够很好地与该用户建立联系。因此,它与用户vagrant
有关。运行Get-LocalUser
显示用户vagrant
与我新创建的用户asdf
PS C:\ Windows \ system32> Get-LocalUser
Name Enabled Description
---- ------- -----------
Administrator True Built-in account for administering the computer/domain
asdf True
DefaultAccount False A user account managed by the system.
Guest False Built-in account for guest access to the computer/domain
sshd True
vagrant True Vagrant User
WDAGUtilityAccount False A user account managed and used by the system for Windows Defender Application Guard scen...
两个帐户的类型均为LocalUser
。
为什么对vagrant
不起作用?我怎么能找到使这个帐户如此特别的原因?
答案 0 :(得分:0)
问题是Windows的openssh中的this bug。主机名(计算机名)不得与用户名相同。就我而言,这两个人都很无聊。
您可以通过修改Vagrantfile
并设置来解决此问题
config.vm.hostname
的值不同于vagrant
。或者,您可以从VM内部更改主机名,例如从Powershell通过Rename-Computer -NewName foo -Force -PassThru
(需要重新启动)。