Неможливо ввімкнути нову встановлену програму Vagrant 13.04


9

Я використовував зображення Vagrant за 13.04 від http://cloud-images.ubuntu.com/vagrant/raring/current/raring-server-cloudimg-i386-vagrant-disk1.box, щоб створити нову віртуальну машину і спробував підключитися до це за допомогою ssh. Однак SSH завжди відключався негайно, навіть не дійшовши до етапу, де він намагався пройти автентифікацію.

Я відкрив VM в GUI VirtualBox і подивився файл журналу 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) я не повинен був сам запускати їх, коли я встановлював Ubuntu з зображення ISO, і (b) тому, що Vagrant повинен бути розроблений, що після запуску vagrant upВи можете негайно використовувати VM без додаткової конфігурації.

Можливо, мені доведеться створити велику кількість віртуальних машин найближчим часом, і я сподівався, що зможу це зробити Vagrant, але не можу це зробити, якщо мені доведеться вручну виправити SSH на кожному.

Хтось знає, чому це відбувається і що можна зробити, щоб це виправити? Чи слід повідомити про це як про помилку?


Ви встановили останнє vagrantна своєму хості? Як щодо включення бродячої налагодження і подивитися, що щасливе? vagrant sshвикористовує незахищенний ключ ключа для аутентифікації ключів паб.
— Террі Ван

Так, це найновіший бродяг. Зауважте, що моя проблема не є бродячою клавішею, це не ключ машини SSH-сервера. Якщо на сервері SSH немає машинного ключа, немає можливості підключитися до нього.
— Моше Кац

Я щойно спробував свіжий 12,10 ВМ і сталося те саме.
— Моше Кац

Вибачте, запитання не прочитав уважно. У мене була проблема ключа ключа sshd, а не аутентифікації відкритого ключа. Схоже, під час першого завантаження зображення хмари Ubuntu не вдалося створити нові хост-ключі (якщо НЕ знайдено). Це можна зробити за допомогою 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сценарії.
— Террі Ван

Відповіді:


5

Це проблема хост-ключів SSH (НЕ пов'язана з аутентифікацією відкритого ключа).

Схоже, проблема полягала в тому, що /etc/ssh/під час першого завантаження ( vagrant up) вони не змогли генерувати нові ключі хоста (якщо їх там немає ) ubuntu хмарового зображення ubuntu .

Крім того, щоб вручну генерувати SSH ключі хоста, згадані Моше

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

Це також можна зробити, додавши в команду /etc/rc.local

test -f /etc/ssh/ssh_host_dsa_key || dpkg-reconfigure openssh-server

Сподіваюся, це допомагає.


1
Це тимчасове рішення, але чи не слід повідомити про це як про помилку в зображенні? Чи не повинні всі ключі бути попередньо створені?
— Радек Сімко

5

Режим роботи:

  • Імпортуйте пристрій ~ / .vagrant.d / box / raring / box.ovf у VirtualBox

    VBoxManage import ~/.vagrant.d/boxes/raring/box.ovf
    
  • Отримати ім’я VM

    VBoxManage list vms
    
  • Запустіть VM

    VBoxManage startvm ubuntu-cloudimg-raring-vagrant-amd64
    
  • Включіть наступний рядок у /etc/rc.local (Звичайно, у самій машині відомства!):

    test -f /etc/ssh/ssh_host_dsa_key || dpkg-reconfigure openssh-server
    
  • Вимкнення В.М.

    sudo halt
    
  • Видалення старих зображень

    rm ~/.vagrant.d/boxes/raring/box.ovf ~/.vagrant.d/boxes/raring/box-disk1.vmdk
    
  • Експорт VM у формат .ovf

    VBoxManage export ubuntu-cloudimg-raring-vagrant-amd64 --output ~/.vagrant.d/boxes/raring/box.ovf
    

Готово :)

Зробив також помилку: https://bugs.launchpad.net/ubuntu/+source/cloud-init/+bug/1217950


3

Схоже, помилка в старих базових коробках. У поточних зображеннях базового вікна (згенеровано 20 серпня 2013 р.), Здається, клавіші створюються автоматично, коли вікно завантажується вперше.


Я зараз стикаюся з цією помилкою (знову), і, як видається у звіті про помилку @ S0me0ne, інші люди теж. Я підтвердив в / etc / ssh, що ключових файлів немає. Для цього використовували зображення 24 вересня.
— мальвім

Гаразд, вони щойно випустили ще одну "партію" машин (з 28 вересня 2013 р.), Які правильно створюють відсутні ключі. Мені вдалося перевірити це, імпортуючи поля за допомогою VBoxManage. Дивно, коли я використовую "бродягу", файлів немає! Чи є різниця між імпортом безпосередньо у VB та використанням vagrant?
— мальвім
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.