Ошибка проверки валидности ssh

Проблема с аутентификацией ssh:

==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
    default: Adapter 2: bridged
==> 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: Connection timeout. Retrying...
    default: Error: Connection timeout. Retrying...
    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...
    default: Error: Authentication failure. Retrying...

Я могу Ctrl+C выйти из цикла аутентификации, а затем успешно ssh вручную.

В гостевом поле я выполнил следующие шаги:

  • Включено Remote Login для All Users.

  • Создал каталог ~/.ssh с разрешениями 0700.

  • Создал файл ~/.ssh/authorized_keys с разрешениями 0600.

  • Вставить этот открытый ключ в ~/.ssh/authorized_keys

Я также пробовал использовать частную (hostonly) сеть вместо общедоступной (мостовой) сети, используя эту строку в Vagrantfile:

config.vm.network "private_network", ip: "172.16.177.7"

Я получаю тот же вывод (кроме Adapter 2: hostonly), но затем не может ssh вручную.

Я также пробовал config.vm.network "private_network", ip: "10.0.0.100".

Я также попытался установить config.ssh.password в Vagrantfile. Это выводит SSH auth method: password, но не аутентифицируется.

И я также попытался перестроить ящик и перепроверять все вышеперечисленное.

Похоже, что другие успели с этой конфигурацией, поэтому должно быть что-то, что я делаю неправильно.

I нашел этот поток и включил GUI, но это не помогает.

Ответ 1

Убедитесь, что ваш первый сетевой интерфейс - NAT. Другой второй сетевой интерфейс может быть любым, что вы хотите, когда вы создаете коробку. Не забывайте, что пользователь Vagrant, как описано в разделе Google.

Удачи.

Ответ 2

Для общей информации: по умолчанию для ssh-connect вы можете просто использовать

пользователь: vagrant пароль: vagrant

https://www.vagrantup.com/docs/boxes/base.html#quot-vagrant-quot-user

Сначала попробуйте: чтобы увидеть, что vagrant insecure_private_key находится в конфигурации вашего компьютера

$ vagrant ssh-config

Пример:

$ vagrant ssh-config
Host default
  HostName 127.0.0.1
  User vagrant
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile C:/Users/konst/.vagrant.d/insecure_private_key
  IdentitiesOnly yes
  LogLevel FATAL

http://docs.vagrantup.com/v2/cli/ssh_config.html

Во-вторых, выполните: измените содержимое файла insecure_private_key на содержимое личного ключа вашей личной системы.

Или используйте: Добавьте его в Vagrantfile:

Vagrant.configure("2") do |config|
  config.ssh.private_key_path = "~/.ssh/id_rsa"
  config.ssh.forward_agent = true
end
  1. config.ssh.private_key_path - ваш локальный закрытый ключ
  2. Ваш закрытый ключ должен быть доступен локальному ssh-агенту. Вы можете проверить с помощью ssh-add -L. Если его нет в списке, добавьте его с помощью ssh-add ~/.ssh/id_rsa
  3. Не забудьте добавить свой открытый ключ в ~/.ssh/authorized_keys на Vagrant VM. Вы можете сделать это путем копирования и -p или с помощью такого инструмента, как ssh-copy-id (пользователь: пароль root: vagrant порт: 2222) ssh-copy-id '-p 2222 [email protected]'

Если все еще не работает, попробуйте это:

  1. Удалить insecure_private_key файл из c:\Users\USERNAME\.vagrant.d\insecure_private_key

  2. Запустите vagrant up (vagrant создаст новый файл insecure_private_key)

В других случаях полезно просто установить forward_agent в Vagrantfile:

Vagrant::Config.run do |config|
   config.ssh.forward_agent = true
end

Полезное:

Конфигурирование git может быть с git-scm.com

После настройки этой программы и создания личного системного секретного ключа в вашем профиле будет путь: c:\users\USERNAME\.ssh\id_rsa.pub

PS: Напоследок - предлагаю вам взглянуть на Ubuntu на Windows 10

Ответ 3

Ничто из этого не помогло мне. Каким-то образом в ящике был добавлен неправильный открытый ключ в файле авторизированных пользователем бранных пользователей.

Если вы все еще можете ssh на поле с бродячим паролем (пароль бродяжней), то есть

ssh [email protected] -p 2222

затем скопируйте содержимое открытого ключа из https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub в файл authorised_keys со следующей командой

echo "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzIw+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoPkcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NOTd0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcWyLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ== vagrant insecure public key" > .ssh/authorized_keys

