Zdalne połączenie w sieci lokalnej
Ostatnia aktualizacja: 19 września 2023, 14:44
Zdalne połączenie pomiędzy komputerami pozwala na wykonywanie pracy, zadań i innych czynności na komputerze, do którego nie mamy fizycznego dostępu. Dzięki zdalnemu połączeniu możemy kontrolować inne maszyny, co oszczędza przede wszystkim czas, jaki konieczny jest do dostania się do drugiej maszyny oraz wykonania zamierzonych zadań bez konieczności przeszkadzania w pracy użytkownikowi.
Zdalne połączenie w sieci lokalnej doskonale sprawdza się w sytuacjach konieczności zarządzania kilkoma komputerami podłączonymi do tego samego routera, np. w domu lub firmie. W przypadku zarządzania dwoma komputerami (swój i 1 zdalny), tego typu połączenie ma charakter raczej edukacyjny. W przypadku większej ilości, zdalne połączenie ma już konkretny sens. Niemniej jednak zachęcam do wypróbowania tej technologii, nawet w sieci domowej.
Niniejszy wpis odnosi się do maszyn (wszystkich) działających pod kontrolą dystrybucji Linux.
Wymagane oprogramowanie
I. Maszyna główna, z której będą prowadzone zdalne połączenia do innych maszyn wymaga zainstalowanych pakietów:
– ssh-client
– nmap (opcjonalnie)
II. Maszyna (maszyny), które będą kontrolowane z komputera głównego, wymaga:
– zainstalowanego pakietu 'ssh-server’
– wyłączenia zapory ogniowej – w wielu dystrybucjach Linux domyślnie instalowany jest pakiet UFW (Uncomplicated Firewall).
Należy sprawdzić czy UFW jest aktywny, poleceniem (jako root):
ufw status
W przypadku odpowiedzi:
Status: active
należy ją wyłączyć, poleceniem:
ufw disable
Tak przygotowana zdalna maszyna nie wymaga już naszego fizycznego kontaktu i wszelkie prace mogą być wykonywane zdalnie, z innego komputera.
1. Komputery podłączone do jednego routera, posiadają nadane im przez router adresy IP.
W pierwszej kolejności należy określić swój adres IP oraz maszyny, do której będzie wykonane zdalne połączenie.
Aby sprawdzić swoje IP, można zajrzeć do apletu Network Manager-a, znajdującego się w tacce systemowej-> „Informacje o połączeniu”.
Jeśli nie masz takiej możliwości, polecenie 'ifconfig’ (jako root) będzie pomocne.
Wynik: inet 192.168.x.x wyświetla twój wewnętrzny adres IP.
2. Kolejnym wymogiem jest konieczność posiadania adresu IP maszyny docelowej.
Można to sprawdzić w ten sam sposób, jak poprzednio, jeśli wciąż masz fizyczny dostęp do tej maszyny.
Jednakże, w przypadku przyznawania adresów IP przez routerowy serwer DHCP, ponowne włączenie komputera (komputerów) może spowodować przyznanie im innych adresów IP.
W takim wypadku proponuję używanie, np. programu Nmap.
Aby dowiedzieć się, jakie maszyny są podłączone do domowego/firmowego routera oraz jakie posiadają adresy IP, należy posłużyć się poleceniem (jako root):
nmap -sP xxx.xxx.x.*
np.:
nmap -sP 192.168.0.*
Jeśli nie majstrowałeś przy adresie IP routera, to domyślnie jego ostatnią cyfrą powinna być 1.
Jeśli tak, to adres: 192.168.0.1 możesz wykluczyć, tak samo jak swój adres IP, który już znasz.
Pozostały adres/adresy (w tym przypadku o końcówce 12) będzie właściwy dla maszyny docelowej.
Nawet jeśli adresy IP mogą być zmienne, po każdym ponownym uruchomieniu komputera (i/lub routera), to adres MAC będzie taki sam – warto go zapisać, aby w przyszłości przyporządkowywać adres MAC do zmiennego adresu IP.
3. Skoro znasz już adres maszyny docelowej, można spróbować się z nią połączyć, poleceniem (jako zwykły użytkownik):
ssh użytkownik@adres-IP
np.:
ssh pavroo@192.168.0.12
gdzie „użytkownik” lub „pavroo” oznacza nazwę użytkownika maszyny docelowej.
Można również użyć użytkownika 'root’ jeśli jest aktywny (w Ubuntu i jego klonach jest nieaktywny).
Pierwsze moje połączenie było odrzucone, z powodu… braku zainstalowanego pakietu 'ssh-server’ na maszynie docelowej.
W przypadku nawiązania połączenia, adres IP zostanie dodany do bazy zaufanych hostów.
Należy to potwierdzić wpisując 'yes’ oraz w następnej kolejności podać hasło użytkownika systemu docelowego.
4. Połączenie zostało nawiązane poprawnie.
Aby wykonać zadania administracyjnie na maszynie docelowej, należy zalogować się na konto administratora systemu, poleceniem:
su
podając hasło administratora (root) systemu docelowego, lub w przypadku Ubuntu i innych systemów z nieaktywnym kontem root:
sudo su
podając hasło użytkownika systemu docelowego.
Aby potwierdzić poprawność zalogowania do właściwej maszyny, możesz poleceniem 'ifconfig’ sprawdzić adres IP maszyny, do której się zalogowałeś.
Teraz masz pełny dostęp jako administrator do zdalnej maszyny, na której możesz wykonać swoje zadania.
Po zakończeniu pracy wyloguj się kombinacją klawiszy „Ctrl” + „d” lub poleceniem:
exit