Fórum Ubuntu Linux - PT
Suporte Técnico => Internet, Redes e Segurança => Tópico iniciado por: galactus em 23 de Abril de 2020, 15:47
-
Olá, o cenário é o seguinte.
Tenho duas VMs instaladas com Ubuntu server 18.04. Um seria Ubuntu Client e o outro Ubuntu Server. Instalei o apache2 no Ubuntu server e consigo acessar com o Lynx ( no Client) o apache2 (no server). Até ai tudo bem.
Quando vou usar o Host, também Ubuntu 18.04 com XFCE, consigo pingar no Ubuntu server da VM mas não acessa o apache2 do mesmo.
A configuração da placa de rede do ubuntu server está com duas placas de rede, uma NAT DHCP e a outra Host-only com IP fixo configuradas no netplan.
No virtualBox também está configurado o Host Network manager com as placas Host-only com os IP fixos sem DHCP habilitados.
Também tenho o apache instalado no hosts, mas já desabilitei no host o apache. Confiurações do UFW Apache Full já executadas na VM e no Host.
Aonde foi que eu errei?
-
Rapaz, seu cenário é muito específico. Tenho mais perguntas, que respostas.
Três perguntas:
1 - Porque o Ubuntu Server tem duas placas? Esse Ubuntu Server é uma das VMs ou o host?
2 - Porque do host vc precisa acessar a VM Apache?
3 - Por que Virtualbox e não Docker?
Já desativou o firewall para testes? O tracepath vai direto do host pra VM?
-
Vamos por partes como o açougueiro:
1 - Porque o Ubuntu Server tem duas placas? Esse Ubuntu Server é uma das VMs ou o host?
Tem duas placas de rede cada um. São dois ubuntu servers 18.04.4. Um serve como cliente e o outro server. Porque? Porque é um trabalho do curso de redes, o professor quis assim. Uma placa é NAT com dhcp e a outra é host-only.
O host também é ububuntu 18.04.4 com XFCE, meu sistema de uso diário.
2 - Porque do host vc precisa acessar a VM Apache?
Requisito do trabalho. O problema é que funciona do Windows para o Ubuntu. Mas do Ubuntu pra Ubuntu não!
3 - Por que Virtualbox e não Docker?
Adivinhou né! :)
-
Já desativou o firewall para testes? O tracepath vai direto do host pra VM?
Não respondeu essas?
As placas DHCP pegam IPs da mesma rede do host?
As placas host only tem IP fixo e acessível somente pelas VMs?
Qual IP vc está usando pra testar VM -> VM? O via DHCP ou Estático? Consegue acessar as VMs servidor/cliente pelos dois IPs?
-
Já desativou o firewall para testes? O tracepath vai direto do host pra VM?
Já abri as portas no firewall do apache no host e na VM e pingo do host na vm. Não usei o tracepath. Vou tentar.
As placas DHCP pegam IPs da mesma rede do host?
Não. São ips diferentes.
As placas host only tem IP fixo e acessível somente pelas VMs?
Têm IPs fixos que devem ser acessados pelo host. Se for pra vms se comunicarem eu tenho que mudar pra rede interna.
Qual IP vc está usando pra testar VM -> VM? O via DHCP ou Estático?
Se usar uma placa dhcp e a outra interna nas duas vms eu acesso as duas vms pela placa interna.
Para acessar do host para a vm eu tenho que mudar a placa de interna para host-only. Tanto a placa interna como host-only usam IPs estáticos. Só a placa NAT usa dhcp que pega do host.
Consegue acessar as VMs servidor/cliente pelos dois IPs?
Só testei nos ips fixos que é o que ele quer no trabalho. Como disse, Pinga do host na vm, mas não acesso o apache da vm estando no host. Mas acesso o apache entre as VMs.
-
Respondendo a pergunta do tracepath:
galactus@NorrinRadd:/var/www/html$ tracepath 192.168.56.60 (IP fixo do Servidor com Apache no VirtualBox)
1: NorrinRadd 0.093ms reached
Resume: pmtu 65535 hops 1 back 1
galactus@NorrinRadd:/var/www/html$ tracepath 192.168.56.50 (IP fixo do cliente sem apache no VirtualBox)
1: NorrinRadd 0.221ms reached
Resume: pmtu 65535 hops 1 back 1
galactus@NorrinRadd:/var/www/html$
Era isso que você queria ver?
-
Veja que meu Host reconhece as duas placas de rede do Guest:
galactus@NorrinRadd:/var/www/html$ ifconfig
enp7s0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether a4:1f:72:ff:9f:f0 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 5982 bytes 830433 (830.4 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5982 bytes 830433 (830.4 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
vboxnet0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.56.50 netmask 255.255.255.0 broadcast 192.168.56.255
inet6 fe80::800:27ff:fe00:0 prefixlen 64 scopeid 0x20<link>
ether 0a:00:27:00:00:00 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1055 bytes 217873 (217.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
vboxnet1: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.56.60 netmask 255.255.255.0 broadcast 192.168.56.255
inet6 fe80::800:27ff:fe00:1 prefixlen 64 scopeid 0x20<link>
ether 0a:00:27:00:00:01 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 869 bytes 165061 (165.0 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp6s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.43.194 netmask 255.255.255.0 broadcast 192.168.43.255
inet6 fe80::5dd4:6783:f7b9:a55c prefixlen 64 scopeid 0x20<link>
ether 54:35:30:fe:d9:01 txqueuelen 1000 (Ethernet)
RX packets 828237 bytes 1089377733 (1.0 GB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 363005 bytes 46042746 (46.0 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
galactus@NorrinRadd:/var/www/html$
-
O tracepath tá certo.
O que pode estar acontecendo é o seguinte. No VritualBox placas do tipo NAT, não são acessíveis do host -> vm. Vc pode mudar o tipo de placa de rede? Se puder, a mais fácil seria mudar as NATs pra Bridge Adapter, daí todos ficariam na mesma rede doméstica e ainda teria uma rede interna entre as VMs.
Como está vc está mudando os IPs, depois que o Apache já iniciou. Vc tem que verificar se a configuração do seu vhost ,está como <VirtualHost *:80>. Se vc trocar o IP, vc deve reiniciar o Apache e testar novamente.
-
galactus@NorrinRadd:/var/www/html$ ping -c 4 192.168.56.50
PING 192.168.56.50 (192.168.56.50) 56(84) bytes of data.
64 bytes from 192.168.56.50: icmp_seq=1 ttl=64 time=0.068 ms
64 bytes from 192.168.56.50: icmp_seq=2 ttl=64 time=0.063 ms
64 bytes from 192.168.56.50: icmp_seq=3 ttl=64 time=0.058 ms
64 bytes from 192.168.56.50: icmp_seq=4 ttl=64 time=0.065 ms
--- 192.168.56.50 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3031ms
rtt min/avg/max/mdev = 0.058/0.063/0.068/0.008 ms
galactus@NorrinRadd:/var/www/html$ ping -c 4 192.168.56.60
PING 192.168.56.60 (192.168.56.60) 56(84) bytes of data.
64 bytes from 192.168.56.60: icmp_seq=1 ttl=64 time=0.067 ms
64 bytes from 192.168.56.60: icmp_seq=2 ttl=64 time=0.079 ms
64 bytes from 192.168.56.60: icmp_seq=3 ttl=64 time=0.064 ms
64 bytes from 192.168.56.60: icmp_seq=4 ttl=64 time=0.083 ms
--- 192.168.56.60 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3030ms
rtt min/avg/max/mdev = 0.064/0.073/0.083/0.010 ms
galactus@NorrinRadd:/var/www/html$
Pinga normalmente nas duas VMs com Host-Only!
-
O tracepath tá certo.
O que pode estar acontecendo é o seguinte. No VritualBox placas do tipo NAT, não são acessíveis do host -> vm. Vc pode mudar o tipo de placa de rede? Se puder, a mais fácil seria mudar as NATs pra Bridge Adapter, daí todos ficariam na mesma rede doméstica e ainda teria uma rede interna entre as VMs.
Como está vc está mudando os IPs, depois que o Apache já iniciou. Vc tem que verificar se a configuração do seu vhost ,está como <VirtualHost *:80>. Se vc trocar o IP, vc deve reiniciar o Apache e testar novamente.
Não estou usando a placa NAT! Estou usando a Host-Only! Tem que ser Host-Only!
Você fala de Port Forwarding pro apache?
-
Cara, lá em cima vc disse NAT.
-
Cara, lá em cima vc disse NAT.
A configuração da placa de rede do ubuntu server está com duas placas de rede, uma NAT DHCP e a outra Host-only com IP fixo configuradas no netplan.
No virtualBox também está configurado o Host Network manager com as placas Host-only com os IP fixos sem DHCP habilitados.
-
https://www.virtualbox.org/manual/ch06.html#network_hostonly
A placa Host-Only é um modo híbrido de Bridge com Interna!
-
Agora comecei a entender.
Vc tem que verificar se a configuração do seu vhost ,está como <VirtualHost *:80>. Olhou isso?
As VMs conseguem se comunicar na rede 192.168.56.0? Ou somente na rede com IP fixo?
-
Agora comecei a entender.
Vc tem que verificar se a configuração do seu vhost ,está como <VirtualHost *:80>. Olhou isso?
As VMs conseguem se comunicar na rede 192.168.56.0? Ou somente na rede com IP fixo?
Aonde eu vejo isso de <VirtualHost *:80> ?
As VMs só se comunicam entre elas se eu usar rede interna!! Se usar host-Only elas não se comunicam.
E novamente, quando uso a segunda placa, seja Interna ou Hot-only são IPs fixos: 192.168.56.50 e 192.168.56.60.
O que dá raiva é que no Windows funciona!!! Se o Windows é o Host.
-
Vc tem que verificar se a configuração do seu vhost ,está como <VirtualHost *:80>. Olhou isso?
Nas configurações do Apache. Dá uma pesquisada aí.
Vc tem algum firewall no host?
-
Vc tem que verificar se a configuração do seu vhost ,está como <VirtualHost *:80>. Olhou isso?
Nas configurações do Apache. Dá uma pesquisada aí.
Vc tem algum firewall no host?
Tenho firewall mas já abri a porta do Apache. Desligo o Firewall?
É achei esse arquivo!
Putz, se for o que eu vi no tio Google tem que mudar uma porrada de coisas.
-
Tenho firewall mas já abri a porta do Apache. Desligo o Firewall?
É achei esse arquivo!
Putz, se for o que eu vi no tio Google tem que mudar uma porrada de coisas.
Desativa o firewall só pra testar. Sabe-se lá como o VirtualBox roteia isso.
Se está funcionando, não precisa alterar muita coisa no Apache. Só verifica se está com o * (asterisco), porque isso indica que está escutando, todas as interfaces.
-
Tenho firewall mas já abri a porta do Apache. Desligo o Firewall?
É achei esse arquivo!
Putz, se for o que eu vi no tio Google tem que mudar uma porrada de coisas.
Desativa o firewall só pra testar. Sabe-se lá como o VirtualBox roteia isso.
Se está funcionando, não precisa alterar muita coisa no Apache. Só verifica se está com o * (asterisco), porque isso indica que está escutando, todas as interfaces.
Desliguei o Firewall e nada! E tem esse * na linha <VirtualHost *:80> .
-
Resolvido!
Abri esse mesmo tópico no Fórum Principal e demorou um pouco mas dois caras me fizeram bastante perguntas também até que um deles me mostrou a solução que se encontra nesse link:
https://blogs.oracle.com/scoter/networking-in-virtualbox-v2
O erro está em criar duas placas de rede Host-Only, uma para cada VM. Elas devem estar na mesma placa Host-Only mas os guests com IP fixos diferentes!
Sucesso!!!