После завершения выхода из виртуальной машины и повторите попытку бродячего ssh. Теперь он должен работать.

Ответ 4

Если у вас возникла эта проблема на бродяге 1.8.5, проверьте эту ветку на github:

https://github.com/mitchellh/vagrant/issues/7610

Это вызвано в основном проблемой разрешения, обходной путь - это просто

vagrant ssh 
password: vagrant 
chmod 0600 ~/.ssh/authorized_keys
exit

затем

vagrant reload 

FYI: эта проблема затрагивает CentOS, Ubuntu отлично работает.

Ответ 5

Запустите следующие команды в гостевой машине /VM:

wget https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub -O ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
chown -R vagrant:vagrant ~/.ssh

Затем сделайте бродячую остановку. Это приведет к удалению и восстановлению ваших закрытых ключей.

(Эти шаги предполагают, что вы уже создали или уже имеете каталоги ~/.ssh/и ~/.ssh/authorized_keys в своей домашней папке.)

Ответ 6

По моему опыту, это была удивительно частая проблема с новыми бродячими машинами. Безусловно, самым простым способом решения этой проблемы вместо изменения самой конфигурации является создание необходимых ключей ssh вручную на клиенте, а затем использование закрытого ключа на хосте.

  1. Войдите на vagrant машину: vagrant ssh, используйте пароль по умолчанию vagrant.
  2. Создайте ssh-ключи: например, ssh-keygen -t rsa -b 4096 -C "vagrant" (в соответствии с рекомендациями соответствующего руководства GitHub).
  3. Переименуйте файл открытого ключа (по умолчанию id_rsa.pub), переопределяя старый: mv.ssh/id_rsa.pub.ssh/authorized_keys.
  4. Перезагрузите ssh-сервис в случае необходимости: sudo service ssh reload.
  5. Скопируйте файл секретного ключа (по умолчанию id_rsa) на хост-компьютер: например, используйте прекрасную комбинацию cat и clipboard, cat.ssh/id_rsa, рисуйте и копируйте (лучшие способы должны существовать, придумайте один!).
  6. Выход из бродячей машины: logout.
  7. Найдите текущий закрытый ключ, используемый vagrant, просмотрев его конфигурацию: vagrant ssh-Config (посмотрите, например, ÌdentityFile "/[...]/private_key".
  8. Замените текущий закрытый ключ тем, который вы создали на хост-машине: например, nano/[...]/private_key и вставьте из буфера обмена, если nano/[...]/private_key. (Тем не менее, обратите внимание, что если ваш private_key не специфичен для проекта, но используется несколькими бродячими машинами, вам лучше настроить путь самостоятельно, чтобы не нарушать работу других отлично работающих машин. Изменить путь так же просто, как добавить строку config.ssh.private_key_path = "path/to/private_key" в Vagrantfile.) Кроме того, если вы используете машину, сгенерированную PuPHPet, вы можете сохранить свой закрытый ключ в файле puphpet/files/dot/ssh/id_rsa и он будет добавлен в конфигурацию Vshgrantfile ssh автоматически.
  9. Проверьте настройки: теперь должен работать vagrant ssh.

Если это так, поздравьте себя, logout, запустите vagrant provision если необходимо, и продолжайте выполнять важную задачу.

Если вы все еще сталкиваетесь с проблемами, может оказаться полезным добавить подробный флаг в команду ssh, чтобы упростить отладку. Вы можете передать это (или любой другой вариант) после двойной черты. Например, набрав vagrant ssh -- -v. Не стесняйтесь добавлять столько V, сколько вам нужно, каждый даст вам больше информации.

Ответ 7

Это также может произойти, если вы пытаетесь заставить вашу виртуальную машину использовать root-пользователя по умолчанию для SSH....

Например, такая конфигурация в вашем Vagrantfile может привести к этой ошибке:

config.ssh.username = 'root'
config.ssh.password = 'vagrant'
config.ssh.insert_key = 'true'

Решение: прокомментируйте эти строки и повторите попытку!

Ответ 8

Проблема: я получал ошибки проверки подлинности ssh, в ящике, который я предоставил. Оригинал работал нормально.

Проблема для меня заключалась в том, что я отсутствовал в закрытом ключе в .vagrant/machines/default/virtualbox/private_key. Я скопировал секретный ключ из того же относительного местоположения из оригинальной коробки и Viola!

Ответ 9

Я нашел путь вокруг беспорядка с ключами на Win 8.2, где мне не удалось ни с одним из методов, упомянутых здесь. Может быть интересно, что точно такая же комбинация VirtualBox, Vagrant и box запускается на Win 7 Ultimate без проблем.

Я переключился на аутентификацию пароля, добавив следующие команды в Vagrantfile:

config.ssh.password = "vagrant"
config.ssh.insert_key = false

Обратите внимание, что я не уверен, что это единственные изменения, которые требуются, потому что я уже сделал:

  • Я создал новую пару ключей RSA и изменил файл authorized_keys соответственно (все в виртуальной машине, см. предложения выше и в другом месте)

  • Я скопировал закрытый ключ в тот же каталог, где находится Vagrantfile, и добавил

     config.ssh.private_key_path = "./id_rsa"
    

Но я считаю, что эти изменения были неактуальны. Я потратил много времени на попытки, поэтому я не изменил рабочую конфигурацию по очевидным причинам:)

