Posted at

VagrantにTeratermマクロで接続する

More than 3 years have passed since last update.

Windowsで vagrant ssh をしたいとき、cygwinやmingwなどを使いますが昔馴染みのTeratermでVagrantマシンに接続したい場合もあるかと思います。(ログをとりたいなど。)

そんなときに使えるTeratermマクロを紹介します。

まずは vagrant up でvagrantを起動したあと、sshの情報を取得します。

> vagrant ssh-config

Host default
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile e:/vagrant/.vagrant/machines/default/virtualbox/private_key
IdentitiesOnly yes
LogLevel FATAL

PortIdentityFileをメモしておきます。

特にVagrant 1.7からはIdentityFileの場所が変わりました。

以下がTeratermマクロです。


vagrant.ttl

; Vagrant macro

; this file path
getdir
dir

; teraterm.iniの絶対パスを指定します。ここではマクロファイルと同じフォルダに置いています。
inifile=dir
strconcat
inifile '/teraterm.ini'

; portを指定します。上で取得したPortの値に書き換えます。
port=2222

; private keyを指定します。上で取得したIdentityFileの値に書き換えます。
keyfile='e:
/vagrant/.vagrant/machines/default/virtualbox/private_key'

sprintf2 constr 'localhost:%d /F=%s /ssh /2 /auth=publickey /user=vagrant /keyfile=%s' port inifile keyfile

connect constr


以上です。

ttlファイルにTeratermマクロが関連付けられているとダブルクリックでTeratermが起動し、Vagrantマシンに接続されます。