insecure_private_key の置き換えについて
vagrant
がバージョン1.7以降になってから
初回のbox作成・起動時にinsecure_private_key
を
置き換えていると説明されていますが、具体的に何がどうなっているのでしょうか。
質問の経緯は以下のとおりです。
現在ubuntu 15.04
でvagrant 1.7.2
を使っています。
以前、ホストOSにwindows7
を使っていた頃、
vagrant
が1.7になってからのことですが、boxを新規作成させた後、
teraterm
等からログインできなくなるという現象が起こり、
それについてはネットの情報を参考にVagrantfile
に
config.ssh.insert_key = false
という1文を挿入することでさしあたりの問題は解決しました。
いくつかの説明を読んでいると、どうやらvagrant
が1.7になってからの仕様変更で、
vagrantの提供する共通公開鍵を持つboxを使ったゲストOS作成時では
それに対応するホスト側の秘密鍵(~/.vagrant.d/insecure_private_key
)が
自動的に置き換えられてしまう……らしい……みたいなことになっていると
なんとなく理解していました。
ところが今日、OSをubuntu
に変えてから初めて、
vagrant init chef/centos-6.6
とした後に、Vagrantfile
を全く編集しない状態でも
vagrant ssh
とすると、普通にログインできてしまいました。
これは以前、windows7
でvagrant 1.7
を使っていた時には
teraterm
でエラーになっていたはずでした。
これはもしかして1.7.2では何らかのバグが治ったのだろうか?
くらいに考え、でも気になるので、試しに
~/.vagrant.d/insecure_private_key
と
https://github.com/mitchellh/vagrant/blob/master/keys/
に置いてある、vagrantという名前のファイル
(共通公開鍵に対応する秘密鍵のはず)
の中身を比較してみると、中身が全く同じです。
ランダムに置き換えられた秘密鍵に変わるんじゃなかったのか??
と、これまでの理解か、確認の方法、またはその両方が間違っているらしいと
気が付いた次第。
元々公開鍵暗号の仕組みも、秘密鍵を持つ人だけが公開鍵を使って暗号を解ける、
くらいの理解しかなかったので、そもそもそれが間違いなのかもしれませんが、
結局、vagrant
が初回のbox作成・起動時にinsecure_private_key
を
置き換えていると説明されているのは、具体的に何がどうなっているのでしょうか。
愚問かと思いますが、教えていただけると嬉しいです。
よろしくお願いします。