2016-06-09 30 views
0

我想在我的流浪者配置期间生成一个ssh密钥,并将公钥输出给用户。Vagrant - 生成一个ssh密钥并输出它

很显然,我可以轻松地创建使用类似

config.vm.provision "shell", inline: <<SCRIPT 
    yes | ssh-keygen -b 2048 -t rsa -f /home/vagrant/.ssh/id_rsa -q -N "" 
SCRIPT 

我如何再取/home/vagrant/.ssh/id_rsa.pub,并给它运行流浪用户SSH密钥?

或者,有没有办法在ruby中生成它,把私钥放到虚拟机中,并把公钥给用户?

回答

1

这似乎是一个愚蠢的解决方案,所以如果有人能想到更好的一个,我会非常感激:

config.vm.provision "shell", inline: <<SCRIPT 
    yes | ssh-keygen -b 2048 -t rsa -f /home/vagrant/.ssh/id_rsa -q -N "" 
    echo 
    echo ********************************* 
    echo * PUBLIC KEY - PUT ME ON GITLAB * 
    echo ********************************* 
    echo 
    cat /home/vagrant/.ssh/id_rsa.pub 
    echo 
SCRIPT 

一位朋友也建议复制关键/vargrant,其是与文件夹通常从包含相关Vagrantfile的主机文件夹挂载。

config.vm.provision "shell", inline: <<SCRIPT 
    yes | ssh-keygen -b 2048 -t rsa -f /home/vagrant/.ssh/id_rsa -q -N "" 
    cp /home/vagrant/.ssh/id_rsa.pub /vagrant 
SCRIPT