Jestem obecnie patrząc na utworzenie Vagrant środowiska na moim komputerze Mac, dzięki czemu mogę uruchomić vagrant up
i będzie następnie zainstalować rbenv
i ruby
i wszystko muszę. Następnie mam skrypt Bash, który pobierze wszystkie moje repo z github.
Jedyną rzeczą jest to, że mój nowy włóczęga vm musi teraz wygenerować klucz ssh, a następnie połączyć go z moim kontem Github. Może to być kłopotliwe. Zwłaszcza, że chciałbym udostępnić mój plik Vagrant wszystkim, którzy mają dostęp do naszych repozytoriów, aby mogli zrobić to samo.
Pomyślałem więc, że mogę spróbować przekierować mój host ssh na maszynę wirtualną, aby maszyna wirtualna mogła przekazać mojego hosta ssh do Github. Po tym artykule: Githubs solucja , ustawiłem ssh config moich hostów:
Host localhost
ForwardAgent yes
i ustawić w moim zbłąkanym pliku
Vagrant.configure("2") do |config|
config.ssh.forward_agent = true
...
end
a kiedy loguję się do mojej maszyny wirtualnej i uruchamiam następujące polecenie, pojawia się ten błąd:
$ ssh -T [email protected]`
Permission denied (publickey)
Czy jest ktoś, kto próbował podobnej konfiguracji? VM to precyzyjna skrzynka64.
EDYTOWAĆ:
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
źródło
env
po wejściu na maszynę wirtualną?SSH_AUTH_SOCK=/tmp/ssh-aDGJQD2812/agent.2812
. Wygląda na to, że działa. Czy na pewno nie masz agenta SSH powodującego konflikt na innym komputerze, a klucz jest poprawny?ssh -T [email protected]
działa issh-add -L
pokazuje klucz, a ja mam tylko jeden z nich.Odpowiedzi:
Po kilku wyczerpujących godzinach zrobiłem postęp
config.ssh.private_key_path
jest twoim lokalnym kluczem prywatnym Twój klucz prywatny musi być dostępny dla lokalnego agenta ssh. Możesz to sprawdzićssh-add -L
, jeśli nie ma go na liście, dodajssh-add ~/.ssh/id_rsa
. Nie zapomnij dodać swojego klucza publicznego do~/.ssh/authorized_keys
Vagrant VM.Następnie
vagrant destroy
przebuduj go, używając nowej konfiguracji Vagrant. to powinno działać przetestować hosta i włóczęgę za pomocąwłóczęga powinien wrócić po raz pierwszy
Jeśli nie dodałeś klucza publicznego do
~/.ssh/authorized_keys
Vagrant VM.Tam po tym należy przeczytać jako
Dziękuję wszystkim, co mi pomogło. to przez ciebie zacząłem kopać dalej :)
źródło
vagrant destroy
. Właśnie straciłem tydzień pracy z tego powodu, myślałem, że to tylko zniszczy konfigurację.