eseguire il server Web dalla macchina virtuale, come si usa la porta 80


2

Ho un sistema host che esegue Fedora 15 e ho un sistema guest che esegue CentOS 5.5 in VirtualBox.

Ho impostato un'installazione di virtualmin e ho aggiunto il port forwarding alla macchina virtuale. Quando inoltro la porta 80 sul guest alla porta 8080 sull'host posso accedere a localhost: 8080 e mi serve la pagina. Tuttavia, se inoltro la porta 80 sul guest alla porta 80 sull'host, non riesco ad accedervi.

Dal momento che desidero accedere ai siti della VM dal Web e non voglio aggiungere un numero di porta quando accedo a questi (tramite un dominio o un sottodominio che punta al mio IP) presumo di dover utilizzare la porta 80 qui.

Ho letto che le persone inoltrano la porta 80 all'host, quindi presumo che ciò sia possibile.

Output da nmap per host (Fedora):

Nmap scan report for localhost (127.0.0.1)
Host is up (0.000078s latency).
Not shown: 992 closed ports
PORT      STATE SERVICE
22/tcp    open  ssh
25/tcp    open  smtp
111/tcp   open  rpcbind
631/tcp   open  ipp
2121/tcp  open  ccproxy-ftp
2222/tcp  open  EtherNet/IP-1
11111/tcp open  vce
Device type: general purpose
Running: Linux 2.6.X
OS details: Linux 2.6.19 - 2.6.36

Quindi la porta 80 non è presa dall'host, il che potrebbe essere un buon segno, i processi locali non intervengono o è un cattivo segno, la porta dovrebbe essere aperta per funzionare con i dati del server dal guest?

Sto usando il router P-2601HN-F1 che funziona correttamente (è riuscito a mostrare l'output dal web con un server Apache locale)

Nella scheda di rete della VM dice: Attaccato a: NAT. E per il port forwarding ho definito forward di cui:

HOST PORT / GUEST PORT
80 / 80 tcp
2121 / 21 tcp
2222 / 22 tcp
11111 / 10000 tcp

Non che quando cambio 80/80 tcp in 8080/80 tcp, allora posso accedervi da http: // localhost: 8080 / .

Cosa sto sbagliando / come posso raggiungere questo obiettivo (accesso sulla porta 80)?


In genere, se stai offrendo qualcosa di simile al contenuto Web da una VM, utilizzeresti Bridged Networking (renderebbe più semplice la configurazione perché puoi semplicemente inoltrare la porta del tuo router all'ip della VM ospite). Vedo che la tua VM è configurata con reti di tipo NAT, puoi confermarlo?
David Chen,

@Bearocalypse: è impostato con reti di tipo NAT. La rete di tipo NAT ha funzionato quando ho assegnato 8080 da utilizzare, quindi suppongo che potrebbe funzionare con la porta 80. Inoltre, dubitavo che il bridge fosse una buona idea poiché uso più macchine virtuali abbastanza spesso, probabilmente complicherà le cose.
Roderik,

1
Ho notato che il problema è la restrizione dei numeri di porta sotto 1024, che non sono supportati. Ora l'ho trasformato in un set ponte. Penso che la macchina virtuale riceva un indirizzo IP locale assegnato dinamicamente ora; come posso assicurarmi che questo rimanga lo stesso (perché altrimenti devo cambiare l'inoltro nel router ogni volta che cambia). @Bearocalypse
Roderik,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.