我为CentOS 6.6制作了我的自定义流浪盒。 我的问题是为什么当我“流浪”时,流浪汉总是需要密码。在第一次。 这是控制台日志:
$ vagrant up
Bringing machine 'ns' up with 'virtualbox' provider...
==> ns: Clearing any previously set forwarded ports...
==> ns: Clearing any previously set network interfaces...
==> ns: Preparing network interfaces based on configuration...
ns: Adapter 1: nat
ns: Adapter 2: hostonly
==> ns: Forwarding ports...
ns: 22 => 2222 (adapter 1)
==> ns: Running 'pre-boot' VM customizations...
==> ns: Booting VM...
==> ns: Waiting for machine to boot. This may take a few minutes...
ns: SSH address: 127.0.0.1:2222
ns: SSH username: vagrant
ns: SSH auth method: private key
ns: Warning: Connection timeout. Retrying...
ns: Warning: Connection timeout. Retrying...
ns: Warning: Remote connection disconnect. Retrying...
Text will be echoed in the clear. Please install the HighLine or Termios libraries to suppress echoed text.
vagrant@127.0.0.1's password:
如你所见,vagrant要求输入密码。我打字后继续。在那之后,流浪汉从来没有在我做的时候问过它“流浪汉”。这种情况仅在第一次“流浪”时发生。 我想知道我的自定义框的设置,也许是ssh,是错的,但不知道问题所在。
任何人都可以猜出可能的原因吗?
环境: 流浪者的版本是1.7.2。主机操作系统是ubuntu 15.04,客户操作系统是CentOS 6.6。
答案 0 :(得分:3)
您可能还想尝试默认的流浪汉密码:vagrant
。
答案 1 :(得分:2)
当Vagrant无法自动登录时,会要求输入密码。最明显的原因是Vagrant没有用户流浪者所需的用户密钥。然后你输入正确的密码和流浪汉交换密钥。之后这不再出现了。此密钥交换是每个实例的管理器,因此如果您销毁/删除实例,则下次再次请求手动登录时。
Vagrant在Github上提供了一个不安全的密钥,任何分布式公共可用的Vagrant盒都随之打包。您可以通过在机器内执行此键来放置此键:
if (refTopic == undefined) {
getTopicsSelectBox(function(data) {
console.log(typeof data); //string
var refTopic = $.parseJSON(data);
console.log(typeof refTopic); //object
console.log(refTopic instanceof Array); //false
console.log(refTopic[i].REFTOPICID); //undefined
});
}
另一种方法是使用您自己的私钥并配置Vagrantfile以使用特定密钥: Vagrant SSH Config
Vagrant本身会立即识别并交换不安全密钥,并将其交换为安全密钥。因此,您必须使用Hashicorp Packer设置此密钥。
答案 2 :(得分:0)