2017-02-21 28 views
0

Когда я бегу vagrant up в мое приложение процесс застревает наSSH и Vagrant

SSH auth method: private key 

Vagrantfile

Vagrant.configure(2) do |config| 
    config.vm.define :touch_rugby do |app_config| 
    app_config.vm.box = "bento/ubuntu-16.04" 
    app_config.vm.host_name = "touchrugby" 
    app_config.vm.network "private_network", ip: "33.32.1.2" 
    app_config.ssh.insert_key = true 
    end 
end 

При запуске vagrant ssh-config в другом окне

HostName 127.0.0.1 
User vagrant 
Port 2222 
UserKnownHostsFile /dev/null 
StrictHostKeyChecking no 
PasswordAuthentication no 
IdentityFile /Users/rich/.vagrant.d/insecure_private_key 
IdentitiesOnly yes 
LogLevel FATAL 

Где бы insecure_private_key родом из? и не должно быть private_key

Что я могу попробовать и отладить это? Я побежал бродячий в режиме отладки и нашел это

INFO ssh: Attempting to connect to SSH... 
    INFO ssh:   - Host: 127.0.0.1 
    INFO ssh:   - Port: 2222 
    INFO ssh:   - Username: vagrant 
    INFO ssh:   - Password? false 
    INFO ssh:   - Key Path: ["/Users/rich/.vagrant.d/insecure_private_key"] 
    DEBUG ssh:   - connect_opts: {:auth_methods=> ["none "hostbased""publickey"], 
           :config=>false, 
           :forward_agent=>false, 
           :send_env=>false, 
           :keys_only=>true, 
           :paranoid=>false, 
           :password=>nil, 
           :port=>2222, 
           :timeout=>15 } 
INFO subprocess: Starting process: ["/usr/local/bin/VBoxManage", "showvminfo", "1f000e35-eee4-482d-8f76-91082f19c2ab", "--machinereadable"] 

Кто-нибудь есть какие-либо дополнительные идеи о том, что я могу сделать?

Благодаря

ответ

0

закрытого ключа, который вы видите на /Users/rich/.vagrant.d/insecure_private_key генерируется бродяга, если свойство ssh.insert_key устанавливается истина.

Looking at the documentation, вы должны иметь возможность указать местоположение существующего закрытого ключа.

config.ssh.private_key_path

The path to the private key to use to SSH into the guest machine. By default this is the insecure private key that ships with Vagrant, since that is what public boxes use. If you make your own custom box with a custom SSH key, this should point to that private key. 
+0

Ценю обновил свой вопрос после того, как ваш ответ, но у меня есть 'app_config.ssh.insert_key = true' в моей конфигурации, который должен заменить этот ключ – Richlewis

+0

я не так уверен, что я понимаю ваш вопрос. Установив для этого значение true, вы говорите бродяге о создании собственного ключа. –

0

Обычно Vagrant будет автоматически использовать общедоступный «хорошо известный» ключ SSH и автоматически установить виртуальную коробку, чтобы использовать этот ключ. Чтобы получить это поведение, просто не устанавливайте опцию app_config.ssh.insert_key = true в вашем Vagrantfile.

Мы установили эти два параметра в нашем Vagrantfile, потому что мы не используем учетную запись по умолчанию vagrant, но чтобы лучше эмулировать нашу среду AWS, мы создаем учетную запись ec2-user и укажем наш собственный закрытый ключ ssh.

config.ssh.username = "ec2-user" 
config.ssh.private_key_path = "/Users/lance/git/devops/.vagrant_helpers/vagrant_private_key"