Jeśli masz już zainstalowany system Linux (w naszym przykładzie Debian) w maszynie wirtualnej (tutaj omawiamy VirtualBox) to możesz nim zarządzać z konsoli zdalnie za pomocą połączenia ssh i program np putty.
1. Program putty pobierzesz z tego miejsca, instalacja nie jest wymagana
2. Interfejs sieciowy maszyny wirtualnej ustaw w trym mostkowany (ang. bridged) aby miała bezpośredni dostęp do twojej sieci fizycznej. Uważaj jednak, jeśli na tej maszynie masz jakieś usługi sieciowe np serwer DHCP może to ‚namieszać’ w Twojej sieci. W tym wypadku pozostań przy trybie NAT.
a. Dostęp bezpośredni czyli sieć mostkowana
– w maszynie wirtualnej ustaw interfejs sieciowy na mostkowany
– kolejno ustaw wybrany (zapewne jeden) interfejs sieciowy na mostkowany (bridged)
– teraz trzeba sprawdzić jak ustawiony jest interfejs sieciowy Debiana pracującego w maszynie, generalnie po instalacji (a to tu omawiamy) jest ustawiony na klienta DHCP czyli automatyczne pobieranie adresu IP
– zaloguj się do Debiana (najlepiej na konto root) i wydaj polecenie
#ip address show
– możesz też użyć skrótowej formy
#ip a
– zobaczysz jaki masz przydzielony adres IP
– interfejsy sieciowe są numerowane od 1 (pierwszy to pętla zwrotna, nas tu nie interesuje), jeśli wykonano standardowa instalację Debiana to masz jeden interfejs o numerze 2 i zazwyczaj będzie on miał nazwę ‚enp0s3’
– sprawdź jaki ma adres IP, jeśli coś w stylu 10.0.2.15/24 to oznacza, że system Debian nadal ma przypisany adres z trybu NAT, to się zdarza, czasem maszyna wirtualna nie zorientuje się, że coś jej zmieniono
– aby pobrać nowy adres z linii poleceń wydaj komendę:
#dhclient enp0s3
– pozwoli to odnowić adres IP w systemie, jeśli w Twojej sieci działa serwer DHCP (a zapewne działa) to po chwili (czasem aż kilkadziesiąt sekund) system otrzyma poprawny adres, sprawdź to poleceniem ‚ip a’
#ip a
– jeśli system Debian (lub inny w maszynie) pokazuje nadal poprzedni adres możesz maszynę przeładować, to zazwyczaj pomaga
– jeśli adres jest poprawny przejdź do punktu 3 tego opisu, gdzie zalogujemy się zdalnie
b. Tryb NAT
– w tym trybie aby zalogować się do Debiana w maszynie wirtualnej przez sieć trzeba wykonać tzw. przekierowanie portów ponieważ NAT blokuje dostęp od strony sieci LAN
– wejdź na kartę danego interfejsu sieciowego (Ustawienia maszyny / Sieć)
– przejdź do Zaawansowane
– wejdź w Przekierowania portów
– w oknie jakie się otworzy (w minimalnej) konfiguracji trzeba wpisać port hosta i port docelowy; port hosta to port na jakim VirtualBox będzie nasłuchiwał natomiast port docelowy to port na jaki ruch zostanie przekazany; port docelowy jest w maszynie wirtualnej i w naszym wypadku musi to być port TCP numer 22 czyli usługa serwera ssh
– po zatwierdzeniu można się zalogować na usługę ssh pracującą za NAT w maszynie wirtualnej; logujemy się na adres IP hosta, może to być adres IP jaki host ma przydzielony lub może to być adres pętli zwrotnej, portem na jaki wykonamy połączenie jest port 10000 czyli taki port jaki został ustalony w przekierowaniu
– usługa NAT programu VirtualBox wygląda jak niżej:
3. Zdalne logowanie do systemu Debian
– mamy już program putty, wiemy już jaki adres IP posiada maszyna wirtualna, możemy się zalogować po sieci za pomocą ssh
– uruchamiamy pytty i wpisujemy adres maszyny wirtualnej, protokół SSH
– jeśli teraz po naciśnięciu Open pojawi się okno błędu
– to prawdopodobnie na Debianie nie jest zainstalowany serwer SSH; tak może być gdy podczas instalacji nie był on wybrany lub w danej wersji Debiana nie był uwzględniony w obrazie instalacyjnym
– doinstalujemy zatem serwer SSH
– w wierszu poleceń Debiana, z konta root wykonajmy polecenie:
#systemctl status ssh
– jeśli otrzymamy informację, że taka usługa nie może być znaleziona to znaczy, że nie jest zainstalowana
– najpierw warto wykonać uaktualnienie pakietów instalacyjnych poleceniem
#apt-get update -y
– kolejno instalujemy serwer ssh poleceniem
#apt-get install ssh -y
– po instalacji ponownie sprawdzamy czy działa
#systemctl status ssh
– teraz jest ok, możemy się logować za pomocą ssh
– ponownie próbujemy zalogować się za pomocą putty
– powinna pojawić się informacja od serwera ssh (cyfrowy odcisk palca tego konkretnego serwera), klikamy w Yes
– i pojawia się możliwość zalogowania
– musimy logować się jednak teraz nie na konto ‚root’ ale na konto zwykłego użytkownika (był utworzony podczas instalacji, w naszych przykładach bło to jnowak); takie domyślne ustawienia ma serwer ssh na Debianie, że ze względów bezpieczeństwa nie pozwala na zdalne logowanie bezpośrednio na użytkownika ‚root’ (można to oczywiście zmienić)
– logujemy się zatem na jnowak
– i już jesteśmy na konsoli systemu pracującego w maszynie wirtualnej
– można pracować jak na zwykłym systemie
– możemy teraz przelogować się na konto root za pomocą polecenia:
#su –
– aby zakończyć pracę w konsoli i odłączyć się Debiana naciśnij CTRL-D lub wpisz w konsoli ‚exit’ i naciśnij enter
– jeśli z konta jnowak zalogowano się na root to exit trzeba będzie wpisać dwa razy ponieważ polecenie to po prostu wyloguje z aktualnej sesji
– aby całkowicie wyłączyć system Debian wpisz w linii poleceń (z konta root)
#poweroff
Pracując z programem putty mamy możliwość kopiowania tekstów do/ze schowka między Debian a system hosta, czego nie umożliwia praca w oknie VirtualBox (domyślnie, ponieważ jest coś takiego jak dodatki gościa, które ten problem rozwiązują ale to inny temat).