Ответ 10

для меня это было разрешено путем изменения разрешений на папку .ssh в брандмауэре home directort (т.е. "~ vagrant/.ssh" ). Я думаю, что я испортил разрешения, когда я настраивал ключи ssh для своего приложения.

Кажется, что файл authorized_keys должен быть "rw" только для пользователя "vagrant", поэтому "chmod 600 authorized_keys"; то же самое касается самого каталога и его родителя:

так:

chmod 600 authorized_keys
chmod 700 .
chmod 700 ..

Только после того, как все эти разрешения были восстановлены, этот бродячий ssh ​​снова начал работать.

Я думаю, что это связано с безопасностью ssh. Он отказывается распознавать сертификаты, если они каким-либо образом доступны за пределами текущего пользователя, поэтому бродячие попытки входа в систему, таким образом, отклоняются.

Ответ 11

Если вы используете настройку SSH по умолчанию в своем VagrantFile и начали просматривать ошибки проверки SSH после повторного связывания своего окна VM из-за сбоя, попробуйте заменить открытый ключ на вашей бродяжней машине.

Vagrant заменяет открытый ключ, связанный с небезопасной частной парой ключей при каждом выходе из системы из-за соображений безопасности. Если вы не закрыли свой компьютер, пара с открытым/закрытым ключом может выйти из строя, вызывая ошибку аутентификации SSH.

Чтобы устранить эту проблему, просто загрузите текущий небезопасный закрытый ключ, а затем скопируйте пар открытого ключа в файл вашей авторизации VM.

Ответ 12

Это случилось со мной несколько раз, и так, как я решил, это было:

  • Проверьте и убедитесь, что ваш Vagrantfile имеет правильный путь к закрытому ключу:

    config.ssh.private_key_path = "/home/razvan/.ssh/id_rsa"

  • Выполнить > команду vagrant ssh в терминале linux

  • На вашем бродяжном компьютере перейдите к

    cd/home/vagrant/.ssh

и проверьте, является ли ключ ssh в файле authorized_keys таким же, как тот, который у вас есть на вашем локальном компьютере в ~/.ssh/id_rsa.pub. Если вы не замените одну из ваших бродяг authorized_keys на ту, что находится на вашем локальном компьютере, найденном в ~/.ssh/id_rsa.pub.

  1. Обновить бродягу:

    бродячая перезагрузка

Надеюсь, это поможет кому-то другому. Ура!

Ответ 13

Это может быть последним ответом в списке, но это сработало для меня, и я не нашел этот ответ нигде, я нашел его сам после двух дней исследований, поэтому вам лучше попробовать это, если больше ничего не сработает для вас, пока Теперь.

В моем случае проблема возникла из моего VirtualBox. Я не знаю, по какой причине опция была отключена, и она должна была быть включена.

введите описание изображения здесь

Как вы можете видеть на изображении, были проблемы с сетью с моим VirtualBox, и что мне нужно было сделать, чтобы исправить эту проблему, было выбрать мою машину, нажать на настройки, вкладку сети и после этого убедиться, что была выбрана опция Cable Connected. В моем случае эта опция не была выбрана, и я не смог выполнить этот шаг:

default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key

Сначала я подумал, что порт уже используется, после чего я переустановил Vagrant, и я также пробовал другие вещи, но никто из них не работал у меня.

Ответ 14

1. Найдите закрытый ключ в хосте:

vagrant ssh-config
#

Вывод:

Host default
  ...
  Port 2222
  ...
  IdentityFile /home/me/.vagrant.d/[...]/virtualbox/vagrant_private_key
  ...

