Không thể ssh vào cài đặt Vagrant mới của 13.04


9

Tôi đã sử dụng hình ảnh Vagrant cho 13.04 từ http://cloud-images.ubfox.com/vagrant/rared/civerse/rared-server-cloudimg-i386-vagrant-disk1.box để tạo một máy ảo mới và cố gắng kết nối với nó sử dụng ssh. Tuy nhiên, SSH luôn ngắt kết nối ngay lập tức mà thậm chí không đến giai đoạn mà nó cố gắng xác thực.

Tôi đã mở VM trong GUI VirtualBox và xem tệp nhật ký SSH (auth.log). Nó có đầy đủ các dòng như thế này:

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]

Vấn đề đã được giải quyết bằng cách thực hiện các lệnh sau:

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

Tôi sẽ cho rằng những thứ này sẽ tự động chạy vào một lúc nào đó, đặc biệt là khi (a) tôi không phải tự chạy chúng khi tôi cài đặt Ubuntu từ hình ảnh ISO và (b) vì Vagrant được thiết kế sau khi bạn chạy vagrant upbạn có thể sử dụng ngay lập tức VM mà không cần cấu hình bổ sung.

Tôi có thể cần phải tạo một số lượng lớn Máy ảo trong tương lai gần và tôi đã hy vọng rằng tôi có thể sử dụng Vagrant để làm điều đó, nhưng tôi không thể làm điều đó nếu tôi phải tự sửa SSH trên mỗi máy.

Có ai biết tại sao điều này xảy ra và những gì có thể được thực hiện để khắc phục nó? Tôi có nên báo cáo đó là một lỗi không?


Bạn đã cài đặt mới nhất vagranttrên máy chủ của bạn? Làm thế nào về việc bật gỡ lỗi mơ hồ và xem những gì hạnh phúc? vagrant sshsử dụng khóa không an toàn của vagrant để xác thực khóa pub.
Terry Wang

Vâng, đây là người mới nhất. Lưu ý rằng vấn đề của tôi không phải là cặp khóa mơ hồ, đó là khóa Máy của máy chủ SSH chưa được đặt. Nếu máy chủ SSH không có khóa máy, không có cách nào để kết nối với nó.
Moshe Katz

Tôi vừa thử một máy ảo 12.10 mới và điều tương tự đã xảy ra.
Moshe Katz

Xin lỗi, đã không đọc kỹ câu hỏi. Tôi đã sshd vấn đề khóa máy chủ không xác thực khóa công khai. Có vẻ như trong lần khởi động đầu tiên, hình ảnh đám mây Ubuntu không thể tạo các khóa máy chủ mới (nếu KHÔNG tìm thấy). Nó có thể được thực hiện bằng test -f /etc/ssh/ssh_host_dsa_key || dpkg-reconfigure openssh-serverhoặc sử dụng ssh-keygenđể tạo các phím.
Terry Wang

Nên có test -e /etc/ssh/ssh_host_dsa_key || dpkg-reconfigure openssh-servertrong /etc/rc.localkịch bản.
Terry Wang

Câu trả lời:


5

Đây là sự cố khóa máy chủ SSH (KHÔNG liên quan đến xác thực khóa chung).

Có vẻ như vấn đề là hình ảnh mơ hồ trên đám mây ubfox không tạo được các khóa máy chủ mới (nếu chúng không có ở đó /etc/ssh/) trong lần khởi động đầu tiên ( vagrant up).

Ngoài việc tạo thủ công các khóa máy chủ SSH được đề cập bởi Moshe

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

Nó cũng có thể được thực hiện bằng cách thêm lệnh sau vào /etc/rc.local

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

Hy vọng nó giúp.


1
Đó là một giải pháp tạm thời, nhưng chúng ta không nên báo cáo đó là một lỗi trong hình ảnh đó? Không phải tất cả các khóa đã được tạo sẵn?
Radek Simko

5

Workaroud:

  • Nhập ~ / .vagrant.d / hộp / raring / box.ovf thiết bị trong VirtualBox

    VBoxManage import ~/.vagrant.d/boxes/raring/box.ovf
    
  • Nhận tên VM

    VBoxManage list vms
    
  • Khởi động VM

    VBoxManage startvm ubuntu-cloudimg-raring-vagrant-amd64
    
  • Bao gồm dòng sau trong /etc/rc.local (Tất nhiên là trong chính VM!):

    test -f /etc/ssh/ssh_host_dsa_key || dpkg-reconfigure openssh-server
    
  • Tắt máy ảo

    sudo halt
    
  • Xóa hình ảnh cũ

    rm ~/.vagrant.d/boxes/raring/box.ovf ~/.vagrant.d/boxes/raring/box-disk1.vmdk
    
  • Xuất VM ở định dạng .ovf

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

Làm xong :)

Cũng là một lỗi: https://bugs.launchpad.net/ubfox/+source/cloud-init/+orms/1217950


3

Điều này dường như là một lỗi trong các hộp cơ sở cũ. Trong các hình ảnh hộp cơ sở hiện tại (được tạo ngày 20 tháng 8 năm 2013), các phím dường như được tạo tự động khi hộp khởi động lần đầu tiên.


Tôi đang gặp phải lỗi này (một lần nữa) ngay bây giờ và có vẻ như báo cáo lỗi của @ S0me0ne rằng những người khác cũng vậy. Tôi đã xác nhận trong / etc / ssh rằng các tệp chính không có ở đó. Điều này đã được sử dụng hình ảnh ngày 24 tháng 9.
malvim

Được rồi, họ vừa phát hành một "lô" máy khác (từ ngày 28 tháng 9 năm 2013) tạo ra các phím bị thiếu một cách chính xác. Tôi đã có thể xác minh rằng bằng cách nhập các hộp bằng VBoxManage. Thật kỳ lạ, khi tôi sử dụng "vagrant up", các tập tin không có ở đó! Có sự khác biệt giữa nhập trực tiếp vào VB và sử dụng vagrant không?
malvim
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.