Je cherche actuellement à mettre en place un Vagrant environnement sur ma machine Mac, afin que je puisse courir vagrant up
et il installera ensuite rbenv
et ruby
et tout besoin I. Ensuite, j'ai un script Bash qui récupérera tous mes dépôts depuis github.
La seule chose est que mon nouveau vm vagabond doit maintenant générer une clé ssh puis la lier à mon compte Github. Cela peut être lourd. D'autant plus que je voudrais partager mon fichier Vagrant avec tous ceux qui ont accès à nos repos afin qu'ils puissent faire de même.
J'ai donc pensé que je pouvais essayer de transférer mes hôtes ssh vers la machine virtuelle afin que la machine virtuelle puisse transférer mes hôtes ssh vers Github. Suite à cet article: Procédure pas à pas avec Githubs , j'ai défini la configuration ssh de mes hôtes:
Host localhost
ForwardAgent yes
et mis dans mon dossier vagabond
Vagrant.configure("2") do |config|
config.ssh.forward_agent = true
...
end
et lorsque je me connecte à ma machine virtuelle et exécute la commande suivante, j'obtiens cette erreur:
$ ssh -T [email protected]`
Permission denied (publickey)
Y a-t-il quelqu'un qui a essayé une configuration similaire? La VM est une box précise64.
ÉDITER:
env
:
vagrant@precise64:~$ env
TERM=xterm-256color
SHELL=/bin/bash
SSH_CLIENT=10.0.2.2 53068 22
SSH_TTY=/dev/pts/0
LC_ALL=en_US
USER=vagrant
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:
RBENV_ROOT=/opt/rbenv
SSH_AUTH_SOCK=/tmp/ssh-aDGJQD2812/agent.2812
MAIL=/var/mail/vagrant
PATH=/opt/rbenv/shims:/opt/rbenv/bin:/opt/rbenv/bin/rbenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/vagrant_ruby/bin
PWD=/home/vagrant
SHLVL=1
HOME=/home/vagrant
LOGNAME=vagrant
SSH_CONNECTION=10.0.2.2 53068 10.0.2.15 22
LC_CTYPE=UTF-8
LESSOPEN=| /usr/bin/lesspipe %s
LESSCLOSE=/usr/bin/lesspipe %s %s
_=/usr/bin/env
la source
env
une fois que vous êtes entré dans la machine virtuelle?SSH_AUTH_SOCK=/tmp/ssh-aDGJQD2812/agent.2812
. Cela semble fonctionner. Êtes-vous sûr de ne pas avoir d'agent SSH en conflit sur l'autre ordinateur et la clé est correcte?ssh -T [email protected]
fonctionne etssh-add -L
montre la clé et je n'en ai qu'un. brain bashing stuffRéponses:
Après quelques heures exténuantes, j'ai fait des progrès
config.ssh.private_key_path
est votre clé privée locale Votre clé privée doit être disponible pour l'agent ssh local. Vous pouvez vérifier avecssh-add -L
, s'il n'est pas répertorié, ajoutez-le avecssh-add ~/.ssh/id_rsa
. N'oubliez pas d'ajouter votre clé publique~/.ssh/authorized_keys
sur la VM Vagrant.Ensuite
vagrant destroy
, reconstruisez-le en utilisant la nouvelle configuration vagabonde. alors il devrait fonctionner tester à la fois l'hôte et le vagabond en utilisantvagabond devrait revenir la première fois
Si vous n'avez pas ajouté votre clé publique
~/.ssh/authorized_keys
sur la machine virtuelle Vagrant.Là après, il devrait se lire comme
Merci à tous ceux qui m'ont aidé. c'est à cause de toi que je suis allé creuser plus loin :)
la source
vagrant destroy
. Je viens de perdre une semaine de travail à cause de cela, je pensais que cela ne ferait que détruire la configuration.