2. Сохраните путь закрытого ключа и номер порта в переменных:

Используйте эти две команды с выходом сверху:

pk="/home/me/.vagrant.d/.../virtualbox/vagrant_private_key"
port=2222
#

3. Создайте открытый ключ и загрузите его на гостевую машину:

Копировать/макароны, никаких изменений не требуется:

ssh-keygen -y -f $pk > authorized_keys
scp -P $port authorized_keys [email protected]:~/.ssh/
vagrant ssh -c "chmod 600 ~/.ssh/authorized_keys"
rm authorized_keys
#

Ответ 15

Невозможно запустить vagrant, потому что он застрял и время ожидания?

Недавно у меня произошел "инцидент с водой в ноутбуке", и мне пришлось перейти на новый (кстати, на MAC).

Я успешно запустил и запустил все свои проекты, кроме того, что использовал vagrant.

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
    default: Adapter 2: hostonly
==> default: Forwarding ports...
    default: 8000 (guest) => 8877 (host) (adapter 1)
    default: 8001 (guest) => 8878 (host) (adapter 1)
    default: 8080 (guest) => 7777 (host) (adapter 1)
    default: 5432 (guest) => 2345 (host) (adapter 1)
    default: 5000 (guest) => 8855 (host) (adapter 1)
    default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Running 'pre-boot' VM customizations...
==> 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: Warning: Authentication failure. Retrying...
    default: Warning: Authentication failure. Retrying...
    default: Warning: Authentication failure. Retrying...

Он не мог подтвердить подлинность, повторял снова и снова и в конце концов сдался.

** Вот как я вернул его в форму в 3 этапа: **

1 - Найти IdentityFile, используемый vagrant: $ vagrant ssh-config

Host default
  HostName 127.0.0.1
  User vagrant
  Port 2222
  UserKnownHostsFile /dev/null
  StrictHostKeyChecking no
  PasswordAuthentication no
  IdentityFile /Users/ned/.vagrant.d/insecure_private_key
  IdentitiesOnly yes
  LogLevel FATAL

2 - Проверьте открытый ключ в IdentityFile: $ ssh-keygen -y -f/Users/<user-name>/.vagrant.d/insecure_private_key Замените '<user-name>' вашим пользователем. Это будет выглядеть примерно так:

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAA...9gE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ==

3 - Войдите в бродячую машину с паролем "vagrant": $ ssh -p 2222 -o UserKnownHostsFile=/dev/null [email protected]

The authenticity of host '[127.0.0.1]:2222 ([127.0.0.1]:2222)' can't be established.
RSA key fingerprint is dc:48:73:c3:18:e4:9d:34:a2:7d:4b:20:6a:e7:3d:3e.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[127.0.0.1]:2222' (RSA) to the list of known hosts.
[email protected] password: vagrant
Welcome to Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-31-generic x86_64)
...

4 - Добавьте открытый ключ в файл author_keys. $ echo "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAA...9gE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ==" >/home/vagrant/.ssh/authorized_keys ssh-rsa

5 - Выйдите (crtl + d) и остановите контейнер для бродяги и верните его обратно. $ vagrant halt $ vagrant up

Надеюсь, теперь вы будете держать руки в воздухе...

Я получил это, с небольшой поправкой, из статьи Неда Бэтчелдерса - Нед ты чемпион !!

Ответ 16

Решение для Mac:

  • Добавлен локальный ключ ssh id_rsa для закрытого закрытого ключа

    vi/Пользователи//. vagrant/machines/default/virtualbox/private_key

    /Users//. SSH/id_rsa

  • скопированный открытый ключ /Users//.ssh/id_rsa.pub на брандмауэре box authorized_keys

ssh [email protected] -p 2222 (пароль: бродяга) ls -la cd .ssh

  1. chmod 0600 ~/.ssh/authorized_keys

  2. vagrant reload

Проблема решена.

Благодаря

Ответ 17

Прежде всего, вы должны удалить файл autecenerated insecure_private_key, а затем восстановить этот файл, набрав

vagrant ssh-config

то

vagrant halt
vagrant up

Он должен работать

Ответ 18

также не мог выйти за пределы:

default: SSH метод auth: закрытый ключ

Когда я использовал GUI VirtualBox, он сказал, что существует несоответствие процессора ОС.

Чтобы ускорить продвижение вперед, в настройках BIOS мне пришлось контр-интуитивно:

Отключить: виртуализация

Включить: VT-X

Попробуйте переключить эти настройки в BIOS.

