VirtualBox Host ssh to Guest

53

Mam hosta systemu Mac i gościa VirtualBox Linux, obecnie używającego trybu Bridged.

Muszę mieć możliwość łatwego SSH do gościa z hosta. Byłoby miło użyć nazwy hosta, ale niezmienny adres IP też byłby w porządku (obecnie zmienia się adres IP z każdą nową siecią, do której dołączam, a nazwa hosta nigdy nie działała).

Potrzebuję również dostępu do Internetu od gościa.

Inne maszyny w sieci nie potrzebują dostępu do gościa.

Jak najlepiej skonfigurować moją sieć VirtualBox?

Thomas Hunter
źródło
1
W związku z tym rozważ założenie gościa VB bez GUI: superuser.com/questions/135498/...
Fabricio PH

Odpowiedzi:

36

Najpierw musisz utworzyć vboxnet0interfejs.

VirtualBox> Plik> Preferencje> Sieć> Sieci tylko hosta> Dodaj (otrzymasz vboxnet0)

Następnie uruchom to na maszynie hosta. Zobaczysz nowy interfejs,, vboxnet0pojawił się.

ifconfig

Zamknij maszynę wirtualną i wykonaj:

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

Uruchom maszynę wirtualną po uruchomieniu gościa

ifconfig

i sprawdź ip

Sprawdź te linki:

  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

Jest też rozwiązanie dla NAT, ale go nie sprawdziłem.

Konfigurowanie przekierowania portów za pomocą NAT na komputerze-hoście

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

połącz się z linuxem przez port 2222 twojego komputera

ssh -l -p 2222 localhost

W przypadku sieci tylko z hostem ze statycznym adresem IP sprawdź:

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

To jest dla Solaris 10 i Ubuntu 16.04, ale powinno być łatwe do dostosowania.

rofrol
źródło
2
Dzięki, udało mi się włączyć przekierowanie portów VirtualBox i mogę się połączyć przez ssh localhost -p 7022.
Thomas Hunter
Fajnie, spedycja portów działała jak urok. Chociaż zrobiłem konfigurację w GUI Virtualbox, a nie za pomocą VBoxManage. Tam też musisz ustawić adres IP hosta i gościa, który powinien wynosić odpowiednio 127.0.0.1 i 10.0.2.15.
Sebastian Ganslandt
Niewielka edycja pierwszego zdania. Powinien brzmieć: VirtualBox> Ustawienia> Sieć> „Sieci tylko hosta”> Dodaj (dostaniesz vboxnet0)
Steve Swinsburg
Zrobiłem to wszystko dla konfiguracji samego hosta, a kiedy próbuję ssh z mojego hosta, po prostu zawiesza się (aż upłynie limit czasu). Czy jest coś jeszcze?
Chris Westin
37

Pomiędzy dwoma komputerami z systemem Linux (32-bitowym hostem Ubuntu i 64-bitową maszyną Wirtualną Ubuntu) udało mi się uruchomić ssh przy użyciu tego przekierowania portów:

wprowadź opis zdjęcia tutaj

Następnie z systemu hosta uruchom

ssh -p 5679 127.0.0.1

Zamień 5679na „Port hosta” wpisany w Regułach przekierowania portów.

719016
źródło
8
Zrobiłem dokładnie to samo, bez wpisywania „Host IP” i „Guest IP”.
Damien Cassou
W moim przypadku obraz ubuntu nie przyszedł z zainstalowanym ssh (oczekiwałbym). Więc uruchomiłem „apt-get install openssh-server” i byłem w stanie połączyć się z „ssh -p 5679 localhost”. Na podstawie innych komentarzy nie podałem adresu IP hosta ani gościa.
Pierre-Antoine
2

Jeśli nie chcesz zadzierać z przekierowaniem portów, możesz skonfigurować adapter tylko do hosta, który pojawia się jako interfejs hosta, a następnie dodać adres IP w tej podsieci do gościa.

Kroki:

  • Utwórz sieć tylko hosta w Virtualbox (GUI -> ustawienia -> sieć). Wpisz ifconfighosta i zobacz coś w stylu vboxnet0zinet 192.168.50.1
  • w gościu dodaj adres IP: ifconfig eth1 192.168.50.101 netmask 255.255.255.0 up
  • w hoście, wykonaj ssh [email protected]

Dalsza lektura:

Ben Creasy
źródło
1

Lepiej skonfiguruj wirtualną kartę sieciową w trybie NAT, jeśli poruszasz się dość często. Korzystając z NAT, host (komputer) staje się serwerem DHCP i routerem dla sieci prywatnej utworzonej dla systemów-gości. Jestem pewien, że możesz ustawić adres statyczny również za pomocą NAT ...

Myślę jednak, że najlepszym rozwiązaniem jest ustalenie, dlaczego rozpoznawanie nazw nie działa dla maszyny wirtualnej gościa :)

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

Jan
źródło
2
Konfiguruję tryb NAT, a mój gość ma przypisany adres IP 10.0.2.15. Jednak z hosta (którego adres IP to 192.168.1.120) nie mogę dotrzeć do gościa. Przewodnik był w stanie wyjaśnić mi różne tryby, ale wydawało się, że nie ma rozwiązania mojego problemu.
Thomas Hunter
0

Bardzo pomocny, skieruj mnie we właściwym kierunku. Dzięki.

Musiałem przejść do> VirtualBox> Plik> Menedżer sieci hosta> vboxnet0> Ręcznie skonfiguruj adapter> Adres IPv4 i ustaw go na ifconfig gościa. Z jakiegoś powodu gospodarz i gość podawali mi różne adresy IP.

Jest wspomniane, ale mówiąc wprost, musiałem ustawić port przekierowania portów na 127.0.0.1 na 5679, a nie domyślny port ssh 22, ponieważ jest już używany przez własną komunikację ssh hosta.

remkohdev
źródło