Laravel Homestead启动身份验证错误

dav*_*d33 5 ssh vagrant

我正在运行Laravel Vagrant Homestead,我决定清理我的所有项目,并将我的主项目文件夹的位置从我的桌面移动到我的公司C:/,以使事情更有条理.当我启动我的VM时,它无法进行身份验证.

==> default: Checking if box 'laravel/homestead' is up to date...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
    default: Adapter 2: hostonly
==> default: Forwarding ports...
    default: 80 => 8000 (adapter 1)
    default: 3306 => 33060 (adapter 1)
    default: 5432 => 54320 (adapter 1)
    default: 22 => 2222 (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: 127.0.0.1:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
    default: Warning: Connection timeout. Retrying...
    default: Warning: Remote connection disconnect. Retrying...
    default: Warning: Authentication failure. Retrying...
    default: Warning: Authentication failure. Retrying...
Run Code Online (Sandbox Code Playgroud)

我已经按照几个步骤检查了我的ssh键路径,Homestead.yaml看起来都很好.

我跑了vagrant ssh-config:

$ vagrant ssh-config
Host default
  HostName 127.0.0.1
  User vagrant
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile C:/Users/David/.vagrant.d/insecure_private_key
  IdentitiesOnly yes
  LogLevel FATAL
Run Code Online (Sandbox Code Playgroud)

并编辑insecure_private_key以匹配我自己(我在某处看到了答案)但无济于事.

这是我的Homestead.yaml(修改后删除网站名称):

ip: "192.168.10.10"
memory: 2048
cpus: 1

authorize: C:/Users/David/.ssh/id_rsa.pub

keys:
    - C:/Users/David/.ssh/id_rsa

folders:
    - map: C:/Code/projects/website
      to: /home/vagrant/projects/website

sites:
    - map: website.app
      to: /home/vagrant/projects/website/public

variables:
    - key: APP_ENV
      value: local
Run Code Online (Sandbox Code Playgroud)

我保证我的ssh密钥的路径没有被修改.在清理VM上的项目并将主代码文件夹移动到C:/并执行重新映射后,我才开始遇到此问题.

Gia*_*ian 3

根据您的日志,虚拟机已启动。只是 Vagrant 不能 SSH。

最有可能的是你弄乱了虚拟机中的authorized_keys (~./ssh/authorized_keys)

  1. 让 vagrant 保持原样,启动另一个命令提示符。

  2. 将此站点中的密钥临时复制到剪贴板中。

    https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub

  3. 使用 putty 进行 SSH 连接。

    腻子流浪者@127.0.0.1 -p 2222

  4. 输入以下内容:

    echo "--从剪贴板粘贴--" > ./authorized_keys

  5. 退出腻子

  6. 输入 Vagrant reload 通知它会检测到密钥不安全并自动注入新密钥。

  7. 你流浪汉现在应该起来了。

HTH。