Nawiązywanie połączenia SSH

Konfiguracja użytkownika

  1. Przejdź do Zarządzanie > Użytkownicy i kliknij Dodaj użytkownika.

  2. Podaj nazwę (np. Tunnel_User) i kliknij Zapisz.

  3. Wybierz metodę uwierzytelnienia użytkownika:

    • Wybierz np: Hasło statyczne z listy rozwijanej Dodaj metodę uwierzytelnienia.

    • Wpisz hasło dla tworzonego użytkownika (np: TestPassw0rd).

    • Kliknij Zapisz, aby zamknąć okno dialogowe.

  4. Kliknij Zapisz i wyjdź.

Tworzenie gniazda nasłuchiwania

  1. Wybierz z lewego menu Zarządzanie > Gniazda nasłuchiwania i kliknij Dodaj gniazdo nasłuchiwania.

  2. Wprowadź unikalną nazwę (np: SSH_Tunnel).

  3. Przejdź do zakładki Ustawienia i w polu Protokół wciśnij przycisk SSH.

  4. W sekcji Tryb połączenia wybierz Tunel.

  5. Z listy Adres lokalny wybierz adres IP i port (np: 3455).

  6. Kliknij Zapisz.

Uwaga

W polu Klucze widoczne są wygenerowane klucze SSH, TLS i Standard RDP Security oraz certyfikat TLS wymagane do prawidłowej pracy gniazda typu „Tunel”.

Konfiguracja serwera SSH

  1. Wybierz z lewego menu Zarządzanie > Serwery i kliknij + Dodaj serwer

  2. Wprowadź nazwę (np: SSH_Tunnel_Server).

  3. W sekcji Ustawienia, wybierz SSH jako protokół.

  4. W sekcji Miejsce przeznaczenia: - Wybierz Host, IPv4 lub IPv6. - Wprowadź adres i port (np: 192.168.0.100, port: 22).

  5. Kliknij Zapisz i wyjdź.

Konfiguracja konta

  1. Wybierz Zarządzanie > Konta, a następnie kliknij Dodaj konto.

  2. Podaj nazwę (np: Tunnel_Account).

  3. W zakładce Ustawienia, w polu Typ, wybierz REGULAR.

  4. W sekcji Cel, wybierz serwer SSH_Tunnel_Server.

  5. W sekcji Dane uwierzytelniające: - Wprowadź login (np: admin). - Kliknij przycisk w sekcji Zastąp tajemnicę, wybierz np: Hasło, i podaj hasło.

  6. Kliknij Zapisz, a następnie Zapisz i wyjdź.

Konfiguracja sejfu

  1. Wybierz Zarządzanie > Sejfy, a następnie kliknij Dodaj sejf.

  2. Wprowadź nazwę (np: Tunnel_Safe), kliknij Zapisz.

  3. W zakładce Użytkownicy, kliknij Zarządzaj użytkownikami i zaznacz użytkownika Tunnel_User.

  4. Kliknij Zapisz.

  5. W zakładce Konta, kliknij Zarządzaj kontami i zaznacz Tunnel_Account.

  6. Kliknij Zapisz.

  7. Wybierz Tunnel_Account, kliknij Zarządzaj gniazdami nasłuchiwania, wybierz SSH_Tunnel.

  8. Kliknij Zapisz a następnie Zapisz i zamknij.

Konfiguracja PuTTY

  1. Uruchom PuTTY.

  2. W polu Host Name wpisz <Fudo_user>@<Fudo_IP_address>, czyli w tym przypadku Tunnel_User@10.0.228.184.

  3. W polu Port podaj port gniazda nasłuchiwania typu Tunel utworzonego we wcześniejszych krokach (w tym przypadku 3455).

../../_images/putty_general_3.png
  1. Przejdź do zakładki SSH i zaznacz opcję Don’t start a shell or command at all.

../../_images/putty_general_2.png
  1. Przejdź do zakładki Tunnels i dodaj przekierowanie portów (Forwarded ports):

    • W polu Source port wpisz numer portu, który chcesz przekazać (np: 3455).

    • W polu Destination wpisz adres serwera docelowego oraz port w formacie <destination_server_address>:<port> (w tym przypadku 192.168.0.100:22).

    • Kliknij przycisk Add.

../../_images/putty_general_4.png
  1. Wróć do zakładki Sessions, zapisz konfigurację.

../../_images/putty_general_5.png
  1. Kliknij Open.

  2. W wyświetlonym terminalu wpisz hasło użytkownika Fudo utworzonego na początku instrukcji (TestPassw0rd).

  3. Tunel został zestawiony.

  4. Uruchom nowe okno terminala i wpisz komendę w podanym poniżej formacie, aby nawiązać połączenie z serwerem 192.168.0.100 przez zestawiony tunel.

ssh -l "<Fudo_user>#<Server_user>#<Server_address>" localhost -p <Tunnel_listener_port>

Przykład:

ssh -l "Tunnel_User#admin#192.168.0.100" localhost -p 3455

Połączenie bez uycia PuTTY

Połączenie przy użyciu tunelu można również zestawić bez pośrednictwa PuTTY używając w terminalu poniższych komend:

  • Zestawienie tunelu SSH:

ssh -N -l <Fudo_user> <IP_Fudo> -p <Listener_port_tunnel> -L <Listener_port_tunnel>:<Server_address>:<server_port>
  • Nawiązanie połączenia przez zestawiony tunel SSH:

ssh -l '<Fudo_user>#<server_user>#<server_address>' localhost -p <Listener_port_tunnel>

Wyjaśnienie opcji:

  • -N: umożliwia ustanowienie połączenia SSH bez uruchamiania zdalnych komend ani otwierania powłoki.

  • -l: pozwala określić nazwę użytkownika, z którą zostanie nawiązane połączenie SSH.

  • -p: określa port, na którym nasłuchuje serwer SSH.

Można również rozważyć użycie poniższych opcji:

  • -f: uruchamia połączenie SSH w tle, często używane z opcją -N do tunelowania.

  • -n: przekierowuje standardowe wejście (stdin) na /dev/null, co jest przydatne przy pracy w tle.

Przykład:

ssh -N -l Tunnel_User 10.0.228.184 -p 3455 -L 3455:192.168.0.100:22
ssh -l 'Tunnel_User#admin#192.168.0.100' localhost -p 3455

Wygląd listy sesji

Po nawiązaniu połączenia, w zakładce Zarządzanie > Sesje pojawi się wpis dotyczący sesji zestawionej wewnątrz tunelu. Widoczne będą następujące informacje:

  • Nazwa użytkownika Fudo (również jeśli użyto konta typu anonymous),

  • Protokół sesji,

  • Adres serwera docelowego,

  • Nazwa konta użytego do nawiązania połączenia,

  • Nazwa sejfu,

  • Czas rozpoczęcia i zakończenia sesji,

  • Czas trwania sesji.

../../_images/5-6-tunnel-session-list.png