Je veux accéder à un serveur web apache fonctionnant dans une boîte virtuelle centos. Avec mon ordinateur portable connecté au réseau local du bureau, je peux accéder à ce serveur web en mode réseau ponté. Mais ce que je veux faire, c'est y accéder lorsque je ne suis connecté à aucun réseau. Est-ce possible avec les interfaces virtuelles ?
Réponse
Trop de publicités?El port forwarding
fonction accessible depuis le réseau avancé de votre machine virtuelle vous permet d'exposer sélectivement un port de votre machine virtuelle à votre hôte.
De cette façon, vous pouvez configurer le port 80/tcp (trafic http) de la machine virtuelle pour qu'il soit facilement accessible à partir du port 8080 de votre hôte local. Vous trouverez ci-dessous un exemple de cette configuration :
Name: webserver http
Protol: TCP
Host IP: 127.0.0.1
Host Port: 8080
Guest IP:
Guest port: 80
Faites de même avec le port 443/tcp (trafic https) si vous le servez également. (ex : 443 -> 8443) . Une fois que c'est fait, vous n'avez même pas besoin de vous soucier de l'adresse IP de votre machine virtuelle pour accéder à son site web. Il suffit de naviguer http://127.0.0.1:8080/
et vous avez terminé.
Notes :
-
C'est bien de laisser
Guest IP
vide s'il est attribué ou connu par VirtualBox lui-même (je ne pense pas que ce soit le cas avec le mode bridge, je vous conseille donc de choisirNetwork Address Translation (NAT)
,Internal Networking
oHost-Only networking
options. Documentation en ligne de VirtualBox expliquer les principales différences entre les options de mise en réseau. Le NAT permettra à votre machine virtuelle de se connecter à l'Internet par exemple, ce qui peut vous plaire ou vous déplaire. -
Si vous effacez
Host IP
les autres ordinateurs de votre réseau physique pourront se connecter au serveur web de cette machine virtuelle en utilisant votre adresse IP hôte (ex :http://192.168.1.xxx:8080
). Cela peut vous aider à mettre en place une configuration unique pour vos deux cas d'utilisation et même améliorer la sécurité de votre machine virtuelle en n'exposant pas tous ses ports ouverts aux réseaux réels. -
Vous ne pouvez pas facilement utiliser le port local 80 pour cette transmission car les ports inférieurs à 1024 nécessitent des privilèges. D'où le choix courant du port 8080 dans ce cas.