1 votes

Transfert de port de la carte hôte de VirtualBox

J'ai une Ubuntu virtuelle sur une machine Windows réelle, où VirtualBox est un hyperviseur.

Le réseau de la machine virtuelle est connecté à l'hôte à l'aide d'un adaptateur d'hôte uniquement. Le problème est que je ne peux pas le changer pour diverses raisons, mais j'aimerais pouvoir accéder à Ubuntu virtuel depuis l'extérieur.

J'ai essayé d'installer mon propre serveur DHCP et de faire pointer la carte hôte de VirtualBox vers ce serveur, mais cela n'a pas fonctionné.

Comment puis-je transférer par exemple le port 22 vers le monde réel sous Windows ?

1voto

Matthew Frederick Points 14932

Le terme "hôte seulement" signifie exactement cela... il n'y a aucune connexion avec le monde extérieur. Si vous ne pouvez vraiment pas passer à un autre type d'adaptateur, il n'y a aucun moyen de le faire, à moins de configurer votre boîte Windows comme un routeur (ce qui semble hors de portée).

La meilleure option (sans connaître les raisons qui vous empêchent de changer) est de passer à un adaptateur ponté, qui permettra un accès complet depuis les machines extérieures.

1voto

Micah Shenk Points 11

Je sais que je suis en train de nécroser une question d'il y a quatre ans, mais je suis tombé sur ce sujet et je suis heureux de ne pas avoir été découragé par le post de Frank Thomas (si je l'ai lu comme il l'entendait, en disant qu'il n'y a pas de moyen possible pour qu'une VM uniquement hôte se connecte à l'extérieur de la machine hôte). J'ai essayé pendant un certain temps de comprendre comment créer une VM totalement isolée, en dehors de certaines fonctionnalités comme le bureau à distance et FTP (également Apache). J'ai configuré l'adaptateur hôte seulement avec DHCP. L'objectif était de faire en sorte que la machine hôte (Windows) reçoive des connexions sur des ports spécifiques, puis transmette ces connexions à l'adaptateur hôte uniquement, et donc à la VM isolée (Ubuntu-Linux). J'ai trouvé un moyen fiable de le faire en utilisant netsh.

Disons que l'adresse IP publique de ma machine hôte est 47.74.47.74, et que l'adresse IP privée de ma machine invitée est 192.168.47.74 : Sur l'invité, j'ai configuré Apache pour écouter son port par défaut (80), et XRDP (bureau à distance) pour écouter son port par défaut (3389). J'ai choisi des ports aléatoires à utiliser pour les connexions à mon hôte. Tant que vous vous souvenez des ports que vous utilisez, et que rien d'autre ne les utilise, ils peuvent être ce que vous voulez. Je voulais que les connexions à 47.74.47.74:12567 soient redirigées vers l'invité et affichent index.html depuis Apache, donc j'ai fait en sorte que le port 12567 soit redirigé vers le port 80 de l'invité en utilisant (ceci doit être fait dans CMD, la console de commande Windows) :

netsh interface portproxy add v4tov4 listenport=12567 listenaddress=0.0.0.0 connectaddress=192.168.47.74 connectport=80 protocol=tcp

(Explication : Cela ajoute une règle de transfert sur un port spécifique pour envoyer à un autre endroit. "v4tov4" fait référence à la réception d'une adresse IPV4, et au transfert vers une adresse IPV4. "listenaddress=0.0.0.0" signifie qu'il écoute toute adresse IPV4 passant par ce port. Vous pouvez le limiter aux connexions provenant d'une adresse IPV4 spécifique si vous le souhaitez. "connectaddress" et "connectport" sont les informations de la machine invitée).

Après avoir fait suivre le port 12567 à mon hôte dans mon routeur, cela m'a permis d'accéder à index.html sur l'invité de n'importe où en utilisant un navigateur web. De même,

netsh interface portproxy add v4tov4 listenport=12568 listenaddress=0.0.0.0 connectaddress=192.168.47.74 connectport=3389 protocol=tcp

me permet de me connecter à distance à partir de n'importe où en utilisant Windows Remote Desktop et en me connectant à 47.74.47.74:12568.

FTP implique la redirection de plusieurs autres ports de cette manière, et la configuration du serveur FTP à l'aide de ports spécifiques (vous ne pouvez pas utiliser une plage de ports à l'aide de netsh portproxy), mais je ne l'expliquerai que si quelqu'un me le demande.

0voto

Mike Robinson Points 319

La réponse nécro appropriée aurait été de définir deux adaptateurs virtuels pour la VM. L'un doit être NAT, l'autre seulement hôte. Problème résolu.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X