
Estou trabalhando para configurarVagabundousando uma caixa base do VirtualBox, e gostaria de encaminhar portas entre meu convidado (Ubuntu 12.04) e meu host (Windows 7) para acessar o servidor Apache2 que estará rodando no convidado.
O problema que estou enfrentando é que quando tento encaminhar entre a porta 80
no convidado e a porta 80
no host (ou mesmo 8080
) o Vagrant irá reclamar e me alertar sobre o fato de que a porta de encaminhamento "...já está em uso na máquina host."
Não é.
Executar a netstat -a
mostra que nada está conectado ou usando a porta 80
(ou mesmo 8080
). Depois de algumas experiências descobri que aparentemente a versão gratuita do Avast! que estou usando está bloqueando as portas encaminhadas. Nem todo o Avast! é o culpado, apenas o Web Shield.
Com o Avast! Web Shield desligado, usando o arquivo de configuração abaixo funciona perfeitamente ao inicializar a VM, com ele ligado... bem, aí está o problema.
Quero tentar encontrar uma solução que me permita usar o Vagrant sem ter que comprometer as configurações de um antivírus, se possível, ou pelo menos ter uma solução que não tenha muitas ressalvas. A intenção é usar o Vagrant como um meio de simplificar a configuração do desenvolvimento e não complicá-lo demais.
Para referência aqui está o meu Vagrantfile
:
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "precise32"
config.vm.box_url = "http://files.vagrantup.com/precise32.box"
config.vm.network :forwarded_port, guest: 80, host: 80
config.vm.provider :virtualbox do |vb|
vb.customize ["modifyvm", :id, "--memory", "1024"]
end
end
Tentei redes privadas, redes públicas, etc., mas posso estar configurando-as incorretamente.
Nota do autor:Esta pergunta pode já ter sido feita e respondida por outra pessoa e, se tiver sido, peço desculpas. Tudo o que descobri até agora não parece ser uma solução. Acho que parte do problema é que não tenho certeza se sei a pergunta adequada a ser feita para encontrar a solução correta. Se houver uma solução para isso, por favor, vincule-a!
Responder1
Depois de atualizaravast! Antivírus gratuitopara a versão do programa: 2014.9.0.2011
o 2014.9.0.2008
problema parece ter se resolvido. Parece que houve um conflito no lançamento anterior de 2014 do antivírus da Avast. Do seuhistórico de atualizações:
- WebShield totalmente reescrito para que agora não funcione mais como um "proxy transparente", o que deve resultar em uma melhoria geral na estabilidade e no desempenho. Também permite ver e detectar mais ameaças
- O componente Firewall (no IS e Premier) tornou-se mais compatível com outras aplicações, como Java e vários serviços VPN
Alternativamente, embora não resolva diretamente o problema de encaminhamento de porta, as redes públicas e privadas funcionam, mas vêm com suas próprias advertências:
- As redes públicas adquirem seu próprio IP na rede e para acessá-las parece necessário executar um
ifconfig
no convidado para determinar o IP atribuído. Isso coloca uma carga maior sobre o indivíduo que usa a VM, pois ele precisa realizar uma etapa extra toda vez que ativa a VM para determinar o IP do seu servidor. - As redes privadas permitem a atribuição de um endereço IP estático para consumo privado entre o host e o convidado. Talvez a melhor solução possível, barrando o encaminhamento de porta, com a exceção de que você precisa escolher o IP a ser utilizado.