SSH umożliwia dwóm komputerom komunikację i szyfrowanie udostępnianych danych. Jest to powszechnie stosowana metoda bezpiecznego dostępu do zdalnych terminali serwerów i przesyłania plików.
SSH może być również używany do tworzenia bezpiecznego tunelu komunikacyjnego między komputerami w celu przekazywania innych połączeń sieciowych, które nie są normalnie szyfrowane, technika zwana tunelowaniem SSH (lub przekierowaniem portów).
Oto kilka typowych scenariuszy, w których będziesz używać SSH tunelowanie lub przekierowanie portów:
- Jeśli port zdalnej usługi, do której próbujesz uzyskać dostęp, jest zablokowany w zaporze.
- Chcesz bezpiecznie połączyć się z usługą, która z natury nie korzysta z szyfrowania i wielu innych.
Na przykład, jeśli chcesz połączyć się ze zdalnym PostgreSQL klaster bazy danych działający na porcie 5432 na serwerze A , ale ruch do tego portu jest dozwolony tylko z serwera B (do którego masz dostęp SSH). Możesz kierować ruch przez połączenie SSH (tunel) przez serwer B aby uzyskać dostęp do klastra bazy danych.
W tym przewodniku założono, że masz pgadmin4 i DBeaver narzędzia do zarządzania bazami danych zainstalowane w systemie Linux, w przeciwnym razie zapoznaj się z tymi przewodnikami:
- Jak zainstalować PostgreSQL i pgAdmin w CentOS 8
- Jak zainstalować PostgreSQL i pgAdmin w RHEL 8
- Jak zainstalować PgAdmin 4 Debian 10.11
- Jak zainstalować PostgreSQL i pgAdmin4 w Ubuntu 20.04
- Jak zainstalować PostgreSQL z pgAdmin4 na Linux Mint 20
- Jak zainstalować DBeaver Universal Database Tool w systemie Linux
Skonfiguruj tunelowanie SSH w pgadmin4
Otwórz pgadmin4 aplikacji i zacznij od utworzenia nowego połączenia z serwerem, przejdź do Obiekty kartę, a następnie kliknij Utwórz i kliknij Serwer . W wyskakującym okienku w sekcji Ogólne wprowadź nazwę serwera, jak pokazano na poniższym zrzucie ekranu.


Następnie kliknij Połączenie aby wprowadzić ustawienia połączenia z bazą danych. Wprowadź adres IP serwera bazy danych lub FQDN (w pełni kwalifikowana nazwa domeny). Następnie ustaw port, nazwę bazy danych, nazwę użytkownika bazy danych i hasło użytkownika.
Możesz zaznaczyć opcję Zapisz hasło, aby przechowywać hasło lokalnie, dzięki czemu nie będziesz proszony o wprowadzenie go za każdym razem, gdy próbujesz połączyć się z bazą danych.


Następnie kliknij tunel SSH patka. Włącz opcję „Użyj tunelowania SSH ”, wprowadź hosta tunelu, port tunelu, nazwę użytkownika SSH. Następnie wybierz Uwierzytelnianie wpisz (hasło lub plik tożsamości).
Zalecamy korzystanie z uwierzytelniania za pomocą klucza publicznego, więc wybierz PLIK TOŻSAMOŚCI i wybierz plik klucza prywatnego z komputera lokalnego. Następnie kliknij ZAPISZ jak zaznaczono na poniższym zrzucie ekranu.


Jeśli podane ustawienia i poświadczenia zarówno połączenia z bazą danych, jak i tunelu SSH są poprawne i ważne, tunel i połączenie z bazą danych powinny zostać pomyślnie ustanowione.


Skonfiguruj tunelowanie SSH w DBeaver
Po uruchomieniu DBeaver , przejdź do Bazy danych kartę, a następnie kliknij Nowe połączenie z bazą danych jak pokazano na poniższym zrzucie ekranu.


Wybierz sterownik bazy danych z listy, jak pokazano na poniższym zrzucie ekranu, a następnie kliknij Dalej .


Teraz wprowadź ustawienia połączenia z bazą danych, adres IP hosta bazy danych lub nazwę FQDN, nazwę bazy danych, nazwę użytkownika bazy danych i hasło użytkownika, jak pokazano na poniższym zrzucie ekranu. Następnie kliknij SSH aby przejść do ustawień połączenia tunelowego, jak wyjaśniono w następnym kroku.


Włącz SSH, zaznaczając Użyj tunelu SSH opcja. Wprowadź hosta tunelu, port tunelu, nazwę użytkownika połączenia SSH i wybierz Uwierzytelnianie metoda.
Jak zawsze zalecamy używanie Publicznego uwierzytelnianie klucza. Następnie wybierz lub wprowadź ścieżkę do swojego klucza prywatnego. Następnie kliknij Zakończ, jak zaznaczono na poniższym zrzucie ekranu.
Uwaga :Jeśli Twój klucz prywatny zawiera hasło, musisz je podać.


Jeśli połączenie z bazą danych i ustawienia tunelu SSH są poprawne i prawidłowe, połączenie powinno się udać. Teraz możesz bezpiecznie pracować ze zdalną bazą danych.


Aby uzyskać więcej informacji, zapoznaj się z dokumentacją pgadmin4 lub dokumentacją połączenia DBeaver SSH.