Я собираю бродячую машину (Ubuntu 12.04) со следующими требованиями:
- Доступ по SSH через Vagrant для пользователя с привилегиями sudo.
Я сгенерировал открытый / закрытый ключи (через ssh-keygen
) на хосте и переместил открытый ключ в файл authorized_keys
на гостевой. И я попробовал SSH без пароля.
Пара вещей происходит, когда я vagrant ssh
с парольными SSH-ключами:
- Я должен набрать свою ключевую фразу на хост-машине для SSH в гостевой виртуальной машине.
- Каждый раз, когда я набираю правильную ключевую фразу, она не принимается.
В результате чего я получаю следующее сообщение об ошибке:
SSH authentication failed! This is typically caused by the public/private
keypair for the SSH user not being properly set on the guest VM. Please
verify that the guest VM is setup with the proper public key, and that
the private key path for Vagrant is setup properly as well.
Тогда я попробовал ssh без пароля.
vagrant ssh
vagrant@127.0.0.1's password:
??
Я никогда не настраивал бродячего пользователя! Это должен быть user@hostname
как я его настроил, и он может подтвердить работу при загрузке виртуальной машины в VirtualBox.
Как получить закрытые ssh-ключи для правильной работы с vagrant? Что делать на хосте, что делать на госте?
Обновить
В VirtualBox виртуальная машина работает, но я не могу выполнить ни одну из следующих команд из vagrant console в дополнение к проблемам с vagrant ssh
:
vagrant up
vagrant halt
Единственная команда vagrant, которая работает - vagrant suspend
. Когда я использую его, я могу остановить машину с помощью vagrant halt
. Вот вывод:
$ vagrant halt
[default] Attempting graceful shutdown of VM...
SSH authentication failed! This is typically caused by the public/private
keypair for the SSH user not being properly set on the guest VM. Please
verify that the guest VM is setup with the proper public key, and that
the private key path for Vagrant is setup properly as well.