Ответ 19

Я решил проблему следующим образом. 1. Создайте новый ключ SSH с помощью Git Bash

$ ssh-keygen -t rsa -b 4096 -C "[email protected]"
# Creates a new ssh key, using the provided email as a label
Generating public/private rsa key pair.
  1. Когда вам будет предложено "Ввести файл для сохранения ключа", нажмите "Enter". Это принимает местоположение файла по умолчанию.

    Введите файл для сохранения ключа (/Users/[you]/.ssh/id_rsa): [Нажмите enter]

  2. В командной строке введите защищенную кодовую фразу. Вы можете оставить пустым и нажать enter, если вам не нужна кодовая фраза.

    Введите файл для сохранения ключа (/Users/[you]/.ssh/id_rsa): [Нажмите enter]

  3. Чтобы подключиться к вашему Vagrant VM, выполните следующую команду

    ssh vagrant @localhost -p 2222

Когда вы получите следующее сообщение типа "да" и нажмите "Enter".

The authenticity of host 'github.com (192.30.252.1)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?
  1. Теперь, чтобы установить тип соединения SSH: $vagrant ssh

  2. Скопируйте общедоступный ключ хоста в файл authorized_keys в Vagrant VM. Для этого перейдите в папку "Users/[you]/. Ssh" и скопируйте содержимое в файл id_rsa.pub на хост-машине и прошйте в файл "~/.ssh/authorized_keys" в Vagrant VM.

  3. Изменить разрешение на папку SSH и файл authorized_keys в Vagrant VM
  4. Перезапустить бродягу с помощью: $vagrant reload

Ответ 20

Я запустил машину, затем:

vagrant ssh-config

Я получил следующее:

Host default HostName 127.0.0.1 User vagrant Port 2222 UserKnownHostsFile /dev/null StrictHostKeyChecking no PasswordAuthentication no IdentityFile /Users/my-user-name/Documents/PHP-Projects/my-php-project/puphpet/files/dot/ssh/id_rsa IdentityFile /Users/my-user-name/.vagrant.d/insecure_private_key IdentitiesOnly yes LogLevel FATAL

Затем я побежал

cat ~/.ssh/id_rsa > /Users/my-user-name/Documents/PHP-Projects/my-php-project/puphpet/files/dot/ssh/id_rsa

Машина загружена здесь

  • El Capitan 10.11.1 Beta (15B38b)
  • Виртуальная коробка 5.0.8 r103449
  • Vagrant 1.7.4

Ответ 21

Между всеми ответами здесь есть много хороших вещей, чтобы попробовать. Для полноты, если вы

ssh [email protected] -p 2222

как @Bizmate предлагает, и он терпит неудачу, убедитесь, что у вас

AllowUsers vagrant

в /etc/ssh/sshd_config вашей гостевой/бродяжной машины.

Ответ 22

Я использую Vagrant с установкой Puphpet с мая 2015 года и имел эту проблему. Похоже, что созданная конфигурация не обрабатывала поведение Vagrant 1.7.4 (или, возможно, немного раньше?) Поведения регенерирующих ssh-ключей, если обнаруживает небезопасный ключ.

Я решил это, добавив следующее в свой созданный Puphpet Vagrantfile (локальная настройка) в разделе "if File.file? (customKey)":

config.ssh.insert_key = false

Ссылка commit

Ответ 23

Это все правильные шаги, которые я выполнил для исправления этой проблемы, возникли при запуске команды vagrant up.

