Vagrant - сгенерируйте ключ ssh и выведите его
Я хотел бы сгенерировать ssh-ключ во время моей бродячей подготовки и вывести открытый ключ пользователю.
Очевидно, я могу легко создать ключ 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 и передать его пользователю, работающему с Vagrant?
Или есть способ сгенерировать его в 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