Le problème avec l'authentification 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...
Je peux Ctrl+C
sortir de la boucle d'authentification, puis ssh avec succès manuellement.
J'ai effectué les étapes suivantes sur la boîte d'invité:
Activé
Remote Login
pourAll Users
.Créé le
~/.ssh
répertoire avec des0700
autorisations.Créé le
~/.ssh/authorized_keys
fichier avec les0600
autorisations.Collé cette clé publique dans
~/.ssh/authorized_keys
J'ai également essayé d'utiliser un réseau privé (hostonly) au lieu du réseau public (ponté), en utilisant cette ligne dans le Vagrantfile:
config.vm.network "private_network", ip: "172.16.177.7"
J'obtiens la même sortie (sauf Adapter 2: hostonly
) mais je ne peux pas ssh manuellement.
J'ai aussi essayé config.vm.network "private_network", ip: "10.0.0.100"
.
J'ai également essayé de mettre config.ssh.password
dans le Vagrantfile. Cela produit SSH auth method: password
mais ne s'authentifie toujours pas.
Et j'ai également essayé de reconstruire la boîte et de revérifier tout ce qui précède.
Il semble que d' autres aient réussi avec cette configuration , il doit donc y avoir quelque chose que je fais mal.
J'ai trouvé ce fil et activé l'interface graphique, mais cela n'aide pas.
la source
config.ssh.private_key_path = "~/.ssh/id_rsa"
dû supprimer cette ligne pour que l'approvisionnement fonctionneAucune de ces réponses n'a fonctionné pour moi. D'une manière ou d'une autre, la boîte avait la mauvaise clé publique ajoutée dans le fichier authorised_keys de l' utilisateur vagrant .
Si vous pouvez toujours ssh sur la boîte avec le mot de passe vagrant (le mot de passe est vagrant), c'est à dire
puis copiez le contenu de la clé publique de https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub dans le fichier authorised_keys avec la commande suivante
Une fois terminé, quittez la VM et essayez à nouveau vagrant ssh. Cela devrait fonctionner maintenant.
la source
vagrant reload
après la mise à jour du fichier allowed_keys. Vagrant détectera automatiquement la clé non sécurisée et la régénérera pour vous. Devrait fonctionner après.Si vous rencontrez ce problème sur vagrant 1.8.5, consultez ce fil sur github:
https://github.com/mitchellh/vagrant/issues/7610
Cela est essentiellement causé par un problème d'autorisation, la solution de contournement est simplement
puis
Pour info: ce problème n'affecte que CentOS, Ubuntu fonctionne très bien.
la source
Exécutez les commandes suivantes sur la machine invitée / VM:
Alors arrêtez-vous vagabond. Cela supprimera et régénérera vos clés privées.
(Ces étapes supposent que vous avez déjà créé ou que vous avez déjà les répertoires ~ / .ssh / et ~ / .ssh / allowed_keys dans votre dossier personnel.)
la source
D'après mon expérience, cela a été un problème étonnamment fréquent avec les nouvelles machines vagabondes. Le moyen de loin le plus simple de le résoudre, au lieu de modifier la configuration elle-même, a été de créer les clés ssh requises manuellement sur le client, puis d'utiliser la clé privée sur l'hôte.
vagrant ssh
utilisez le mot de passe par défautvagrant
.ssh-keygen -t rsa -b 4096 -C "vagrant"
( comme indiqué par le guide pertinent de GitHub ).mv .ssh/id_rsa.pub .ssh/authorized_keys
.sudo service ssh reload
.cat .ssh/id_rsa
, peignez et copiez (de meilleures façons doivent exister, allez en inventer une!).logout
.vagrant ssh-config
(cherchez par exemple ÌdentityFile "/[... </font>/private_key".nano /[...]/private_key
et collez-la à partir du presse-papiers, si tout le reste échoue. ( Notez , cependant, que si votre clé privée n'est pas spécifique au projet mais partagée par plusieurs machines vagabondes, vous feriez mieux de configurer vous-même le chemin afin de ne pas casser d'autres machines parfaitement fonctionnelles! Changer le chemin est aussi simple que d'ajouter une ligneconfig.ssh.private_key_path = "path/to/private_key"
dans le fichier Vagrant. ) De plus, si vous utilisez une machine générée par PuPHPet , vous pouvez stocker votre clé privée dans un fichierpuphpet/files/dot/ssh/id_rsa
et elle sera ajoutée automatiquement à la configuration ssh de Vagrantfile.vagrant ssh
devrait maintenant fonctionner.Si tel est le cas, félicitez-vous,
logout
courezvagrant provision
si nécessaire et poursuivez la tâche significative qui vous attend.Si vous rencontrez toujours des problèmes, il peut être utile d'ajouter un indicateur détaillé à la commande ssh pour faciliter le débogage. Vous pouvez passer cela (ou toute autre option, d'ailleurs) après un double tiret. Par exemple, taper
vagrant ssh -- -v
. N'hésitez pas à ajouter autant de v que nécessaire, chacun vous donnera plus d'informations.la source
ssh [email protected] -p 22 (password: vagrant)
connecter à VM car celavagrant ssh
ne fonctionnait pas pour moi.10.0.0.0
est l'adresse IP privée que j'ai définie dans monvagrantfile
.Cela peut également se produire si vous essayez de forcer votre VM à utiliser un utilisateur root par défaut pour SSH ...
Par exemple, une configuration comme celle-ci dans votre Vagrantfile peut provoquer cet échec:
Solution: commentez ces lignes et réessayez!
la source
Problème J'obtenais les erreurs d'authentification ssh, sur une boîte que j'ai approvisionnée. L'original fonctionnait bien.
Le problème pour moi était qu'il me manquait une clé privée
.vagrant/machines/default/virtualbox/private_key
. J'ai copié la clé privée du même emplacement relatif à partir de la boîte d'origine et de Viola!la source
.vagrant
fichiers dans git ... et en tant que tel, un rapidegit checkout
de ces fichiers sauve la journée!J'ai trouvé un moyen de contourner le désordre avec les touches sur Win 8.2 où je n'ai réussi avec aucune des méthodes mentionnées ici. Il peut être intéressant que la même combinaison de VirtualBox, Vagrant et la box fonctionne sur Win 7 Ultimate sans aucun problème.
Je suis passé à l'authentification par mot de passe en ajoutant les commandes suivantes dans Vagrantfile:
Notez que je ne suis pas sûr que ce soient les seuls changements nécessaires car je l'ai déjà fait:
J'ai généré une nouvelle paire de clés RSA et modifié le fichier authorized_keys en conséquence (le tout dans la machine virtuelle, voir les suggestions ci-dessus et ailleurs)
J'ai copié la clé privée dans le même répertoire où réside Vagrantfile et ajouté
Mais je pense que ces changements n'étaient pas pertinents. J'ai passé beaucoup de temps à essayer, donc je n'ai pas changé la configuration de travail pour des raisons évidentes :)
la source
Impossible de courir vagabond parce qu'il reste coincé et expire?
J'ai récemment eu un "incident d'eau dans un ordinateur portable" et j'ai dû migrer vers un nouveau (sur un MAC d'ailleurs).
J'ai réussi à mettre en place tous mes projets à côté de celui qui utilisait vagrant.
Il n'a pas pu s'authentifier, a réessayé encore et encore et a finalement abandonné.
** Voici comment je l'ai remis en forme en 3 étapes: **
1 - Trouvez le IdentityFile utilisé par vagrant: $
vagrant ssh-config
2 - Vérifiez la clé publique dans IdentityFile: $
ssh-keygen -y -f /Users/<user-name>/.vagrant.d/insecure_private_key
Remplacez'<user-name>'
par votre utilisateur. Cela ressemblera à quelque chose comme ceci:3 - Connectez-vous à la machine vagabonde avec le mot de passe "vagrant": $
ssh -p 2222 -o UserKnownHostsFile=/dev/null [email protected]
4 - Ajoutez la clé publique au fichier allowed_keys. $
echo "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAA...9gE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ==" > /home/vagrant/.ssh/authorized_keys ssh-rsa
5 - Sortez (crtl + d) et arrêtez le contenant vagabond et remontez-le. $
vagrant halt
$vagrant up
J'espère que vous aurez les bras en l'air maintenant ...
J'ai obtenu ceci, avec juste une modification mineure, de l' article de Ned Batchelders - Ned vous êtes un champion !!
la source
pour moi, cela a été résolu en changeant les permissions sur le dossier .ssh dans vagrant home directort (par exemple "~ vagrant / .ssh"). Je pense que j'ai gâché les autorisations lors de la configuration des clés ssh pour mon application.
Il semble que le fichier 'authorized_keys' ne doit être 'rw' que pour l'utilisateur 'vagrant' donc "chmod 600 allowed_keys"; il en va de même pour le répertoire lui-même et son parent:
alors:
Ce n'est qu'après avoir restauré toutes ces autorisations que vagrant ssh a recommencé à fonctionner.
Je pense que c'est quelque chose à voir avec la sécurité ssh. Il refuse de reconnaître les certificats s'ils sont accessibles de quelque manière que ce soit au-delà de l'utilisateur actuel, les tentatives de connexion des vagabonds sont donc rejetées.
la source
/vagrant/...
Si vous utilisez la configuration SSH par défaut dans votre VagrantFile et que vous avez commencé à voir des erreurs d'authentification SSH après avoir réassocié votre boîte VM en raison d'un plantage, essayez de remplacer la clé publique dans votre machine vagabonde.
Vagrant remplace la clé publique associée à une paire de clés privées non sécurisées à chaque déconnexion pour des raisons de sécurité. Si vous n'avez pas correctement arrêté votre machine, la paire de clés publique / privée peut se désynchroniser, provoquant une erreur d'authentification SSH.
Pour résoudre ce problème, chargez simplement la clé privée non sécurisée actuelle, puis copiez la paire de clés publiques dans le fichier allowed_keys de votre machine virtuelle.
la source
C'est peut-être la dernière réponse de la liste mais cela a fonctionné pour moi et je n'ai trouvé cette réponse nulle part, je l'ai trouvée moi-même après 2 jours de recherches, donc vous feriez mieux d'essayer cela si rien d'autre n'a fonctionné pour vous jusqu'à présent.
Dans mon cas, le problème venait de ma VirtualBox. Je ne sais pas pour quelle raison une option a été désactivée et elle aurait dû être activée.
Comme vous pouvez le voir sur l'image, il y avait des problèmes de réseau avec ma VirtualBox et ce que je devais faire pour résoudre ce problème était de sélectionner ma machine, appuyez sur les paramètres, l'onglet réseau et ensuite assurez-vous que l'option Câble connecté a été choisi. Dans mon cas, cette option n'a pas été sélectionnée et j'ai échoué à cette étape:
J'ai d'abord pensé que le port était déjà utilisé, après cela j'ai réinstallé Vagrant et j'ai également essayé d'autres choses mais aucune d'elles n'a fonctionné pour moi.
la source
Cela m'est arrivé plusieurs fois et la façon dont je l'ai résolu était:
Vérifiez et assurez-vous que votre Vagrantfile a le bon chemin de clé privée:
config.ssh.private_key_path = "/home/razvan/.ssh/id_rsa"
Exécuter la commande> vagrant ssh dans un terminal Linux
Sur votre machine vagabonde, allez à
cd /home/vagrant/.ssh
et vérifiez si la clé ssh dans le fichier authorized_keys est la même que celle que vous avez sur votre machine locale dans ~ / .ssh / id_rsa.pub. Sinon, remplacez celui de vos clés_autorisées vagrant par celui de votre machine locale qui se trouve dans ~ / .ssh / id_rsa.pub.
Recharger Vagrant:
recharge vagabond
J'espère que ceci aide quelqu'un d'autre. À votre santé!
la source
authorized_keys
fichier avec la permission 600 à l'intérieur.1. Localisez la clé privée dans l'hôte:
Production:
2. Stockez le chemin de la clé privée et le numéro de port dans des variables:
Utilisez ces deux commandes avec la sortie ci-dessus:
3. Générez une clé publique et téléchargez-la sur la machine invitée:
Copie / pâtes, aucune modification nécessaire:
la source
config.ssh.username = "vagrant"; config.ssh.password = "vagrant"; config.ssh.insert_key = true
Mais cette fois, la configuration ci-dessus n'a rien fait. Je ne sais pas vraiment pourquoi, j'ai essayé de déboguer pourquoi la clé n'est pas insérée sans chance. Alors je me suis rabattu sur votre solution et voilà! Ça marche!Solution Mac:
Ajout de la clé ssh id_rsa locale à la clé privée vagrant
vi /Users//.vagrant/machines/default/virtualbox/private_key
/Users//.ssh/id_rsa
copie de la clé publique /Users//.ssh/id_rsa.pub sur vagrant box authorised_keys
ssh vagrant@localhost -p 2222
(mot de passe: vagrant)ls -la
cd .ssh
chmod 0600 ~/.ssh/authorized_keys
vagrant reload
Problème résolu.
Grâce à
la source
ne pouvait pas non plus aller au-delà:
par défaut: méthode d'authentification SSH: clé privée
Lorsque j'ai utilisé l'interface graphique de VirtualBox, cela m'a dit qu'il y avait une incompatibilité de processeur du système d'exploitation.
Pour que vagrant progresse plus loin, dans les paramètres du BIOS, j'ai dû contre-intuitivement:
Désactiver: virtualisation
Activer: VT-X
Essayez de basculer ces paramètres dans votre BIOS.
la source
Tout d'abord, vous devez supprimer le fichier insecure_private_key généré automatiquement, puis régénérer ce fichier en tapant
puis
Ça devrait marcher
la source
J'ai résolu le problème de la manière suivante. 1. Créez une nouvelle clé SSH à l'aide de Git Bash
Lorsque vous êtes invité à «Entrer un fichier dans lequel enregistrer la clé», appuyez sur Entrée. Cela accepte l'emplacement du fichier par défaut.
Entrez un fichier dans lequel enregistrer la clé (/Users/[vous </font>/.ssh/id_rsa): [Appuyez sur Entrée]
À l'invite, saisissez une phrase secrète sécurisée. Vous pouvez laisser vide et appuyer sur Entrée si vous n'avez pas besoin de mot de passe.
Entrez un fichier dans lequel enregistrer la clé (/Users/[vous </font>/.ssh/id_rsa): [Appuyez sur Entrée]
Pour vous connecter à votre machine virtuelle Vagrant, tapez la commande suivante
ssh vagrant @ localhost -p 2222
Lorsque vous obtenez le message suivant, tapez «oui» et appuyez sur Entrée.
Maintenant, pour établir un type de connexion SSH: $ vagrant ssh
Copiez la clé publique de l'hôte dans le fichier allowed_keys de Vagrant VM. Pour cela, allez dans le dossier «Users / [you] /. Ssh» et copiez le contenu du fichier id_rsa.pub sur la machine hôte et collez-le dans le fichier «~ / .ssh / allowed_keys» de la VM Vagrant.
la source
J'ai démarré la machine, puis:
vagrant ssh-config
J'ai obtenu ce qui suit:
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
Puis j'ai couru
cat ~/.ssh/id_rsa > /Users/my-user-name/Documents/PHP-Projects/my-php-project/puphpet/files/dot/ssh/id_rsa
Machine démarrée à partir d'ici
la source
Entre toutes les réponses ici, il y a beaucoup de bonnes choses à essayer. Par souci d'exhaustivité, si vous
ssh vagrant@localhost -p 2222
comme @Bizmate le suggère, et cela échoue, assurez-vous d'avoir
AllowUsers vagrant
dans la
/etc/ssh/sshd_config
machine de votre invité / vagabond.la source
J'utilise Vagrant avec une configuration Puphpet à partir de mai 2015 et j'ai eu ce problème. Il semble que la configuration qui a été générée ne gère pas le comportement de Vagrant 1.7.4 (ou peut-être un peu plus tôt?) De régénération des clés ssh s'il détecte une clé non sécurisée.
Je l'ai résolu en ajoutant ce qui suit dans mon Vagrantfile généré par Puphpet (configuration locale) à l'intérieur de la clause "if File.file? (CustomKey)":
Référence commit
la source
Ce sont toutes les étapes correctes que j'ai suivies pour résoudre ce problème ci-dessous lors de l'exécution de la commande vagrant up.
Ce sont les étapes que j'ai suivies
************************ CECI EST UN TRAVAIL BIEN POUR MOI ******************** ***********
la source
Juste pour ces gens qui ont été des idiots comme moi, ou qui ont eu quelque chose d'étrange dans leur machine à vagabonder. Cette erreur peut également se produire lorsque vous avez modifié les autorisations du répertoire personnel de l'utilisateur vagabond (délibérément ou par accident).
Vous pouvez vous connecter à la place (comme décrit dans d'autres articles) en utilisant le mot de passe ('vagrant'), puis exécuter la commande suivante pour corriger les autorisations.
sudo chown -R vagrant:vagrant /home/vagrant
Ensuite, vous devriez pouvoir vous reconnecter sans entrer le mot de passe.
TL; DR: Les autorisations sur votre dossier d'accueil vagrant sont incorrectes.
la source
Facile:
Modifier (pas aussi simple que prévu):
Le problème était que les nouvelles versions de la ferme utilisaient
php7.0
et d'autres choses. Pour éviter ce gâchis, assurez-vous de définir leverison
dansHomestead.yml
:la source
J'ai résolu ce problème en exécutant des commandes sur Windows 7 CMD comme indiqué ici voici le lien dernier post sur ce fil,
https://github.com/mitchellh/vagrant/issues/6744
la source
Cela me bat la tête depuis quelques jours sur une boîte de base reconditionnée. (Mac OS X, El Capitan)
En suivant la procédure de @Radek, j'ai fait 'vagrant ssh-config' sur la boîte source et j'ai obtenu:
Sur la nouvelle copie, cette commande m'a donné:
Donc, je viens d'ajouter cette ligne dans la nouvelle copie:
Pas parfait, mais je peux continuer ma vie.
la source
Autre solution simple, sous windows, allez dans le fichier Homestead / Vagrantfile et ajoutez ces lignes pour vous connecter avec un nom d'utilisateur / mot de passe au lieu d'une clé privée:
Donc, finalement, une partie du fichier ressemblera à ceci:
J'espère que cette aide ..
la source
J'ai essayé ceci sur ma machine VM
changer les permissions / home / vagrant (fait un chmod 700 dessus)
maintenant je peux ssh directement dans mes boîtes
la source