Jak skonfigurować przekazywanie portów w VirtualBox

Jak skonfigurować przekazywanie portów w VirtualBox

VirtualBox to powszechnie używana platforma wirtualizacji do tworzenia i zarządzania maszynami wirtualnymi. Chociaż jest to platforma typu open source, niektóre komponenty zamknięte są również zawarte w innym pakiecie rozszerzeń. Jest bezpłatny do użytku, ale możesz kupić licencję Oracle VM VirtualBox Extension Pack Enterprise, jeśli chcesz go używać do celów komercyjnych i wymagać standardowego oficjalnego wsparcia.

Gdy nowa maszyna wirtualna jest tworzona w VirtualBox, domyślny tryb sieciowy jest ustawiony na tłumaczenie adresu NAT lub sieci. Tryb NAT ma swoje własne zalety i ograniczenia w stosunku do innych trybów sieciowych. Zasadniczo Nat jest bezpieczniejszy, ale jednocześnie bardziej skomplikowany, jeśli chodzi o konfigurowanie komunikacji między innymi maszynami wirtualnymi i światem zewnętrznym. Jeśli chcesz, aby maszyna wirtualna uzyskała zarówno bezpieczeństwo, jak i dostęp do określonych usług w trybie NAT, będziesz potrzebować pomocy przekazywania portów. W ten sposób maszyna wirtualna pozostanie odizolowana od innych, ale nadal uzyskuje dostęp do określonych usług.

Co obejmiemy?

W tym przewodniku zobaczymy, w jaki sposób możemy skonfigurować przekazywanie portów w VirtualBox za pomocą metod graficznych i wiersza poleceń. Użyjemy Ubuntu 20.04 WIRTUALNA MASZYN w tym celu. Aby sprawdzić, czy konfiguracja działa, ustawimy przekazanie portów na naszej maszynie wirtualnej dla SSH Acces. Przejdźmy do tej konfiguracji bez dalszych ado.

Warunek wstępny

  1. VirtualBox zainstalowany na komputerze hosta.
  2. Ubuntu 20.04 Maszyna wirtualna działająca wewnątrz VirtualBox.
  3. OpenSsh-Server zainstalowany na gościnnej maszynie wirtualnej.
  4. OpenSsh-Client zainstalowany na komputerze hosta.

Pierwsze kroki z przekazywaniem portów

Metoda 1. Przekazywanie portów za pomocą graficznego interfejsu VirtualBox

Krok 1. Z lewej panelu okna głównego VirtualBox wybierz maszynę wirtualną z listy. Teraz kliknij prawym przyciskiem myszy nazwę maszyny wirtualnej i wybierz opcję „Ustawienia” lub wybierz ikonę „Ustawienia” z prawego panelu.

Krok 2. W nowym oknie wyskakującym wybierz etykietę odpowiadającą „sieciom.„Teraz kliknij ikonę strzałki dołączoną do etykiety odpowiadającej opcji„ Advanced ”.

Krok 3. Kliknij przycisk „Przekazywanie portu”. Pojawi się nowe okno wyskakujące. Tutaj użyj ikony „+”, aby dodać nową regułę.

Krok 4. W polach tekstowych odpowiadających różnym etykietom wypełnij różne szczegóły nowej reguły. Użyliśmy następnego:

Nazwa (nazwa usługi): Ssh

Protokół: TCP

Host ip: Adres IP komputera hosta

Port hosta: Port na komputerze hosta, do którego żądanie gościa zostanie przekazane.

Gość ip: Adres IP maszyny gości

Port gości: Domyślny port usługi działającej na komputerze gości.

W tym przewodniku, ponieważ używamy usługi „SSH” przez protokół „TCP”, port gości będzie 22. Nasz port hosta, jak już powiedziano, to 9099. Pozostawiamy gościa pustego IP, aby automatycznie pobierać adres IP z VirtualBox. W ten sam sposób kolumna IP hosta jest pusta, ponieważ będzie to równoważne 0.0.0.0; Oznacza to, że każda maszyna, która ma dostęp do hosta przez port 9099, może również uzyskać dostęp do SSH do maszyny wirtualnej gościa.

Po zakończeniu powyższych kroków zapisz te ustawienia, naciskając przycisk OK.

Testowanie konfiguracji

Zanim spróbujesz SSH w maszynie wirtualnej gości, upewnij się, że serwer OpenSSh jest na niej zainstalowany. Jeśli nie jest, możesz go zainstalować za pomocą polecenia:

$ sudo apt install openSsh-server

Krok 1. Spróbuj SSH VM gości z hosta na porcie 9099. W tym celu użyj polecenia:

$ sudo ssh -l „nazwa użytkownika” 0.0.0.0 -p 9099

'nazwa użytkownika'to nazwa użytkownika w maszynie wirtualnej gościa.

Metoda 2. Przekazywanie portów za pomocą interfejsu wiersza poleceń

Innym sposobem skonfigurowania przekazywania portów jest użycie VBOXMANAGE VirtualBox narzędzie wiersza polecenia. Tutaj pokażemy, jak to działa:

Krok 1. Wymień wszystkie maszyny wirtualne na komputerze hosta za pomocą polecenia:

Lista VboxManage VMS

Z powyższego rysunku widać, że pokazuje dwa wirtury: i) Fedora 34 ii) Ubuntu 20.04.

Krok 2. Teraz użyj poniższego formatu, aby przekazywać porty Jeśli maszyna wirtualna jest zasilana :

VboxManage ControlVM „VM Nazwa” Natpf1 „Guestssh, TCP ,, 2222 ,, 22”

Jeśli maszyna wirtualna jest wyłączona, użyj:

VBOXMANAGE MODIFYVM „VM Nazwa” -natpf1 „Guestssh, TCP ,, 2222 ,, 22”

Teraz ponownie, spróbuj zalogować się z poleceniem Thye:

sudo ssh -l 'nazwa użytkownika '0.0.0.0 -p 2222

Tutaj „Nazwa VM” to nazwa maszyny wirtualnej, którą uzyskaliśmy w powyższym kroku. „Nazwa użytkownika” to nazwa użytkownika w VM gościa.

Wniosek

VirtualBox to dobry wybór do rozwoju i testowania, ponieważ może pomóc zaoszczędzić czas i pieniądze. Polecenie vBoxManage jest wygodne, ponieważ możemy kontrolować (start, zatrzymać, zawiesić) maszyny wirtualne z wiersza poleceń. Jest to szczególnie pomocne, gdy graficzny dostęp do serwera VM nie jest dostępny w centrum danych. Ten przewodnik jest testowany na Ubuntu 20.04, ale powinien działać na dowolnym komputerze, który obsługuje dostęp SSH.