Проблема с 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
но все еще не аутентифицируется.
И я также попытался восстановить коробку и перепроверить все вышеизложенное.
Похоже, что другие имели успех с этой конфигурацией , поэтому, должно быть, я что-то не так делаю.
Я нашел эту тему и включил графический интерфейс, но это не помогает.
источник
config.ssh.private_key_path = "~/.ssh/id_rsa"
пришлось убрать эту строку, чтобы обеспечить работуНичто из вышеперечисленного не помогло мне. Каким-то образом в ящик был добавлен неправильный открытый ключ в файле authorised_keys бродячего пользователя .
Если вы все еще можете ssh на коробке с паролем vagrant (пароль vagrant), т.е.
затем скопируйте содержимое открытого ключа из https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub в файл authorised_keys с помощью следующей команды
Когда закончите, выйдите из VM и попробуйте vagrant ssh снова. Это должно работать сейчас.
источник
vagrant reload
после обновления файла авторизованных ключей. Vagrant автоматически обнаружит небезопасный ключ и сгенерирует его для вас. Должен работать потом.Если вы сталкиваетесь с этой проблемой на vagrant 1.8.5, проверьте эту ветку на github:
https://github.com/mitchellh/vagrant/issues/7610
Это вызвано в основном проблемой разрешения, обходной путь - просто
затем
К вашему сведению: эта проблема касается только CentOS, Ubuntu работает нормально.
источник
Выполните следующие команды в гостевой машине / VM:
Тогда сделайте бродячую остановку. Это удалит и восстановит ваши личные ключи.
(Эти шаги предполагают, что вы уже создали или уже имеете каталоги ~ / .ssh / и ~ / .ssh / authorized_keys в своей домашней папке.)
источник
По моему опыту, это была удивительно частая проблема с новыми бродячими машинами. Безусловно, самый простой способ решить эту проблему - вместо изменения самой конфигурации - вручную создать необходимые ssh-ключи на клиенте, а затем использовать закрытый ключ на хосте.
vagrant ssh
используйте пароль по умолчаниюvagrant
.ssh-keygen -t rsa -b 4096 -C "vagrant"
( а соответствующим посоветовал руководство GitHub в ).mv .ssh/id_rsa.pub .ssh/authorized_keys
.sudo service ssh reload
.cat .ssh/id_rsa
, раскрасьте и скопируйте (должны существовать лучшие способы, придумайте один!).logout
.vagrant ssh-config
(посмотрите, например, ÌdentityFile "/[..]].private_key".nano /[...]/private_key
и вставьте из буфера обмена, если ничего не помогло. ( Тем не менее, обратите внимание , что если ваш private_key не специфичен для проекта, а используется несколькими бродячими машинами, лучше настроить путь самостоятельно, чтобы не нарушать работу других отлично работающих машин.config.ssh.private_key_path = "path/to/private_key"
Изменить путь так же просто, как добавить строку в Vagrantfile. ) Кроме того, если вы используете компьютер, сгенерированный PuPHPet , вы можете сохранить свой закрытый ключ в файле,puphpet/files/dot/ssh/id_rsa
и он будет автоматически добавлен в конфигурацию ssh Vagrantfile.vagrant ssh
теперь должно работать.Если это так, поздравьте себя,
logout
бегите,vagrant provision
если необходимо, и продолжайте выполнять значимую задачу под рукой.Если вы все еще сталкиваетесь с проблемами, может оказаться полезным добавить подробный флаг в команду ssh, чтобы упростить отладку. Вы можете передать это (или любой другой вариант) после двойной черты. Например, печатать
vagrant ssh -- -v
. Не стесняйтесь добавлять столько V, сколько вам нужно, каждый даст вам больше информации.источник
ssh vagrant@10.0.0.0 -p 22 (password: vagrant)
для входа в ВМ, так как у меня не получалосьvagrant ssh
.10.0.0.0
это частный IP-адрес, который я установил в своемvagrantfile
.Это также может произойти, если вы пытаетесь заставить свою виртуальную машину использовать пользователя root по умолчанию для SSH ....
Например, такая конфигурация в вашем Vagrantfile может вызвать эту ошибку:
Решение: закомментируйте эти строки и попробуйте снова!
источник
Проблема Я получаю ошибки аутентификации ssh, на коробке, которую я подготовил. Оригинал работал нормально.
Проблема для меня заключалась в том, что мне не хватало закрытого ключа
.vagrant/machines/default/virtualbox/private_key
. Я скопировал закрытый ключ из того же места с оригинальной коробки и Виолы!источник
.vagrant
файлы в git ... и, как таковой, быстроеgit checkout
упоминание файла спасает день!Я нашел способ обойти беспорядок с ключами на Win 8.2, где мне не удалось ни с одним из методов, упомянутых здесь. Может быть интересно, что точно такая же комбинация VirtualBox, Vagrant и коробки работает на Win 7 Ultimate без каких-либо проблем.
Я переключился на аутентификацию по паролю, добавив следующие команды в Vagrantfile:
Обратите внимание, что я не уверен, что это единственные необходимые изменения, потому что я уже сделал:
Я сгенерировал новую пару ключей RSA и соответственно изменил файл author_keys (все на виртуальной машине, см. Предложения выше и в других местах)
Я скопировал закрытый ключ в тот же каталог, где находится Vagrantfile, и добавил
Но я считаю, что эти изменения не имеют значения. Я потратил много времени, пытаясь, поэтому я не изменил рабочую конфигурацию по понятным причинам :)
источник
Невозможно запустить vagrant, потому что он застрял и время ожидания?
Недавно у меня произошел «инцидент с водой в ноутбуке», и мне пришлось перейти на новый (кстати, на MAC).
Я успешно запустил и запустил все свои проекты, кроме того, что использовал vagrant.
Он не мог подтвердить подлинность, повторял снова и снова и в конце концов сдался.
** Вот как я вернул его в форму в 3 этапа: **
1 - Найти IdentityFile, используемый vagrant: $
vagrant ssh-config
2 - Проверьте открытый ключ в IdentityFile: $
ssh-keygen -y -f /Users/<user-name>/.vagrant.d/insecure_private_key
Замените'<user-name>'
своим пользователем. Это будет выглядеть примерно так:3 - Войдите в бродячую машину с паролем "vagrant": $
ssh -p 2222 -o UserKnownHostsFile=/dev/null vagrant@127.0.0.1
4 - Добавьте открытый ключ в файл author_keys. $
echo "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAA...9gE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ==" > /home/vagrant/.ssh/authorized_keys ssh-rsa
5 - Выйдите (crtl + d) и остановите контейнер для бродяги и верните его обратно. $
vagrant halt
$vagrant up
Надеюсь, теперь вы будете держать руки в воздухе ...
Я получил это, с небольшой поправкой, из статьи Неда Бэтчелдерса - Нед ты чемпион !!
источник
для меня это было решено путем изменения прав доступа к папке .ssh в vagrant home directort (то есть "~ vagrant / .ssh"). Я думаю, что испортил разрешения, когда настраивал ssh-ключи для своего приложения.
Кажется, что файл authorized_keys должен быть rw только для пользователя vagrant, поэтому chmod 600 authorized_keys; то же самое касается самого каталога и его родителя:
так:
Только после того, как я восстановил все эти разрешения, vagrant ssh снова начал работать.
Я думаю, это как-то связано с безопасностью ssh. Он отказывается распознавать сертификаты, если они каким-либо образом доступны за пределами текущего пользователя, поэтому попытки vagrants войти в систему, таким образом, отклоняются.
источник
/vagrant/...
Если вы используете настройку SSH по умолчанию в VagrantFile и начали видеть ошибки аутентификации SSH после повторного связывания вашего блока VM из-за сбоя, попробуйте заменить открытый ключ на вашем бродячем компьютере.
Vagrant заменяет открытый ключ, связанный с небезопасной парой закрытых ключей, при каждом выходе из системы по соображениям безопасности. Если вы не завершили работу своего компьютера должным образом, пара открытых / закрытых ключей может не синхронизироваться, что приведет к ошибке аутентификации SSH.
Чтобы решить эту проблему, просто загрузите текущий незащищенный закрытый ключ и затем скопируйте пару открытого ключа в файл author_keys вашей виртуальной машины.
источник
Это может быть последний ответ в списке, но это сработало для меня, и я нигде не нашел этот ответ, я нашел его сам после 2 дней исследований, так что вам лучше попробовать это, если до сих пор у вас ничего не получалось.
В моем случае проблема возникла из моего VirtualBox. Я не знаю, по какой причине опция была отключена, и она должна была быть включена.
Как вы можете видеть на изображении, с моим VirtualBox были некоторые проблемы с сетью, и для решения этой проблемы мне нужно было выбрать свой компьютер, нажать «Настройки», вкладку «Сеть» и после этого убедиться, что опция «Подключен кабель» был выбран. В моем случае эта опция не была выбрана, и мне это не удалось на этом этапе:
Сначала я подумал, что порт уже используется, после чего я переустанавливал Vagrant и тоже пробовал другие вещи, но ни одна из них не работала для меня.
источник
Это случалось со мной несколько раз, и я решил это так:
Проверьте и убедитесь, что ваш Vagrantfile имеет правильный путь к закрытому ключу:
config.ssh.private_key_path = "/home/razvan/.ssh/id_rsa"
Выполнить> команду vagrant ssh в терминале Linux
На своем бродячем аппарате иди в
cd /home/vagrant/.ssh
и проверьте, совпадает ли ключ ssh в файле author_keys с ключом, установленным на вашем локальном компьютере в ~ / .ssh / id_rsa.pub. Если нет, замените тот из ваших бродячих авторизованных ключей на тот, который находится на вашем локальном компьютере в ~ / .ssh / id_rsa.pub.
Перезагрузить бродягу:
Бродячая перезагрузка
Надеюсь, это поможет кому-то еще. Ура!
источник
authorized_keys
файл с разрешением 600 внутри.1. Найдите закрытый ключ на хосте:
Вывод:
2. Сохраните путь к закрытому ключу и номер порта в переменных:
Используйте эти две команды с выводом сверху:
3. Сгенерируйте открытый ключ и загрузите его на гостевой компьютер:
Копирование / паста, без изменений:
источник
config.ssh.username = "vagrant"; config.ssh.password = "vagrant"; config.ssh.insert_key = true
Но на этот раз вышеуказанная конфигурация ничего не сделала. Я действительно не знаю почему, попытался отладить, почему ключ не вставлен без удачи. Поэтому я отступил к вашему решению и вуаля! Оно работает!Решение для Mac:
Добавлен локальный ключ ssh id_rsa в бродячий закрытый ключ
vi /Users//.vagrant/machines/default/virtualbox/private_key
/Users//.ssh/id_rsa
скопировал открытый ключ /Users//.ssh/id_rsa.pub на бродячую коробку authorized_keys
ssh vagrant@localhost -p 2222
(пароль: бродячий)ls -la
cd .ssh
chmod 0600 ~/.ssh/authorized_keys
vagrant reload
Проблема решена.
Благодаря
источник
также не мог выйти за рамки:
по умолчанию: SSH метод аутентификации: закрытый ключ
Когда я использовал графический интерфейс VirtualBox, он сказал мне, что есть несоответствие процессора ОС.
Для дальнейшего продвижения бродяги, в настройках BIOS мне пришлось нелогично:
Отключить: виртуализация
Включить: VT-X
Попробуйте включить эти настройки в вашем BIOS.
источник
Прежде всего вы должны удалить автоматически сгенерированный файл insecure_private_key, а затем восстановить этот файл, набрав
затем
Он должен работать
источник
Я решил проблему следующим образом. 1. Создайте новый ключ SSH, используя Git Bash
Когда вам будет предложено «Введите файл, в котором вы хотите сохранить ключ», нажмите Enter. Это принимает местоположение файла по умолчанию.
Введите файл для сохранения ключа (/Users/[you]/.ssh/id_rsa): [Нажмите enter]
В командной строке введите безопасную фразу-пароль. Вы можете оставить пустым и нажать Enter, если вам не нужна фраза-пароль.
Введите файл для сохранения ключа (/Users/[you]/.ssh/id_rsa): [Нажмите enter]
Для подключения к Vagrant VM введите следующую команду
ssh vagrant @ localhost -p 2222
Когда вы получите следующее сообщение, введите «да» и нажмите ввод.
Теперь, чтобы установить тип соединения SSH: $ vagrant ssh
Скопируйте открытый ключ хоста в файл author_keys в Vagrant VM. Для этого перейдите в папку «Users / [you] /. Ssh» и скопируйте содержимое файла id_rsa.pub на хост-компьютере и вставьте его в файл «~ / .ssh / authorized_keys» в Vagrant VM.
источник
Я запустил машину, затем:
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
Машина загружается с этого момента
источник
Между всеми ответами здесь есть много хороших вещей, чтобы попробовать. Для полноты, если вы
ssh vagrant@localhost -p 2222
как предлагает @Bizmate, и это не удается, убедитесь, что у вас есть
AllowUsers vagrant
в
/etc/ssh/sshd_config
вашей гостевой / бродячей машине.источник
Я использую Vagrant с установкой Puphpet с мая 2015 года, и у меня возникла эта проблема. Похоже, что сгенерированная конфигурация не обрабатывает поведение Vagrant 1.7.4 (или, может быть, немного раньше?) По регенерации ключей ssh, если он обнаруживает небезопасный ключ.
Я решил эту проблему, добавив следующее в мой сгенерированный Puphpet Vagrantfile (локальная настройка) внутри предложения «if File.file? (CustomKey)»:
Ссылочный коммит
источник
Это все правильные шаги, которые я выполнил для устранения этой проблемы, возникшей при запуске команды vagrant up.
Вот шаги, которые я следовал
************************ ЭТО РАБОТАЕТ ШТРАФ ДЛЯ МЕНЯ ***********
источник
Просто для тех людей, которые были такими же идиотами, как я, или с кем-то странным случалось с их бродячей машиной. Эта ошибка также может возникнуть при изменении разрешений домашнего каталога пользователя-бродяги (намеренно или случайно).
Вместо этого вы можете войти (как описано в других публикациях), используя пароль («vagrant»), а затем выполнить следующую команду, чтобы исправить разрешения.
sudo chown -R vagrant:vagrant /home/vagrant
Тогда вы сможете снова войти в систему без ввода пароля.
TL; DR: права доступа к вашей бродячей домашней папке неверны.
источник
Просто:
Изменить (не так просто, как кажется):
Проблема заключалась в том, что новые версии использования усадьбы
php7.0
и некоторые другие вещи. Чтобы избежать этого испортите убедитесь , что вы установитеverison
вHomestead.yml
:источник
Я решил эту проблему, выполнив команды на Windows 7 CMD, как указано в этой ссылке здесь последний пост в этой теме,
https://github.com/mitchellh/vagrant/issues/6744
источник
Последние несколько дней я бился головой об этом на переупакованной базовой коробке. (Mac OS X, El Capitan)
Следуя процедуре @Radek, я сделал vagrant ssh-config на коробке с исходным кодом и получил:
На новом экземпляре эта команда дала мне:
Итак, я просто добавил эту строку в новой копии:
Не идеально, но я могу жить дальше.
источник
Еще одно простое решение - в Windows перейдите в файл Homestead / Vagrantfile и добавьте эти строки для соединения с именем пользователя / паролем вместо закрытого ключа:
Итак, наконец часть файла будет выглядеть так:
Надеюсь, что это поможет ..
источник
Я попробовал это на моей машине VM
поменял права / home / vagrant (сделал на нем chmod 700)
Теперь я могу SSH прямо в мои коробки
источник