Wielu dostawców hostingowych pozwala na łączenie się z serwerem poprzez protokół FTP, a także dodatkowo przy użyciu SSH. W artykule tym omówię czym jest SSH, a także jak połączyć się z serwerem wykorzystując SSH w Linuxie oraz Windows 10/11.
Czym jest SSH i jak działa?
SSH (Secure Shell) jest to protokół komunikacyjny używany do bezpiecznego połączenia z serwerem. SSH to zbiór zasad wg których taka komunikacja się odbywa. SSH jest często wykorzystywany do zdalnego logowania i zarządzania serwerem z wykorzystaniem połączenia terminalowego.
W przeciwieństwie do protokołu FTP czy Telnet, dane przesyłane za pomocą SSH są szyfrowane. Natomiast uwierzytelnianie użytkowników zachodzi na wielu poziomach. Domyślnym algorytmem szyfrowania jest RSA. Oczywiście istnieje także możliwość szyfrowania danych za pomocą słabszego algorytmu DSA.
Protokół SSH ma za zadanie umożliwić bezpieczną i zaszyfrowaną komunikację pomiędzy klientem a serwerem. Połączenie można zestawić na dwa sposoby:
- Za pomocą loginu i hasła (ten sposób pokażę w dalszej części artykułu) – klient SSH łączy się z serwerem i przekazuje dane uwierzytelniające (nazwę użytkownika i hasło) w formie zaszyfrowanej, co chroni je przed przechwyceniem przez osoby niepowołane. Po pomyślnym uwierzytelnieniu użytkownika, SSH pozwala na zdalne wykonywanie poleceń na serwerze, zapewniając jednocześnie ochronę danych przesyłanych podczas całej sesji.
- Za pomocą klucza prywatnego i publicznego – użytkownik tworzy parę kluczy (publiczny i prywatny) na swoim komputerze. Oba klucze są powiązane ze sobą. Klucz publiczny jest umieszczany na serwerze, a klucz prywatny pozostaje na komputerze użytkownika i jest przez niego chroniony. Klient SSH nawiązuje połączenie z serwerem. Serwer weryfikuje, czy klucz publiczny i prywatny są ze sobą powiązane. Jeśli tak, nawiązuje szyfrowaną sesję. W tym momencie użytkownik może wykonywać polecenia na serwerze bez podawania hasła (chyba, że zostało ustawione dodatkowe hasło).
Warto podkreślić fakt, że klucze zapewniają większe bezpieczeństwo, gdyż są dużo trudniejsze do złamania niż zwykłe hasło.
Historia i wersje SSH
SSH zostało opracowane w 1995 roku przez Tatu Ylönena, fińskiego naukowca, który pracował na Uniwersytecie Technicznym w Helsinkach. Ylönen stworzył SSH jako odpowiedź na problem bezpieczeństwa sieci, który pojawił się po ataku typu sniffing w sieci uczelni. Pierwsza wersja SSH, znana jako SSH-1, była przełomowa, ponieważ umożliwiała bezpieczne zdalne logowanie i przesyłanie danych, co do tej pory było realizowane przez protokoły takie jak Telnet i FTP, które nie oferowały szyfrowania.
W 1995 roku Ylönen założył firmę SSH Communications Security, aby komercjalizować swoją technologię. SSH szybko zyskało popularność i stało się powszechnie używanym narzędziem do zdalnego zarządzania serwerami. Do dnia dzisiejszego protokół ten jest nadal rozwijany.
SSH-1 (Secure Shell Version 1)
Pierwsza wersja protokołu SSH-1, była w użyciu od 1995 roku. SSH-1 wprowadził podstawowe mechanizmy szyfrowania i uwierzytelniania, które były wystarczające na tamte czasy. Jednak z czasem okazało się, że SSH-1 ma kilka poważnych problemów bezpieczeństwa, takich jak brak integralności danych i potencjalne podatności na ataki.
SSH-2 (Secure Shell Version 2)
W odpowiedzi na te problemy, w 2006 roku wprowadzono SSH-2. Ta wersja wprowadziła wiele ulepszeń w zakresie bezpieczeństwa i wydajności. SSH-2 oferuje silniejsze algorytmy szyfrowania oraz lepsze metody wymiany kluczy. Ponadto SSH-2 wprowadza możliwość otwierania wielu kanałów logicznych w ramach jednej sesji SSH, co zwiększa jego elastyczność i funkcjonalność.
OpenSSH
OpenSSH stworzono jako alternatywę dla oprogramowania SSH stworzonego przez Tatu Ylönen i dostępny jest na licencji open source.
Jak aktywować SSH w LH.pl
Pokażę Ci na przykładzie hostingu w LH.pl jak połączyć się z serwerem poprzez protokół SSH korzystając z loginu i hasła. Firma hostingowa LH.pl umożliwia aktywację SSH w pakietach Kiwi, Mango i Apple.
Jeśli nie masz jeszcze hostingu, polecam Ci serwer w LH.pl. Z kodem rabatowym LH-MONIKA otrzymasz 20% zniżki na swoje zamówienie.
Po zakupieniu hostingu zaloguj się do panelu klienta i przejdź do ustawień serwera: Serwery -> Ustawienia. Następnie w kafelku o nazwie „Dostęp SSH” kliknij przycisk WŁĄCZ:
Dostęp jest już aktywowany. W tym samym kafelku pojawi się informacja o hoście oraz numerze portu. Są to niezbędne informacje potrzebne do tego, żeby połączyć się z serwerem poprzez protokół SSH.
Oprócz powyższych informacji będzie nam jeszcze potrzebne hasło do głównego serwera FTP. Świeżo po opłaceniu hostingu w LH.pl otrzymasz maila w którym będą dane do logowania do FTP. Jednak dane te możesz też odczytać w panelu klienta. Przejdź do zakładki Serwery -> Ustawienia. Następnie w boksie o nazwie „Konta FTP” kliknij na strzałkę przy głównym koncie i wybierz opcję Zmień hasło.
Wpisz nowe hasło lub je wygeneruj:
Jak połączyć się z SSH w systemie Linux i Windows
Linux
Otwórz terminal i wpisz poniższą komendę. W miejscu XXXXXX wpisz numer swojego serwera, a w miejscu -p numer portu. W przypadku LH jest to 40022.
ssh serwerXXXXXX@serwerXXXXXXX.lh.pl -p 40022
Przykładowo mój serwer ma numer 249692.
Tak wygląda okno terminala po wpisaniu powyższej komendy:
Teraz wpisz yes i zatwierdź ENTEREM.
Następnie zostaniesz poproszona/poproszony o podanie hasła do głównego konta FTP:
I to wszystko. Jeśli podałaś/podałeś prawidłowe dane zostaniesz połączona/połączony z serwerem 🙂
Windows 10 /11
Jeśli korzystasz z Windowsa, do połączenia z serwerem poprzez SSH, możesz użyć narzędzia PowerShell. Wciśnij kombinację klawiszy Windows + R, aby wywołać okno uruchamiania. W okienku wpisz frazę powershell i naciśnij ENTER:
Pojawi się okno PowerShell. Wpisz w nim poniższą komendę. W miejscu XXXXXXX wpisz numer swojego serwera, a w miejscu -p numer portu. W przypadku LH jest to 40022.
ssh serwerXXXXXX@serwerXXXXXXX.lh.pl -p 40022
Następnie zostaniesz poproszona/poproszony o wpisanie hasła do głównego konta FTP:
Po poprawnym wpisaniu hasła pojawia się okno powitalne LH.pl co oznacza, że udało się poprawnie połączyć z serwerem:
Podsumowanie
SSH od swojego powstania w 1995 roku przeszedł długą drogę rozwoju. Od początkowej wersji SSH-1, która zrewolucjonizowała bezpieczną komunikację sieciową, do wersji SSH-2, która wprowadziła istotne usprawnienia w zakresie bezpieczeństwa i funkcjonalności. Dziś SSH jest nieodzownym narzędziem w zarządzaniu zdalnym serwerami i sieciami. Jego implementacje stosuje się w środowiskach produkcyjnych na całym świecie.