Virtualbox: Jak uzyskać dostęp do serwera WWW w systemie gościa z systemu hosta?


10

Po wielu forach RTFM i czytaniu forów wciąż mam problemy i potrzebuję porady. Używam Virtualbox na Ubuntu i zainstalowałem serwer Centos jako gość. Mój problem polega na tym, że nie mogę uzyskać dostępu do serwera WWW w systemie-gościu z systemu-hosta.

Oto szczegóły: Host OS to Ubuntu 12.04 LTS (jądro 3.2.0-24-generic) 64bit.

Używam Virtualbox 4.1.12.

Otrzymuję adres IP z routera bezprzewodowego:

eth0      Link encap:Ethernet  HWaddr 18:03:73:42:3d:ac  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:47 Base address:0xe000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:3784 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3784 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:378673 (378.6 KB)  TX bytes:378673 (378.6 KB)

wlan0     Link encap:Ethernet  HWaddr 64:27:37:69:c5:d2  
          inet addr:192.168.1.15  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::6627:37ff:fe69:c5d2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:124013 errors:0 dropped:0 overruns:0 frame:0
          TX packets:82469 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:164307087 (164.3 MB)  TX bytes:9744555 (9.7 MB)

Tak więc zainstalowałem CentOS jako system operacyjny gościa i chcę uzyskać dostęp do jego serwera http. W Ustawieniach sieciowych w Virtualbox mam to: Attached to Bridged Adapter

Nazwa: wlan0

Zezwalam na tryb Promiscuous dla maszyn wirtualnych.

I zaznaczono „Połączono kablem”.

Na komputerze CentOS interfejs eth0 pobrał adres IP 192.168.1.20 z maską 255.255.255.0. Jak dotąd wszystko wygląda dobrze, oba systemy mogą się pingować. Uruchomiłem serwer WWW i nasłuchuje on na porcie 80 - sprawdzony przy pomocy netstat. (Jednak nie zmienił domyślnego pliku konfiguracyjnego serwera).

Kiedy chcę połączyć się z serwerem sieciowym na komputerze CentOS, nie mogę. „Nie można się połączyć” Firefox mówi, Chrome jest również niezadowolony: Chrome nie może połączyć się z 192.168.1.20. (Nie używam tutaj żadnego proxy).

Próbowałem telnet do portu 80 w systemie gościa - nie ma radości:

:~$ telnet 192.168.1.20 80
Trying 192.168.1.20...
telnet: Unable to connect to remote host: No route to host

Nie jestem pewien, czy to ważne, ale tabela tras w systemie gościa jest tutaj:

[root@centos ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     0      0        0 eth0
link-local      *               255.255.0.0     U     1002   0        0 eth0
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth0

(To zabawne, właśnie zorientowałem się, że mogę ssh z Ubuntu do CentOS.)

Próbowałem różnych ustawień w Virtualbox, ale powyższe jest najbliższe temu, co ludzie sugerują na różnych forach. Próbowałem NAT z przekierowaniem portów, adapter tylko do hosta, ale nie udało mi się go naprawić.

Czy ktoś może zapalić dla mnie trochę światła? Twoje zdrowie


Ponadto ... Na moim systemie operacyjnym hosta (Ubu) wykonałem traceroute i znalazłem drogę do systemu gościa. I jak powiedziano, maszyny mogą pingować się nawzajem i ssh działa. Utworzono fikcyjny plik HTML o nazwie index_x.html i mogę czytać stronę od samego gościa za pomocą lynx. Czy może to być problem z zaporą?
Petkaux

Czy masz zaporę działającą w systemie-gościu? Jeśli tak, to czy blokuje port 80?
Fran

Tak, masz rację, Fran. iptables blokował mnie na gościnnym CentOS. Wyłączyłem to tymczasowo, aby zobaczyć, co się dzieje i voila, mogłem uzyskać dostęp do serwera internetowego! Yippeee!
Petkaux,

@Petkaux Mam przykładowy problem z tym samym środowiskiem. Nie jestem dobry w Linuksie. Czy możesz więc podać mi polecenie / kroki, które próbowałem rozwiązać? ?
Mr. Black,

Odpowiedzi:



3

Wyłączenie wewnętrznej zapory systemu operacyjnego gościa, jak poniżej, powinno umożliwić dostęp. Rodzaj

service iptables stop
chkconfig iptables off

w wierszu poleceń w systemie-gościu.


Dzięki, spędziłem godziny próbując różnych ustawień dostępu do serwera na mojej maszynie Wirtualnej CentOS.
uınbɐɥs

Prosty i elegancki!
Edward_178118
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.