problemas de SSH ao iniciar windows8.1 VM de vagrant

2

Como descrito no título, estou tendo alguns problemas ao iniciar uma VM win8.1 com o Vagrant, onde SSH nunca se conecta. O console exibe o erro abaixo:

default: Warning: Connection timeout. Retrying...

Log completo:

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> 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: 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: cyg_server
    default: SSH auth method: password
    default: Warning: Connection timeout. Retrying...
    default: Warning: Connection timeout. Retrying...
    default: Warning: Connection timeout. Retrying...
    default: Warning: Connection timeout. Retrying...
    default: Warning: Connection timeout. Retrying...
    default: Warning: Connection timeout. Retrying...

Eu instalei cygwin64 e openssh, nome de usuário configurado como cyg_server e senha como vagrant . Foi verificado com êxito se está funcionando na VM fazendo ssh localhost e exibindo árvores de diretórios usando ls -lh /cygdrive/c conforme descrito em algum tutorial.

Meu Vagrantfile está configurado como acima:

config.ssh.username = "cyg_server"
config.ssh.password = "vagrant"

mas sem sucesso ainda.

Claro que eu pesquisei sobre isso sem qualquer informação boa, e nenhum tutorial fazendo a mesma coisa que eu estou fazendo.

Alguém sabe como resolver esse problema?

Estou usando um Mac Yosemite , usando vagrant1.7.2 , VirtualBox4.3.28 e Windows8.1 VM box .

Obrigado antecipadamente.

    
por FormigaNinja 03.06.2015 / 08:19

1 resposta

0

Eu resolvi sozinho. Os documentos do Vagrant dizem que as caixas do Windows podem usar o WinRM para se comunicar com o Vagrant através dos comandos vagrant rdp , então tudo tinha que fazer era alterar as configurações de Vagrantfile para isso:

config.vm.guest = :windows
config.vm.communicator = "winrm"
config.vm.network :forwarded_port, guest: 3389, host: 13389
config.vm.network :forwarded_port, guest: 5985, host: 15985, id: "winrm", auto_correct: true

E, em seguida, habilite e configure o WinRM no sistema operacional inserindo os comandos abaixo no console (execute como admin):

winrm quickconfig -q 
winrm set winrm/config/winrs @{MaxMemoryPerShellMB="512"} 
winrm set winrm/config @{MaxTimeoutms="1800000"} 
winrm set winrm/config/service @{AllowUnencrypted="true"} 
winrm set winrm/config/service/auth @{Basic="true"} 
sc config WinRM start= auto

Os comandos do WinRM acima estão descritos na página de documentos: link

Depois disso, eu apenas vagrant up novamente e tudo funcionou bem.

FYI: Algumas pessoas tiveram problemas depois disso (leia em algum fórum), então neste caso lembre-se de checar o firewall do windows também.

    
por 04.06.2015 / 04:49