Это шаги, которые я выполнил

  • создать папку. например, F:\projects
  • Откройте эту папку в git bash и запустите эту команду  ssh-keygen -t rsa -b 4096 -C "[email protected]" (введите действительный адрес электронной почты)
  • Затем генерируем пару ключей в двух отдельных файлах в папке проекта. например, проект (файл закрытого ключа), project.pub(файл открытого ключа)
  • Перейдите в это место C:\Users\acer.vagrant.d и найдите файл insecure_private_key
  • Получить резервную копию файла и скопировать содержимое только что созданного закрытого ключа и вставить его в файл insecure_private_key. Затем скопируйте insecure_private_key и вставьте его в это местоположение.
  • Теперь бродяжничайте в своем проекте. после генерации выше типа типа vagrant ssh и зайти внутрь, давая имя пользователя, пароль. (по умолчанию имя пользователя и пароль заданы как бродяга)
  • Войдите в это место cd/home/vagrant/.ssh и введите mv authorized_keys authorized_keys_bk
  • Затем введите ls -al и введите vi authorized_keys для открытого файла vi файла authorized_keys.
  • Открыть открытый открытый ключ из notepad ++ (project.pub) и скопировать содержимое Затем нажмите я на git bash, чтобы включить режим вставки в редакторе vi, и щелкните правой кнопкой мыши и вставьте его. После выхода из режима ожидания, чтобы выйти из режима вставки
  • : WQ! для сохранения файла и типа ls -al
  • Затем разрешения устанавливаются как ниже, не нужно изменять drwx ------. 2 бродячий бродяга 4096 13 фев 15:33. drwx ------. 4 бродячий бродяга 4096 13 фев 14:04.. -rw -------. 1 бродячий бродяга 743 13 февраля 14:26 authorized_keys -rw -------. 1 корень root 409 13 февраля 13:57 authorized_keys_bk -rw -------. 1 бродячий бродяга 409 2 янв. 23:09 authorized_keys_originial В противном случае введите chmod 600 authorized_keys и введите эту команду слишком chaw vagrant: vagrant authorized_keys
  • Наконец, запустите бродягу и остановитесь снова.

************************ ЭТО РАБОТАЕТ МНЕ ДЛЯ МЕНЯ ***************** **************

Ответ 24

Просто для тех людей, которые были такими идиотами, как я, или что-то странное случилось с их бродягой машиной. Эта ошибка также может возникнуть, если вы изменили разрешения домашней директории пользователя бродяг (умышленно или случайно).

Вместо этого вы можете войти в систему (как описано в других сообщениях) с помощью пароля ('vagrant'), а затем выполнить следующую команду для исправления разрешений.

sudo chown -R vagrant:vagrant /home/vagrant

Затем вы сможете снова войти в систему без ввода пароля.

TL; DR: права на вашу бродячую домашнюю папку неправильны.

Ответ 25

Простой:

homestead destroy
homestead up

Изменить (не так просто, как первая мысль):

Проблема заключалась в том, что новые версии homestead используют php7.0 и некоторые другие вещи. Чтобы избежать этого беспорядка, убедитесь, что вы установили verison в Homestead.yml:

version: "0"

Ответ 26

Я решил эту проблему, выполнив команды в Windows 7 CMD, как указано в этом, вот ссылка последнего сообщения в этом потоке,

https://github.com/mitchellh/vagrant/issues/6744

Some commands that will reinitialize various network states:
Reset WINSOCK entries to installation defaults : netsh winsock reset catalog
Reset TCP/IP stack to installation defaults : netsh int ip reset reset.log
Flush DNS resolver cache : ipconfig /flushdns
Renew DNS client registration and refresh DHCP leases : ipconfig /registerdns
Flush routing table : route /f

Ответ 27

Я бью себя в голову в течение последних нескольких дней на переупакованной базовой коробке. (Mac OS X, El Capitan)

Следуя процедуре @Radek, я сделал "vagrant ssh-config" в исходном поле и получил:

...
/Users/Shared/dev/<source-box-name>/.vagrant/machines/default/virtualbox/private_key
...

В новой копии эта команда дала мне:

...
IdentityFile /Users/<username>/.vagrant.d/insecure_private_key
...

Итак, я просто добавил эту строку в новую копию:

...
config.ssh.private_key_path = "/Users/Shared/dev/<source-box-name>/.vagrant/machines/default/virtualbox/private_key"
...

Не совершенен, но я могу продолжать свою жизнь.

Ответ 28

Еще одно простое решение в Windows, перейдите в файл Homestead/Vagrantfile и добавьте эти строки для соединения с именем пользователя/паролем вместо закрытого ключа:

config.ssh.username = "vagrant"  
config.ssh.password = "vagrant"  
config.ssh.insert_key = false 

Итак, наконец, часть файла будет выглядеть так:

if File.exists? homesteadYamlPath then
    settings = YAML::load(File.read(homesteadYamlPath))
elsif File.exists? homesteadJsonPath then
    settings = JSON.parse(File.read(homesteadJsonPath))
end

config.ssh.username = "vagrant"  
config.ssh.password = "vagrant"  
config.ssh.insert_key = false 

Homestead.configure(config, settings)

if File.exists? afterScriptPath then
    config.vm.provision "shell", path: afterScriptPath, privileged: false
end

Надеюсь на эту помощь.

Ответ 29

Я попробовал это на моей машине ВМ

изменить разрешения /home/vagrant (сделал chmod 700 на нем)

Теперь я могу SSH прямо в мои коробки