http://cloud-images.ubuntu.com/vagrant/raring/current/raring-server-cloudimg-i386-vagrant-disk1.box 에서 13.04의 Vagrant 이미지 를 사용하여 새 가상 머신을 만들고 연결하려고했습니다. ssh를 사용합니다. 그러나 SSH는 인증을 시도한 단계에 도달하지 않아도 항상 즉시 연결이 끊어졌습니다.
VirtualBox GUI에서 VM을 열고 SSH 로그 파일 (auth.log)을 확인했습니다. 다음과 같은 줄로 가득했습니다.
Jul 25 17:57:02 vagrant-ubuntu-raring-32 sshd[898]: error: Could not load host key: /etc/ssh/ssh_host_rsa_key
Jul 25 17:57:02 vagrant-ubuntu-raring-32 sshd[898]: error: Could not load host key: /etc/ssh/ssh_host_dsa_key
Jul 25 17:57:02 vagrant-ubuntu-raring-32 sshd[898]: error: Could not load host key: /etc/ssh/ssh_host_ecdsa_key
Jul 25 17:57:02 vagrant-ubuntu-raring-32 sshd[898]: fatal: No supported key exchange algorithms [preauth]
다음 명령을 실행하여 문제를 해결했습니다.
sudo ssh-keygen -f /etc/ssh/ssh_host_ecdsa_key -N '' -t ecdsa
sudo ssh-keygen -f /etc/ssh/ssh_host_dsa_key -N '' -t dsa
sudo ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N '' -t rsa
나는 (a) ISO 이미지에서 Ubuntu를 설치할 때 직접 실행할 필요가 없으며 (b) Vagrant는 실행 한 후에 디자인되도록되어 있기 때문에 특정 시점에서 자동으로 실행되어야한다고 가정합니다. vagrant up
추가 구성없이 즉시 VM을 사용할 수 있습니다.
가까운 시일 내에 많은 수의 가상 머신을 만들어야 할 수도 있고 Vagrant를 사용하여 가상 머신을 만들 수 있기를 바랐지만 SSH를 수동으로 수정해야 할 경우에는 사용할 수 없습니다.
왜 이런 일이 발생하고 그것을 해결하기 위해 무엇을 할 수 있는지 알고 있습니까? 버그로 신고해야합니까?
test -f /etc/ssh/ssh_host_dsa_key || dpkg-reconfigure openssh-server
사용하여 수행 할 수 있습니다 ssh-keygen
.
test -e /etc/ssh/ssh_host_dsa_key || dpkg-reconfigure openssh-server
에서 /etc/rc.local
스크립트를 실행합니다.
vagrant
호스트에 최신을 설치 했습니까 ? 방랑 디버그를 켜고 어떤 일이 일어 났는지 확인하는 것은 어떻습니까?vagrant ssh
술집 키 인증에 방랑자의 안전하지 않은 키 쌍을 사용합니다.