第一次使用 `homestead ssh` 是否有连接 vagrant 的默认密码?
Is there a default password to connect to vagrant when using `homestead ssh` for the first time?
我正在尝试通过 homestead ssh
:
连接到 vagrant
vagrant@127.0.0.1's password:
但是我的 public 密钥密码不起作用。
我的 Homestead.yaml 看起来像这样:
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
我正在使用 "Laravel Homestead version 2.0.14" 和 "Vagrant 1.7.2"。
在尝试了很多密码并完全弄糊涂了为什么我的 public 密钥密码不起作用后,我发现我必须使用 vagrant
作为密码。
也许这个信息对其他人也有帮助 - 那是因为我已经把它写在这里了。
编辑:
根据 Vagrant 文档,通常 用户 vagrant
的默认密码是 vagrant
。
在此处阅读更多信息:official website
然而,在最近的版本中,他们已经开始为每台机器生成密钥对。如果你想找出那把钥匙在哪里,你可以 运行 vagrant ssh -- -v
。这将显示 ssh 登录过程的详细输出。您应该会看到类似
的行
debug1: Trying private key: /home/aaron/Documents/VMs/.vagrant/machines/default/virtualbox/private_key
我也有同样的问题。从 Time Machine 恢复移动机器后,在另一台主机上。问题是 vagrant 的 ssh 密钥不是你的密钥,它是 Homestead 目录中的密钥。
我的解决方案:
- 使用vagrant / vagrant访问Homestead的ti VM
- vagrant ssh-config 查看 ssh 配置
运行 在终端上
vagrant ssh-config
Host default
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile "/Users/MYUSER/.vagrant.d/insecure_private_key"
IdentitiesOnly yes
LogLevel FATAL
ForwardAgent yes
创建一对新的 SSH 密钥
ssh-keygen -f /Users/MYUSER/.vagrant.d/insecure_private_key
复制public键的内容
cat /Users/MYUSER/.vagrant.d/insecure_private_key.pub
在其他 shell 上将 Homestead VM 机器复制到 authorized_keys
vagrant@homestad:~$ echo 'CONTENT_PASTE_OF_PRIVATE_KEY' >> ~/.ssh/authorized_keys
现在可以用vagrant ssh访问
Vagrant默认使用生成的私钥登录,你可以试试这个:
ssh -l ubuntu -p 2222 -i .vagrant/machines/default/virtualbox/private_key 127.0.0.1
这是默认的工作设置https://www.youtube.com/watch?v=XiD7JTCBdpI
使用连接方式:standard TCP/IP over ssh
然后 ssh 主机名:127.0.0.1:2222
SSH 用户名:vagrant password vagrant
MySQL 主机名:localhost
用户名:homestead password:secret
在 Windows 机器上,我能够从 git bash 使用
登录到 ssh
ssh vagrant@VAGRANT_SERVER_IP
不提供密码
在 window
上使用 Bitvise SSH 客户端
服务器主机:VAGRANT_SERVER_IP
服务器端口:22
用户名:vagrant
密码:vagrant
在我的案例中,我通过以下来源的输出了解到:
vagrant ssh -- -v
问题是 vagrant 生成的我的私钥被忽略了,因为权限太开放了(在 Windows 10)。
日志行是:
Permissions for 'C:/My Folder/.vagrant/machines/default/virtualbox/private_key'
are too open. It is required that your private key files are NOT
accessible by others. This private key will be ignored.
因此,在 Windows 资源管理器中,导航到日志中路径上的虚拟机私钥,右键单击 select 属性。然后转到“安全”选项卡并单击“高级”按钮。接下来,使用完全控制添加您的特定用户,然后 select 哪个组也有权限,然后单击对话框底部的禁用继承按钮并选择删除所有继承。您应该只剩下对 private_key 文件具有权限的您自己的用户帐户。单击应用并关闭属性对话框,然后重试 vagrant ssh
。它现在应该让您无需输入密码即可进入。
我正在尝试通过 homestead ssh
:
vagrant@127.0.0.1's password:
但是我的 public 密钥密码不起作用。
我的 Homestead.yaml 看起来像这样:
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
我正在使用 "Laravel Homestead version 2.0.14" 和 "Vagrant 1.7.2"。
在尝试了很多密码并完全弄糊涂了为什么我的 public 密钥密码不起作用后,我发现我必须使用 vagrant
作为密码。
也许这个信息对其他人也有帮助 - 那是因为我已经把它写在这里了。
编辑:
根据 Vagrant 文档,通常 用户 vagrant
的默认密码是 vagrant
。
在此处阅读更多信息:official website
然而,在最近的版本中,他们已经开始为每台机器生成密钥对。如果你想找出那把钥匙在哪里,你可以 运行 vagrant ssh -- -v
。这将显示 ssh 登录过程的详细输出。您应该会看到类似
debug1: Trying private key: /home/aaron/Documents/VMs/.vagrant/machines/default/virtualbox/private_key
我也有同样的问题。从 Time Machine 恢复移动机器后,在另一台主机上。问题是 vagrant 的 ssh 密钥不是你的密钥,它是 Homestead 目录中的密钥。
我的解决方案:
- 使用vagrant / vagrant访问Homestead的ti VM
- vagrant ssh-config 查看 ssh 配置
运行 在终端上
vagrant ssh-config
Host default
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile "/Users/MYUSER/.vagrant.d/insecure_private_key"
IdentitiesOnly yes
LogLevel FATAL
ForwardAgent yes
创建一对新的 SSH 密钥
ssh-keygen -f /Users/MYUSER/.vagrant.d/insecure_private_key
复制public键的内容
cat /Users/MYUSER/.vagrant.d/insecure_private_key.pub
在其他 shell 上将 Homestead VM 机器复制到 authorized_keys
vagrant@homestad:~$ echo 'CONTENT_PASTE_OF_PRIVATE_KEY' >> ~/.ssh/authorized_keys
现在可以用vagrant ssh访问
Vagrant默认使用生成的私钥登录,你可以试试这个:
ssh -l ubuntu -p 2222 -i .vagrant/machines/default/virtualbox/private_key 127.0.0.1
这是默认的工作设置https://www.youtube.com/watch?v=XiD7JTCBdpI
使用连接方式:standard TCP/IP over ssh
然后 ssh 主机名:127.0.0.1:2222
SSH 用户名:vagrant password vagrant
MySQL 主机名:localhost
用户名:homestead password:secret
在 Windows 机器上,我能够从 git bash 使用
登录到 ssh
ssh vagrant@VAGRANT_SERVER_IP
不提供密码
在 window
上使用 Bitvise SSH 客户端
服务器主机:VAGRANT_SERVER_IP
服务器端口:22
用户名:vagrant
密码:vagrant
在我的案例中,我通过以下来源的输出了解到:
vagrant ssh -- -v
问题是 vagrant 生成的我的私钥被忽略了,因为权限太开放了(在 Windows 10)。
日志行是:
Permissions for 'C:/My Folder/.vagrant/machines/default/virtualbox/private_key' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored.
因此,在 Windows 资源管理器中,导航到日志中路径上的虚拟机私钥,右键单击 select 属性。然后转到“安全”选项卡并单击“高级”按钮。接下来,使用完全控制添加您的特定用户,然后 select 哪个组也有权限,然后单击对话框底部的禁用继承按钮并选择删除所有继承。您应该只剩下对 private_key 文件具有权限的您自己的用户帐户。单击应用并关闭属性对话框,然后重试 vagrant ssh
。它现在应该让您无需输入密码即可进入。