É a última coisa que eu poderia pensar ... o Windows Firewall !!!
EDIT: resolvi o problema. É a última coisa que eu poderia pensar sobre ... Firewall do Windows !!!
Estou hospedando uma máquina virtual do Windows 2008 Server no servidor Ubuntu 12.04 LTS usando a caixa virtual 4.1.18. O adaptador de convidado do Windows é conectado na placa de rede eth0 do ubuntu e é pingável a partir do host (servidor ubuntu) e de outras máquinas na mesma rede. Além disso, o convidado (servidor do Windows 2008) pode executar ping no host e em outras máquinas na rede.
Mas nem o host nem outras máquinas podem acessar um aplicativo da Web hospedado no convidado (http, porta 80). Usando o navegador IE do convidado, posso acessar o aplicativo para que ele já esteja funcionando.
Eu tentei definir o modo promíscuo para o NIC do convidado:
VBoxManage modifyvm "Win2008Server_x64" --nicpromisc1 allow-all
, mas isso não funcionou.
Minhas regras de iptables
indicam que todo o tráfego é permitido "como o Ubuntu deve ser por padrão":
root@mysql:~# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
root@mysql:~# iptables -S
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
Sobre o encaminhamento de porta, não preciso fazer isso porque estou fazendo a ponte entre o NIC do convidado e o NIC do host, correto?
Em uma máquina virtual, eu tinha o tomcat7 rodando usando a porta 8080. Então eu mudei a porta do servidor web de 80 para 8080 mas isso não funcionou também, então eu acho que não tem nada a ver com o Ubuntu. É algo sobre a configuração da máquina virtual, mas não consigo descobrir!