Actualmente estoy mirando a la creación de un vagabundo medio ambiente en mi máquina Mac, de modo que pueda funcionar vagrant up
y que va a continuación, instalar rbenv
y ruby
ya todos necesidad I. Luego tengo un script Bash que buscará todos mis repositorios de github.
Lo único es que mi nuevo vm vagabundo ahora debe generar una clave ssh y luego vincularla a mi cuenta de Github. Esto puede ser engorroso. Especialmente porque me gustaría compartir mi archivo Vagrant con todos aquellos que tienen acceso a nuestros repositorios para que puedan hacer lo mismo.
Así que pensé que podría intentar reenviar mis hosts ssh a la VM para que la VM pueda reenviar mi host ssh a Github. Siguiendo este artículo: Tutorial de Githubs , configuro la configuración ssh de mi host:
Host localhost
ForwardAgent yes
y establecer en mi archivo vagabundo
Vagrant.configure("2") do |config|
config.ssh.forward_agent = true
...
end
y cuando inicio sesión en mi VM y ejecuto el siguiente comando me sale este error:
$ ssh -T [email protected]`
Permission denied (publickey)
¿Hay alguien que haya probado una configuración similar? La VM es una caja precisa64.
EDITAR:
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
fuente
env
una vez que ha ingresado a la máquina virtual?SSH_AUTH_SOCK=/tmp/ssh-aDGJQD2812/agent.2812
. Parece estar funcionando. ¿Está seguro de que no tiene un agente SSH en conflicto en la otra máquina y que la clave es correcta?ssh -T [email protected]
funciona yssh-add -L
muestra la clave y solo tengo uno de ellos. cosas de ataque cerebralRespuestas:
Después de unas horas agotadoras, avancé
config.ssh.private_key_path
es su clave privada local Su clave privada debe estar disponible para el agente ssh local. Puede consultar conssh-add -L
, si no está en la lista, agréguelo conssh-add ~/.ssh/id_rsa
. No olvide agregar su clave pública~/.ssh/authorized_keys
en la máquina virtual Vagrant.Luego
vagrant destroy
y reconstruirlo usando la nueva configuración vagabunda. entonces debería funcionar probar tanto el host como el vagabundo usandovagabundo debe volver la primera vez
Si no agregó su clave pública
~/.ssh/authorized_keys
en la VM Vagrant.Después de eso debería leer como
Gracias a todos por ayudarme. fue por ti que fui a cavar más :)
fuente
vagrant destroy
. Acabo de perder una semana de trabajo debido a esto, pensé que solo destruiría la configuración.