vagrant

Vagrant Up時に秘密鍵認証失敗する場合の対処

秘密鍵の場所特定して公開鍵作成して配布してやればいい。

Vagrant Boxの実行

シェル
$ vagrant up
~~~省略~~~
==> 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: Remote connection disconnect. Retrying...
    default: Warning: Connection reset. Retrying...

まずは一旦、Ctr + C で止める。

vagrant up時の認証対応

秘密鍵の場所を特定

シェル
$ vagrant ssh-config
Host default
  HostName 127.0.0.1
  User vagrant
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile /Users/user/.vagrant.d/insecure_private_key ←これが秘密鍵の場所
  IdentitiesOnly yes
  LogLevel FATAL

秘密鍵を元に公開鍵を生成

シェル
$ ssh-keygen -y -f ~/.vagrant.d/insecure_private_key > ~/.ssh/authorized_keys 

作成した公開鍵の内容をコピペ

認証は失敗しているけどサーバーには入れるので。
~/.ssh/authorized_keys

コピペ

/home/vagrant/.ssh/authorized_keys

再度vagrant up

※vagrant動いてる場合はreload
ruby:シェル
$ vagrant up
~~~省略~~~
==> 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: Remote connection disconnect. Retrying...
default: Warning: Connection reset. Retrying...

OK。