config.ssh.private_key_path
deve apontar para seu arquivo de chave privada (geralmente ~/.ssh/id_rsa
- o nome do arquivo é exibido quando você executa ssh-keygen
), não ~/.ssh/authorized_keys
.
Eu tenho um novo usuário na minha caixa vagrant (trusty64) e estou tentando ssh nele. Em vez de fazer login no vagrant
user após vagrant up
, quero fazer login no meu nome de usuário.
O que eu fiz até agora
ssh-keygen
ssh-copy-id -p 2222 -i [email protected]
e a parte do Vagrantfile se parece com isso
config.vm.box = "ubuntu/trusty64"
config.ssh.username = "shash"
config.ssh.forward_agent = true
config.ssh.private_key_path = "~/.ssh/authorized_keys"
Eu posso usar ssh -p '2222' '[email protected]'
para fazer login diretamente, mas quando dou vagrant up
, continuo recebendo o seguinte erro
default: Warning: Connection timeout. Retrying...
default: Warning: Authentication failure. Retrying...
default: Warning: Authentication failure. Retrying...
Qualquer ajuda para resolver isso é muito apreciada.Graças!
config.ssh.private_key_path
deve apontar para seu arquivo de chave privada (geralmente ~/.ssh/id_rsa
- o nome do arquivo é exibido quando você executa ssh-keygen
), não ~/.ssh/authorized_keys
.
Uma maneira alternativa de conseguir isso é adicionar o seguinte à parte inferior de ~vagrant/.bashrc
:
ssh chsc
exit
Se você quiser evitar o problema de criar e instalar uma chave SSH, use su
; no entanto, isso não permite que ssh
dentro da caixa Vagrant use seu agente de encaminhamento SSH se você precisar se conectar a servidores externos dentro da caixa:
sudo su chsc
exit
Ao fazer essas alterações em ~vagrant/.bashrc
, você corre o risco de se bloquear do shell se cometer algum erro. Eu recomendo manter um terminal aberto logado como vagrant
, até que você tenha certeza que tudo funciona. Se algo der errado, basta renomear .bashrc ( mv .bashrc .bashrc-bak
).