Dostęp do SSH spoza sieci lokalnej
Nie zawsze jesteśmy podłączeni do sieci lokalnej, a zdarza się tak, że potrzebujemy uzyskać dostęp do serwera. Udostępnianie serwera na zewnątrz jest zawsze ryzykowne w kontekście bezpieczeństwa jego i przy okazji całej naszej sieci, łącznie z urządzeniami w niej się znajdującymi. Dlatego też proponuję się dwa razy zastanowić czy jest to nam faktycznie potrzebne. W dzisiejszym wpisie opiszę jak zrobić to najłatwiej. Odkryjemy jedynie port SSH, co z uwagi na wykorzystywanie przez nas kluczy SSH nie powinno być wielkim zagrożeniem bezpieczeństwa. Dostęp do serwera znacznie lepiej jest zrealizować poprzez zestawienie swojego komputera z routerem poprzez VPN, ale nad tym pochylimy się w innym wpisie.
Co będzie nam potrzebne?
Do realizacji połączenia z serwerem spoza sieci lokalnej musimy:
1. znać zewnętrzny adres IP swojej sieci domowej, do tego potrzebujemy posiadać wykupiony u naszego dostawcy internetu (ISP) stały adres IP lub jeżeli nie mamy to trzeba się podpierać usługą Dynamic DNS np. noip.com,
2. posiadać dostęp administratora do routera, który umożliwia przekierowanie portów a.k.a. port forwarding (w moim przypadku będzie to Mikrotik i to właśnie na nim wszystko pokażę).
Konfigurujemy przekierowanie portu na routerze Mikrotik
W pierwszej kolejności musimy zalogować się jako administrator do naszego routera Mikrotik. W tym celu otwieramy przeglądarkę i wpisujemy adres 192.168.88.1. To domyślny adres dla urządzeń Mikrotik, jeżeli zmieniliście adresowanie podsieci to adres routera można na szybko ustalić wpisując w terminal:netstat -nr | grep default
W rezultacie otrzymamy następujące informacje:default 192.168.88.1 UGScg en0
Gdzie zaznaczony adres IP to właśnie adres naszego routera. Po wpisaniu go w przeglądarkę powinniśmy zostać przeniesieni do strony logowania, na której wpisujemy login i hasło administratora. Otwiera nam się panel zarządzania routerem. Przechodzimy do „IP -> Firewall” i konkretnie zakładki „NAT”. Przyciskiem „Add new” dodajemy nowy wpis.
Wypełniamy następujące pola:Chain: dstnat
Dst. Address: [tutaj wpisujemy nasz zewnętrzny adres IP np. 217.74.65.23 (pozdro dla kumatych 🙃)]
Protocol: 6 (tcp)
Dst. Port: [port, który chcemy otworzyć np. 4321]
[...]
Action: dst-nat
To Addresses: [adres naszego serwera w sieci lokalnej np. 192.168.88.7]
To Ports: [port SSH, który ustawiliśmy w tym wpisie, czyli 1234]
[...]
Comment: [dobrze jest tutaj opisać do czego to służy np. "Dostep SSH z zewnatrz do serwera odroid"]
Zapisujemy konfigurację przyciskiem „Apply” znajdującym się na górze i wychodzimy z nowego wpisu przyciskiem „OK”.
Przy takim ustawieniu każdy zewnętrzny ruch, który przyjdzie na adres i port routera 217.74.65.23:4321 zostanie, przy użyciu protokołu TCP, przekierowany na 192.168.88.7:1234, a jak wiemy jest to port SSH naszego serwera.
Co w przypadku kiedy macie inny router? Wystarczy wklepać jego model plus frazę „port forwarding” do wujaszka Google, a na pewno znajdziecie milion poradników.
Łączymy się z serwerem spoza sieci lokalnej
Polecenie, którego używaliśmy do łączenia się z serwerem będąc w sieci lokalnej dalej będzie działać, jednak nie ma potrzeby używać dwóch, bo to które za chwilę przedstawię będzie działało zarówno gdy będziemy poza siecią lokalną jak i w niej:ssh -p 4321 odroid@217.74.65.23
Oczywiście numer portu jak i adres IP podmieńcie na swoje.
Jeżeli chodzi o klucze SSH to oczywiście dostaniemy komunikat, że fingerprint serwera się nie zgadza, ale poza tym nie musimy nic robić, bo klucze powinny zostać dopasowane samoczynnie, gdyż suma sumarum host będzie widział, że łączymy się tak naprawdę z tym samym serwerem co wcześniej.
Jeżeli materiał zawarty w tym wpisie jest dla Ciebie wartościowy i masz ochotę wesprzeć moją pracę to zapraszam na mój profil na >Patronite<. Zachęcam także do odwiedzenia mojej strony >tomaszdunia.pl<. Możesz także zagadać do mnie na Twitterze >@theto3k<.
Poprzedni wpis:
Kopia zapasowa całego serwera
Następny wpis:
Pi-hole – twój prywatny serwer DNS, czyli adblocker
Kategorie: Dla początkujących,Poradniki - @ 2022-06-13 21:00
Tagi: Adres IP, DDNS, dstnat, Dynamic DNS, firewall, Mikrotik, nat, noip, ODROID, port forwarding, przekierowanie portu, RaspberryPi, SSH, tcp, ubuntu