我正在尝试使用Vagrant设置两个虚拟机,其中一个需要能够使用私钥ssh到第二个虚拟机。
我在一个vagrantfile中定义了两个VM,启动它们然后将私钥从.vagrant目录复制到我的第一个VM中。然后,我能够在没有密码的情况下进入第二个虚拟机。
问题是这不稳定,每次我vagrant up
时,Vagrant都会回复此密钥并创建一个新密钥。这显然打破了从第一个VM到第二个VM的ssh的能力,直到我再次复制私钥。
我并不特别关心Vagrant使用哪个密钥,我只是希望它是稳定的,这样我就可以在我的虚拟机之间进行ssh。我怎么能这样做?
答案 0 :(得分:0)
你有两种可能性:
每次启动VM时都有一个shell配置程序来复制新生成的密钥,所以基本上每次运行vagrant up
时都会将ssh密钥复制到VM中,这样你仍然可以能够进入第二个虚拟机。
强制vagrant使用密钥,将以下参数添加到您将存储自己的自定义密钥的Vagrant文件中
config.ssh.private_key_path = "custom_key_file"
config.ssh.forward_agent = true
所以Vagrant在启动VM时会使用此密钥文件,您可以将此密钥复制到VM中以ssh到第二个