Não é possível conectar-se ao Apache (httpd) executado dentro do VirtualBox Guest da LAN

1

Objetivo Para poder conectar-se ao httpd executado dentro de um convidado de outras máquinas na mesma LAN que o host.

Abordagem adotada Eu configurei uma interface NAT com o encaminhamento de porta no convidado. A porta 8080 da máquina host está sendo encaminhada para a porta 80 das máquinas convidadas.

O convidado também tem uma interface somente de host, que é usada apenas para verificar se o status do httpd (em execução / parado) do host.

Eu tenho a seguinte configuração :

  • Host - > Fedora
  • Convidado - > Debian 9
    • Interfaces de rede (2)
    • NAT
    • Somente host
  • Encaminhamento de portas Porta do Host 8080 encaminhada para a Porta Convidada 80

Problema Não consigo acessar a porta 80 no convidado do host (usando localhost: 8080, ou seja, sem usar a interface somente de host), portanto, ela também pode ser acessada pela LAN.

Dito isso, eu também tenho ssh no guest, tentei a mesma configuração de encaminhamento de porta para o ssh, ou seja, envie o Host: 8080 para o Guest: 22 e funcionou! Eu posso SSH no convidado do host e também de outras máquinas na mesma rede local. Por isso, não parece ser um problema de firewall.

Eu tenho httpd ouvindo em 0.0.0.0:80 via /etc/apache2/ports.conf. Eu também tentei mudar a porta httpd escuta sem muita sorte. Da mesma forma, eu também tentei especificar o endereço IP httpd escuta como o IP atribuído pelo VirtualBox para a interface NAT sem muito lick também.

Eu tentei criar uma nova interface NAT em File > Preference > Network e também adicionando o encaminhamento de porta à interface NAT padrão incorporada no VirtualBox.

A execução de um wget no host fornece a seguinte saída

# wget localhost:8080
--2017-08-08 13:06:33--  http://localhost:8080/
Resolving localhost (localhost)... ::1, 127.0.0.1
Connecting to localhost (localhost)|::1|:8080... failed: Connection refused.
Connecting to localhost (localhost)|127.0.0.1|:8080... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://localhost/ [following]
--2017-08-08 13:06:34--  http://localhost/
Connecting to localhost (localhost)|127.0.0.1|:80... failed: Connection refused.
Resolving localhost (localhost)... ::1, 127.0.0.1
Connecting to localhost (localhost)|::1|:80... failed: Connection refused.
Connecting to localhost (localhost)|127.0.0.1|:80... failed: Connection refused.

Os trechos da saída produzidos pelo comando netstat no Host e Guest são Máquina host:

Local Address       Foreign Address      State
192.168.1.2:8080    192.168.1.2:52162    FIN_WAIT2

Máquina convidada:

Local Address       Foreign Address      State
10.0.2.15:80        10.0.2.2:52162       FIN_WAIT2

Então a conexão está sendo encaminhada para o convidado? Não há firewall no convidado (iptables -L retorna uma lista vazia). O SSH sendo acessível enquanto o httpd não está acessível provavelmente significa que é um problema de configuração do httpd?

O que poderia estar faltando aqui?

    
por user118718 08.08.2017 / 10:06

0 respostas