Windowsでvagrant upした後にsshログインする方法

Windows(Cygwin)でVagrant + VirtualBoxに挑戦しています。
vagrant box add base http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.4-x86_64-v20130427.box
vagrant init
vagrant up
vagrant ssh
で、仮想マシンを起動してsshログインすることはできたのですが、
"vagrant ssh"ではなく普通のsshコマンドで接続するにはどうすればよいのかがわからなくて苦戦しました。

結論からいうと、sshログイン情報は"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/DQNEO/.vagrant.d/insecure_private_key"
  IdentitiesOnly yes
  LogLevel FATAL
sshコマンドでの接続方法
ssh -i  /cygdrive/c/Users/DQNEO/.vagrant.d/insecure_private_key -p 2222 vagrant@127.0.0.1
毎回ポート番号とか秘密鍵を指定するのが面倒なら、"vagrant ssh-config"の出力を~/.ssh/configに保存してやるとよいでしょう。
vagrant ssh-config >> ~/.ssh/config
こうすれば、
ssh default
これだけで仮想マシンに接続できます。
やった!

ちなみに、なぜIPアドレスが127.0.0.1で仮想マシンに入れてしまうのかは謎です。
ポート番号2222がどこで設定されているのかも謎です。(仮想マシンの/etc/ssh/sshd_configにはそのような設定はない)

WindowsでVagrantはなかなか茨の道ですね。
カテゴリ: