Mam klaster 3 maszyn wirtualnych. Oto Vagrantfile:Nie można ssh włamać się do maszyn wirtualnych za pomocą niezabezpieczonego klucza prywatnego (vagrant 1.7.2)
# -*- mode: ruby -*-
# vi: set ft=ruby :
hosts = {
"host0" => "192.168.33.10",
"host1" => "192.168.33.11",
"host2" => "192.168.33.12"
}
Vagrant.configure("2") do |config|
config.vm.box = "precise64"
config.vm.box_url = "http://files.vagrantup.com/precise64.box"
config.ssh.private_key_path = File.expand_path('~/.vagrant.d/insecure_private_key')
hosts.each do |name, ip|
config.vm.define name do |machine|
machine.vm.hostname = "%s.example.org" % name
machine.vm.network :private_network, ip: ip
machine.vm.provider "virtualbox" do |v|
v.name = name
# #v.customize ["modifyvm", :id, "--memory", 200]
end
end
end
end
To używane do pracy, dopóki nie zmodernizowane ostatnio:
ssh -i ~/.vagrant.d/insecure_private_key [email protected]
Zamiast włóczęga pyta o hasło.
Wygląda na to, że ostatnie wersje vagrant (w wersji 1.7.2) tworzą bezpieczny klucz prywatny dla każdej maszyny. Wykryłam to, uruchamiając
vagrant ssh-config
Dane wyjściowe pokazują różne klucze dla każdego hosta. Weryfikowałem, że klawisze są różne, różnicując je.
Próbowałem wymusić niezabezpieczony klucz, ustawiając w Vagrantfile ścieżkę config.ssh.private_key_path, ale to nie działa.
Powodem, dla którego chcę użyć klucza niezabezpieczonego dla wszystkich maszyn, jest to, że chcę je udostępnić z zewnątrz za pomocą ansibla. Nie chcę korzystać z mechanizmu przekazywania odpowiedzi, ale traktuj maszyny wirtualne jako serwery zdalne. Tak więc Vagrantfile jest właśnie używany do określania maszyn w klastrze, a następnie udostępnianie będzie wykonywane zewnętrznie.
Dokumentacja wciąż mówi, że domyślnie maszyny będą używać niezabezpieczonego klucza prywatnego.
W jaki sposób mogę sprawić, aby moje maszyny wirtualne korzystały z niezabezpieczonego klucza prywatnego?
Moje pytanie brzmi teraz: dlaczego to zmienili? Ze względów bezpieczeństwa? Dlaczego więc zastąpić go kluczem generowanym automatycznie? – rednaw
Tak, z powodów bezpieczeństwa. Nie zaoszczędzi ci to na dłuższą metę, ale jest trochę bezpieczniejsza niż wysyłka każdego pudełka na świecie za pomocą tej samej pary kluczy. – m1keil
Moja VM jest niezmienna, jak próbuje zregenerować klucz, jeśli moje pliki etc nie pozwoliłyby na to? – CMCDragonkai