O problema com a autenticação 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...
Eu posso Ctrl+C
sair do loop de autenticação e, em seguida, ssh com êxito manualmente.
Eu executei as seguintes etapas na caixa de convidados:
Ativado
Remote Login
paraAll Users
.Criou o
~/.ssh
diretório com0700
permissões.Criou o
~/.ssh/authorized_keys
arquivo com0600
permissões.Colou essa chave pública em
~/.ssh/authorized_keys
Também tentei usar uma rede privada (somente host) em vez da rede pública (em ponte), usando esta linha no arquivo Vagrant:
config.vm.network "private_network", ip: "172.16.177.7"
Recebo a mesma saída (exceto Adapter 2: hostonly
), mas não consigo ssh manualmente.
Eu também tentei config.vm.network "private_network", ip: "10.0.0.100"
.
Eu também tentei definir config.ssh.password
no arquivo Vagrant. Isso gera saída, SSH auth method: password
mas ainda não se autentica.
E também tentei reconstruir a caixa e verificar novamente tudo o que foi dito acima.
Parece que outros tiveram sucesso com essa configuração , então deve haver algo que estou fazendo de errado.
Eu encontrei esta discussão e possibilitou a GUI, mas isso não ajuda.
fonte
config.ssh.private_key_path = "~/.ssh/id_rsa"
teve que remover esta linha para fazer o provisionamento de trabalhoNenhuma das opções acima funcionou para mim. De alguma forma, a caixa teve a chave pública incorreta adicionada no arquivo vagabundo authorised_keys .
Se você ainda pode ssh na caixa com a senha vagrant (a senha é vagrant), ou seja,
copie o conteúdo da chave pública de https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub no arquivo authorised_keys com o seguinte comando
Quando terminar, saia da VM e tente novamente o vagrant ssh. Deve funcionar agora.
fonte
vagrant reload
após atualizar o arquivo allowed_keys. O Vagrant detectará automaticamente a chave não segura e a gerará novamente para você. Deve funcionar depois.Se você tiver esse problema no vagrant 1.8.5, verifique este tópico no github:
https://github.com/mitchellh/vagrant/issues/7610
É causada basicamente por um problema de permissão, a solução alternativa é apenas
então
FYI: esse problema afeta apenas o CentOS, o Ubuntu funciona bem.
fonte
Execute os seguintes comandos na máquina convidada / VM:
Então pare vagrant. Isso removerá e regenerará suas chaves privadas.
(Essas etapas pressupõem que você já criou ou já possui os diretórios ~ / .ssh / e ~ / .ssh / allowed_keys na sua pasta pessoal.)
fonte
Na minha experiência, esse tem sido um problema surpreendentemente frequente com novas máquinas vagantes. De longe, a maneira mais fácil de resolvê-lo, em vez de alterar a própria configuração, foi criar manualmente as chaves ssh necessárias no cliente e depois usar a chave privada no host.
vagrant ssh
use a senha padrãovagrant
.ssh-keygen -t rsa -b 4096 -C "vagrant"
( como recomendado pelo guia relevante do GitHub ).mv .ssh/id_rsa.pub .ssh/authorized_keys
.sudo service ssh reload
.cat .ssh/id_rsa
, pinte e copie (devem existir melhores maneiras, invente uma!).logout
.vagrant ssh-config
(procure, por exemplo, entdentityFile "/[....la/private_key".nano /[...]/private_key
e cole na área de transferência, se tudo mais falhar. ( Observe , no entanto, que, se sua chave_privada não for específica do projeto, mas compartilhada por várias máquinas vagrantes, é melhor configurar você mesmo o caminho para não quebrar outras máquinas que funcionem perfeitamente! Alterar o caminho é tão simples quanto adicionar uma linhaconfig.ssh.private_key_path = "path/to/private_key"
no arquivo Vagrant. ) Além disso, se você estiver usando uma máquina gerada pelo PuPHPet , poderá armazenar sua chave privada em um arquivopuphpet/files/dot/ssh/id_rsa
e ela será adicionada à configuração ssh do Vagrantfile automaticamente.vagrant ssh
agora deve funcionar.Nesse caso, parabenize-se,
logout
corra,vagrant provision
se necessário, e continue com a tarefa significativa em mãos.Se você ainda enfrentar problemas, pode ser útil adicionar sinalizador detalhado ao comando ssh para facilitar a depuração. Você pode passar isso (ou qualquer outra opção, nesse caso) após duplo traço. Por exemplo, digitando
vagrant ssh -- -v
. Sinta-se à vontade para adicionar quantos Vs precisar, cada um com mais informações.fonte
ssh [email protected] -p 22 (password: vagrant)
login na VM, poisvagrant ssh
não estava funcionando para mim.10.0.0.0
é o endereço IP privado que defini no meuvagrantfile
.Isso também pode acontecer se você estiver tentando forçar sua VM a usar um usuário root por padrão para SSH ....
Por exemplo, uma configuração como essa no seu arquivo Vagrant pode causar esta falha:
Solução: comente essas linhas e tente novamente!
fonte
Problema: estava recebendo os erros de autenticação ssh, em uma caixa que provisionei. O original estava funcionando bem.
O problema para mim era a falta de uma chave privada
.vagrant/machines/default/virtualbox/private_key
. Copiei a chave privada do mesmo local relativo da caixa original e do Viola!fonte
.vagrant
arquivos no git ... e, como tal, um rápidogit checkout
arquivo mencionado salva o dia!Eu encontrei uma maneira de contornar as bagunças com as chaves no Win 8.2, onde não obtive sucesso com nenhum dos métodos mencionados aqui. Pode ser interessante que exatamente a mesma combinação de VirtualBox, Vagrant e a caixa funcionem no Win 7 Ultimate sem problemas.
Mudei para a autenticação de senha adicionando os seguintes comandos no Vagrantfile:
Observe que não tenho certeza de que essas são as únicas alterações necessárias porque já fiz:
Gerei um novo par de chaves RSA e alterei o arquivo allowed_keys de acordo (tudo na máquina virtual, veja as sugestões acima e em outros lugares)
Copiei a chave privada para o mesmo diretório em que o Vagrantfile reside e adicionei
Mas acredito que essas mudanças foram irrelevantes. Passei bastante tempo tentando, então não alterei a configuração de trabalho por razões óbvias :)
fonte
Incapaz de ficar vagabundo porque fica preso e atinge o tempo limite?
Recentemente, tive um "incidente com a água no laptop" e tive que migrar para um novo (a propósito, em um MAC).
Eu consegui todos os meus projetos em execução ao lado do que estava usando vagrant.
Não foi possível autenticar, repetiu várias vezes e acabou desistindo.
** Foi assim que recuperei a forma em 3 etapas: **
1 - Encontre o IdentityFile usado pelo vagrant: $
vagrant ssh-config
2 - Verifique a chave pública no IdentityFile: $
ssh-keygen -y -f /Users/<user-name>/.vagrant.d/insecure_private_key
Replace'<user-name>'
with your user. Será algo parecido com isto:3 - Entre na máquina vagrant com a senha "vagrant": $
ssh -p 2222 -o UserKnownHostsFile=/dev/null [email protected]
4 - Adicione a chave pública ao arquivo allowed_keys. $
echo "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAA...9gE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ==" > /home/vagrant/.ssh/authorized_keys ssh-rsa
5 - Saia (crtl + d), pare o recipiente vagrant e traga-o de volta. $
vagrant halt
$vagrant up
Espero que você tenha seus braços no ar agora ...
Consegui isso, com apenas uma pequena alteração, do artigo de Ned Batchelders - Ned, você é um campeão!
fonte
para mim, isso foi resolvido alterando as permissões na pasta .ssh no directort home vagrant (ou seja, "~ vagrant / .ssh"). Acho que atrapalhei as permissões ao configurar as chaves ssh para o meu aplicativo.
Parece que o arquivo 'allowed_keys' deve ser 'rw' apenas para o usuário 'vagrant', portanto "chmod 600 allowed_keys"; o mesmo vale para o próprio diretório e seu pai:
tão:
Foi só depois que todas essas permissões foram restauradas que o vagabundo ssh começou a funcionar novamente.
Eu acho que tem algo a ver com segurança ssh. Ele se recusa a reconhecer certificados se eles são acessíveis de alguma maneira além do usuário atual, de modo que tentativas vagantes de logon são, assim, rejeitadas.
fonte
/vagrant/...
Se você estiver usando a configuração SSH padrão no seu VagrantFile e começar a ver erros de autenticação SSH após associar novamente a sua caixa de VM devido a uma falha, tente substituir a chave pública na sua máquina vagrant.
O Vagrant substitui a chave pública associada ao par de chaves privadas inseguras a cada logout devido a razões de segurança. Se você não desligou corretamente sua máquina, o par de chaves pública / privada pode ficar fora de sincronia, causando erro de autenticação SSH.
Para resolver esse problema, simplesmente carregue a chave privada insegura atual e copie o par de chaves públicas no arquivo allowed_keys da sua VM.
fonte
Esta pode ser a última resposta da lista, mas funcionou para mim e eu não encontrei essa resposta em nenhum lugar, encontrei-me após 2 dias de pesquisas, então é melhor tentar se nada mais funcionou até agora.
No meu caso, o problema veio do meu VirtualBox. Não sei por que motivo uma opção foi desabilitada e deveria ter sido habilitada.
Como você pode ver na imagem, houve alguns problemas de rede com o meu VirtualBox e o que eu tive que fazer para resolver esse problema foi selecionar minha máquina, pressionar configurações, guia rede e depois confirmar se a opção Cabo conectado Foi selecionado. No meu caso, esta opção não foi selecionada e eu falhei nesta etapa:
Primeiro, pensei que a porta já estivesse em uso, depois reinstalei o Vagrant e tentei outras coisas, mas nenhuma delas funcionou para mim.
fonte
Isso já aconteceu comigo várias vezes e da maneira que resolvi:
Verifique e verifique se o seu Vagrantfile possui o caminho correto da chave privada:
config.ssh.private_key_path = "/home/razvan/.ssh/id_rsa"
Executar> comando vagrant ssh em um terminal linux
Na sua máquina vagrant, vá para
cd /home/vagrant/.ssh
e verifique se a chave ssh no arquivo allowed_keys é a mesma que você possui em sua máquina local em ~ / .ssh / id_rsa.pub. Caso contrário, substitua o da sua vag_ant autorizado_keys pela da sua máquina local, encontrada em ~ / .ssh / id_rsa.pub.
Recarregar Vagrant:
recarga de vagabundo
Espero que isso ajude outra pessoa. Felicidades!
fonte
authorized_keys
arquivo com permissão 600 dentro.1. Localize a chave privada no host:
Resultado:
2. Armazene o caminho da chave privada e o número da porta nas variáveis:
Use estes dois comandos com a saída de cima:
3. Gere uma chave pública e faça o upload para a máquina convidada:
Cópia / massa, não são necessárias alterações:
fonte
config.ssh.username = "vagrant"; config.ssh.password = "vagrant"; config.ssh.insert_key = true
Mas desta vez a configuração acima não fez nada. Eu realmente não sei por que, tentei depurar por que a chave não é inserida sem sorte. Então, eu recusei a sua solução e pronto! Funciona!Solução para Mac:
Adicionada chave ssh id_rsa local à chave privada vagrant
vi /Usuários//.vagrant/machines/default/virtualbox/private_key
/Usuários//.ssh/id_rsa
chave pública copiada /Usuários//.ssh/id_rsa.pub na caixa vagrant
ssh vagrant@localhost -p 2222
(senha: vagrant)ls -la
cd .ssh
chmod 0600 ~/.ssh/authorized_keys
vagrant reload
Problema resolvido.
Graças a
fonte
também não poderia ir além:
padrão: método de autenticação SSH: chave privada
Quando usei a GUI do VirtualBox, ele me disse que havia uma incompatibilidade no processador do SO.
Para ficar mais vagaroso, progredindo nas configurações do BIOS, contra-intuitivamente:
Desativar: virtualização
Ativar: VT-X
Tente alternar essas configurações no BIOS.
fonte
Antes de tudo, você deve remover o arquivo insecure_private_key gerado automaticamente, e depois gerar novamente esse arquivo digitando
então
Deveria funcionar
fonte
Resolvi o problema da seguinte maneira. 1. Crie uma nova chave SSH usando o Git Bash
Quando você for solicitado a "Digite um arquivo para salvar a chave", pressione Enter. Isso aceita o local padrão do arquivo.
Digite um arquivo no qual salvar a chave (/Users/[you ♡/.ssh/id_rsa): [Pressione Enter]
No prompt, digite uma senha segura. Você pode deixar em branco e pressionar enter se não precisar de uma senha.
Digite um arquivo no qual salvar a chave (/Users/[you ♡/.ssh/id_rsa): [Pressione Enter]
Para conectar-se ao seu VM Vagrant, digite o seguinte comando
ssh vagrant @ localhost -p 2222
Quando receber a seguinte mensagem, digite "yes" e pressione enter.
Agora, para estabelecer um tipo de conexão SSH: $ vagrant ssh
Copie a chave pública do host no arquivo allowed_keys na VM do Vagrant. Para isso, vá para a pasta “Users / [you] /. Ssh” e copie o conteúdo no arquivo id_rsa.pub na máquina host e passe para o arquivo “~ / .ssh / allowed_keys” na VM do Vagrant.
fonte
Eu iniciei a máquina, então:
vagrant ssh-config
Eu recebi o seguinte:
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
Então eu corri
cat ~/.ssh/id_rsa > /Users/my-user-name/Documents/PHP-Projects/my-php-project/puphpet/files/dot/ssh/id_rsa
Máquina inicializada a partir daqui
fonte
Entre todas as respostas aqui, há muitas coisas boas para tentar. Para completar, se você
ssh vagrant@localhost -p 2222
como o @Bizmate sugere, e falhar, verifique se você tem
AllowUsers vagrant
na
/etc/ssh/sshd_config
máquina do seu convidado / vagabundo.fonte
Estou usando o Vagrant com uma instalação Puphpet de maio de 2015 e tive esse problema. Parece que a configuração gerada não tratou o comportamento do Vagrant 1.7.4 (ou talvez um pouco mais cedo?) De regenerar chaves ssh se detectar uma chave insegura.
Eu o resolvi adicionando o seguinte no meu Vagrantfile gerado pelo Puphpet (instalação local) dentro da cláusula "if File.file? (CustomKey)":
Confirmação de referência
fonte
Todas as etapas corretas que segui para corrigir esse problema abaixo ocorreram quando o comando vagrant up foi executado.
Estes são os passos que eu segui
************************ ISTO É MUITO BOM PARA MIM ******************** ***********
fonte
Apenas para aquelas pessoas que foram idiotas como eu, ou tiveram algo estranho acontecendo com sua máquina vagabunda. Este erro também pode ocorrer quando você alterou as permissões do diretório inicial do usuário vagante (deliberadamente ou por acidente).
Você pode fazer login (como descrito em outras postagens) usando a senha ('vagrant') e, em seguida, execute o seguinte comando para corrigir as permissões.
sudo chown -R vagrant:vagrant /home/vagrant
Em seguida, você poderá fazer login novamente sem inserir a senha.
TL; DR: as permissões na sua pasta pessoal vagrant estão incorretas.
fonte
Simples:
Editar (Não é tão simples como se pensava):
O problema era que novas versões do homestead usam
php7.0
e outras coisas. Para evitar esta confusão se certifique-se de definir overison
emHomestead.yml
:fonte
Resolvi esse problema executando comandos no Windows 7 CMD, conforme indicado aqui. Aqui está o último post do link neste tópico,
https://github.com/mitchellh/vagrant/issues/6744
fonte
Tenho batido minha cabeça nisso nos últimos dias em uma caixa de base reembalada. (Mac OS X, El Capitan)
Seguindo o procedimento do @Radek, fiz 'vagrant ssh-config' na caixa de origem e obtive:
Na nova cópia, esse comando me deu:
Então, acabei de adicionar esta linha na nova cópia:
Não é perfeito, mas posso continuar com minha vida.
fonte
Outra solução simples, no Windows, vá para o arquivo Homestead / Vagrantfile e adicione estas linhas para conectar-se com um nome de usuário / senha em vez de uma chave privada:
Então, finalmente parte do arquivo ficará assim:
Espero que esta ajuda ..
fonte
Eu tentei isso na minha máquina VM
alterar as permissões / home / vagrant (fiz um chmod 700 nele)
agora eu posso ssh diretamente nas minhas caixas
fonte