web-dev-qa-db-fra.com

Comment autoriser d'autres ordinateurs du réseau à accéder à mon serveur Web virtuel?

J'utilise Windows 7 comme système d'exploitation hôte. J'ai Debian 6.0.4 installé sur VirtualBox avec lighttpd.

Je peux accéder facilement au serveur Web depuis ma machine en tapant http://localhost dans le panneau d'adresse du navigateur, mais d'autres ordinateurs de mon réseau ne peut pas y accéder en tapant mon adresse IP.

J'utilise NAT transfert de port dans VirtualBox. Que dois-je faire pour rendre mon serveur Web disponible pour tout le monde sur mon réseau?

EDIT:

Je suis arrivé à une "solution" - je dois configurer le port invité et le port hôte sur différents ports. Mais j'ai toujours des problèmes avec ça, à savoir:

le serveur est lancé sur le port 8080.

Port forwarding : guest port 8080
                  Host port 80

Je peux accéder au serveur depuis ma machine à la fois

Mais je ne peux accéder au serveur à partir d'autres machines du réseau que par IP:8080

10
Patryk

Ok, j'ai résolu ce problème après quelques heures de recherche sur Internet.

Le problème était mon communicateur de messagerie instantanée spik qui écoutait sur le port 80. Après l'avoir éteint et redémarré, tout fonctionne à merveille :)

J'ai lu que l'on pourrait avoir le même problème avec par exemple. Skype.

1
Patryk

Une option consiste à changer la carte réseau de la machine virtuelle en mode ponté; vous devriez alors pouvoir accéder au serveur virtuel à partir des autres machines du réseau, en fournissant l'adresse IP de votre invité.

Modifier:

Pour des aspects pratiques, consultez la documentation de VirtualBox sur Réseau virtuel . Vos options sont à utiliser réseau ponté

Avec la mise en réseau pontée, VirtualBox utilise un pilote de périphérique sur votre système hôte qui filtre les données de votre adaptateur réseau physique. Ce pilote est donc appelé pilote "filtre réseau". Cela permet à VirtualBox d'intercepter les données du réseau physique et d'y injecter des données, créant ainsi efficacement une nouvelle interface réseau dans le logiciel. Lorsqu'un invité utilise une telle interface logicielle, il considère le système hôte comme s'il était physiquement connecté à l'interface à l'aide d'un câble réseau: l'hôte peut envoyer des données à l'invité via cette interface et en recevoir des données. Cela signifie que vous pouvez configurer le routage ou le pontage entre l'invité et le reste de votre réseau.

ou redirection de port :

Comme la machine virtuelle est connectée à un réseau privé interne à VirtualBox et invisible à l'hôte, les services réseau de l'invité ne sont pas accessibles à la machine hôte ni aux autres ordinateurs du même réseau. Toutefois, à l’instar d’un routeur physique, VirtualBox peut mettre à la disposition du monde des services sélectionnés en dehors de l’invité par le biais du transfert de port. Cela signifie que VirtualBox écoute certains ports de l'hôte et renvoie tous les paquets qui y arrivent à l'invité, sur le même port ou sur un port différent.

Donc, dans le cas d'un transfert de port NAT, vous devez utiliser la commande suivante:

VBoxManage modifyvm "VM name" --natpf1 "guesthttp,tcp,,80,,80"
9
Karolos