59 votes

VirtualBox Host ssh à Guest

J'ai un hôte mac, et un invité Linux VirtualBox, utilisant actuellement le mode ponté.

Je dois être en mesure d'accéder facilement à l'invité par SSH depuis l'hôte. Ce serait bien d'utiliser un nom d'hôte, mais une adresse IP qui ne change jamais serait aussi bien (actuellement, l'IP change avec chaque nouveau réseau que je rejoins, et le nom d'hôte n'a jamais fonctionné).

J'ai également besoin d'un accès à l'internet de la part de l'invité.

Les autres machines du réseau n'ont pas besoin d'accéder à l'invité.

Quelle est la meilleure façon de configurer mon réseau VirtualBox ?

46voto

Ben Points 21

Entre deux machines Linux (un hôte Ubuntu 32-bit et une VM Ubuntu 64-bit), j'ai réussi à faire fonctionner ssh en utilisant ce Port Forwarding :

enter image description here

Puis, à partir de votre système hôte, exécutez

ssh -p 5679 127.0.0.1

Substitut 5679 avec le "Port de l'hôte" saisi dans les règles de transfert de port.

41voto

rofrol Points 1709

Tout d'abord, vous devrez créer le vboxnet0 interface.

VirtualBox > Fichier > Préférences > Réseau > Réseaux d'hôtes seulement > Ajouter (vous obtiendrez vboxnet0)

Ensuite, exécutez ceci sur la machine hôte. Vous verrez une nouvelle interface, vboxnet0 est apparu.

ifconfig

Arrêtez votre VM et faites :

VM's Settings > System > check "Enable I/O APIC."
VM's Settings > Network > Adapter 2 > host-only vboxnet0

Démarrer la VM, sur l'invité

ifconfig

et vérifier l'ip

Vérifiez ces liens :

  1. https://forums.virtualbox.org/viewtopic.php?f=8&t=40076
  2. http://www.wiredrevolution.com/virtualbox/setup-ssh-access-between-virtualbox-host-and-guest-vms

Il existe également une solution pour NAT mais je ne l'ai pas vérifiée.

Configuration du transfert de port avec NAT dans votre machine hôte

VBoxManage modifyvm "VM name" --natpf1 "guestssh,tcp,,2222,,22"

connectez-vous à votre linux via le port 2222 de votre machine hôte

ssh -l -p 2222 localhost

Pour la mise en réseau d'un hôte seulement avec une IP statique, vérifiez ceci :

https://stackoverflow.com/questions/5906441/how-to-ssh-to-a-virtualbox-guest-externally-through-a-host/27152153#27152153

Il est destiné à Solaris 10 et Ubuntu 16.04 mais devrait être facile à adapter.

2voto

Ben Creasy Points 344

Si vous ne voulez pas vous embêter avec la redirection de port, vous pouvez configurer un adaptateur hôte uniquement qui apparaît comme une interface hôte et ajouter une adresse IP dans ce sous-réseau dans l'invité.

Des pas :

  • Créez un réseau réservé à l'hôte dans Virtualbox (GUI -> paramètres -> réseau). Tapez ifconfig dans l'hôte et voir quelque chose comme vboxnet0 avec inet 192.168.50.1
  • en invité, ajoutez une adresse IP : ifconfig eth1 192.168.50.101 netmask 255.255.255.0 up
  • dans l'hôte, exécutez ssh root@192.168.50.101

Pour en savoir plus :

1voto

mrgrieves Points 121

Il est préférable de configurer votre carte réseau virtuelle en mode NAT si vous vous déplacez souvent. En utilisant le mode NAT, l'hôte (votre PC) devient le serveur DHCP et le routeur pour un réseau privé qui est créé pour vos OS invités. Je suis presque sûr que vous pouvez également définir une adresse statique en utilisant le NAT...

Cependant, je pense que la meilleure solution est de trouver pourquoi la résolution de nom ne fonctionne pas pour votre VM invitée :)

https://www.virtualbox.org/manual/ch06.html#network_nat

0voto

remkohdev Points 1

Très utile, il m'a mis dans la bonne direction. Merci.

J'ai dû aller dans > VirtualBox > Fichier > Host Network Manager > vboxnet0 > Configurer l'adaptateur manuellement > Adresse IPv4 et la définir sur l'ifconfig de l'invité. Pour une raison quelconque, l'hôte et l'invité me donnaient des adresses IP différentes.

C'est mentionné mais pour être explicite, j'ai dû définir le port de redirection pour 127.0.0.1 à 5679 et non le port ssh 22 par défaut, car il est déjà utilisé par la communication ssh de l'hôte.

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