Błąd uwierzytelnienia podczas Vagrant Up, podczas gdy błędne ssh i ssh vagrant @ localhost -p2222 działa
Chciałbym wykonać skrypt powłoki przy użyciu Vagrant przy rozruchu. Vagrant nie może się uwierzytelnić, podczas gdy maszyna wirtualna została uruchomiona przy użyciu vagrant up
:
c:\temp\helloworld>vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'helloworld'...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: helloworld_default_1398419922203_60603
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 22 => 2222 (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Error: Connection timeout. Retrying...
default: Error: Authentication failure. Retrying...
default: Error: Authentication failure. Retrying...
default: Error: Authentication failure. Retrying...
default: Error: Authentication failure. Retrying...
...
Po wykonaniu CTRL + C
możliwe jest uwierzytelnienie na maszynie wirtualnej za pomocą vagrant ssh
issh vagrant@localhost -p2222
Vagrant file
Używam domyślnego pliku Vagrant i zmieniłem tylko nazwę hosta:
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
# All Vagrant configuration is done here. The most common configuration
# options are documented and commented below. For a complete reference,
# please see the online documentation at vagrantup.com.
# Every Vagrant virtual environment requires a box to build off of.
config.vm.box = "helloworld"
...
Vagrant version
c:\temp\helloworld>vagrant --version
Vagrant 1.5.1
Pytanie
Jak uwierzytelnić się za pomocą VM vagrant up
?
Najpierw spróbuj: sprawdzić, jaki błędny klucz prywatny znajduje się w konfiguracji komputera
Przykład:
http://docs.vagrantup.com/v2/cli/ssh_config.html
Po drugie, wykonaj: zmień zawartość pliku security_private_key na zawartość klucza prywatnego swojego systemu
źródło
Nie mogłem też wyjść poza:
domyślnie: metoda autoryzacji SSH: klucz prywatny
Kiedy korzystałem z interfejsu GUI VirtualBox, powiedział mi, że wystąpiło niedopasowanie procesora systemu operacyjnego.
Aby włóczyć się coraz dalej, w ustawieniach BIOS musiałem przeciwdziałać intuicyjnie:
Wyłącz: wirtualizacja
Włącz: VT-X
Spróbuj przełączyć te ustawienia w systemie BIOS.
źródło
Wiele skryptów, które widzę, używają tego do pobrania klucza publicznego:
Kwestia Widziałem to, że cert github SSL jest za
www.github.com
nieraw.github.com
. W rezultacie pojawia się400
błąd. Możesz to sprawdzić, przeglądając zawartość/home/vagrant/.ssh/authorized_keys
pliku.Spróbuj użyć
-k
opcji, aby zignorować sprawdzenie certyfikatu SSL:źródło
Upewnij się, że maszyna wirtualna ma dostęp do sieci. W przypadku korzystania z Virtual Box, przejdź do ustawień urządzenia, zakładki sieci i upewnij się, że kabel podłączony jest zaznaczony.
źródło