Czym jest protokół komunikacyjny SSH i do czego możesz go wykorzystać? Usługa SSH w hostingu to synonim bezpieczeństwa. Dowiedz się, jak nawiązać takie połączenie i poznaj jego najważniejsze polecenia.
Spis treściDostęp SSH na koncie hostingowym może zostać wykorzystany na wiele rozmaitych sposobów. To szczególna gratka dla średnio- i zaawansowanych użytkowników. Każdemu natomiast może się ta opcja przydać, np. do wygodnego zarządzania plikami. Trzeba jedynie wiedzieć, w jaki sposób z niej korzystać. Istotne jest też prawidłowe przeprowadzenie instalacji i konfiguracji odpowiedniego programu.
Do nawiązania połączenia SSH niezbędne jest zaufane oprogramowanie. W praktyce więc wymaga to instalacji na komputerze odpowiedniego klienta. Co więcej, obsługa protokołu SSH odbywa się przy użyciu linii poleceń. Zarządzanie procesami wymaga więc znajomości odpowiednich komend. Na szczęście poznanie tych podstawowych nie zajmie Ci wiele czasu.
Z tego artykułu dowiesz się nie tylko tego, do czego służy SSH. Wyjaśnimy również, co jest istotne w połączeniu SSH i jak je odpowiednio skonfigurować z hostingiem. Na koniec przedstawimy słowniczek komend, wprowadzanych poprzez konsolę systemu Linux. Dzięki nim protokół komunikacyjny wykorzystywany będzie przez Ciebie w optymalny sposób.
Co to jest protokół SSH? Definicja
SSH (ang. Secure Shell) to protokół komunikacyjny wykorzystywany w sieciach TCP/IP. Jest następcą protokołu Telnet, a wykorzystywany jest do terminalowego łączenia się ze zdalnymi komputerami. Z pomocą protokołu SSH można m.in. wykonywać polecenia czy usuwać, dodawać, pobierać, wysyłać i kopiować pliki pomiędzy katalogami znajdującymi się na serwerze.
Korzystanie z protokołu SSH pozwala zastąpić konto FTP czy Telnet lepszym rozwiązaniem. Gwarantuje on bezpieczeństwo i szyfrowanie zarówno przesyłanych danych, jak i informacji dostępowych. Daje dostęp do serwera zdalnego z każdego komputera. Wystarczy tylko, że zainstalowane na nim zostanie oprogramowanie odpowiednie dla danego systemu operacyjnego.
Dostęp SSH w przypadku opłacania hostingu nie zawsze jest oczywisty. Często protokół SSH udostępniany jest wyłącznie użytkownikom korzystającym z nieco droższych pakietów. Jego możliwości bywają też ograniczone, w zależności od wykupionego wariantu. W przypadku serwerów dedykowanych lub VPS to synonim imponującej swobody. Daje możliwość wprowadzania dowolnych zmian. Plikami można zarządzać praktycznie w sposób nieograniczony i taki, jakiego potrzebujesz. Przy serwerach współdzielonych zwykle ta dowolność jest znacznie okrojona. Zależnie od hostingodawcy, niedostępne może być np.:
- zapisywanie procesów w tle,
- uruchamianie własnych aplikacji, które nie są zawarte w standardowym pakiecie usług,
- postawienie własnego serwera, np. do gier multiplayer.
Mimo to z użyciem SSH zyskujesz wygodny i funkcjonalny dostęp do własnych serwerów. Połączenie nawiązywane jest błyskawicznie z dowolnego miejsca. Możesz przenosić, usuwać i dodawać pliki, a nawet edytować je bez pobierania. Nie przeszkodzi Ci w tym nawet znaczna odległość od serwera. To przydatne rozwiązanie dla osób wykorzystujących hosting do obsługi stron WWW, poczty elektronicznej czy baz danych.
Do czego można wykorzystać SSH w hostingu?
Masz pełny dostęp do konta root? Protokół SSH pozwoli Ci wprowadzać dowolne modyfikacje na serwerze. Możesz dodawać i usuwać własne narzędzia czy konfigurować usługi. Zwykle natomiast taka opcja dotyczy tylko kosztowniejszych opcji hostingowych — serwerów dedykowanych czy VPS.
Nie oznacza to jednak, że dostęp do powłoki systemowej serwera nie jest przydatny przy hostingu współdzielonym. W tym wariancie z wykorzystaniem SSH możesz swobodnie zarządzać plikami na serwerze:
- dodawać i usuwać je,
- przenosić z dysku lokalnego na serwer oraz między katalogami,
- pobierać z serwera,
- edytować bez pobierania,
- pakować i rozpakowywać.
Opcję SSH wybiera się jednak nie tylko ze względu na zarządzanie plikami. Oprócz tego zyskujesz bowiem możliwość skorzystania z:
- bezpiecznego transferu,
- obsługi poczty e-mail,
- używania programów typu CLI (np. WP-CLI),
- użytkowania zdalnych baz danych.
Osiągalna jest dla Ciebie też zmiana uprawnień do informacji znajdujących się na serwerze. Co więcej, protokół SSH współpracuje z wieloma programami i aplikacjami ułatwiającymi jego obsługę. Bez problemu korzystać z niego możesz np. z pomocą PuTTY w systemie Windows. Zarządzanie zawartością odbywa się w tym przypadku przy użyciu linii poleceń. Dla początkujących użytkowników może stanowić to pewien problem. Szybko natomiast można się do tej opcji przyzwyczaić.
Jak połączyć się z serwerem przez SSH?
Z serwerem SSH możesz połączyć się z urządzeń o różnych systemach operacyjnych. W przypadku Windowsa będzie Ci do tego potrzebny odpowiedni program, np. PuTTY. W macOS i Linux natomiast wystarczy tylko, że skorzystasz z wbudowanego terminala.
Połączenie w systemie Windows, macOS i Linux
1. Nawiązywanie połączenia w Windows
Dostać się do powłoki systemowej serwera możesz za pomocą wielu programów. Jednym z najpopularniejszych i całkowicie darmowych jest PuTTY. To oprogramowanie współpracujące z systemami Microsoft Windows, Windows CE, Unix/Linux i Symbian.
Jak z niego skorzystać? Wystarczy tylko, że pobierzesz go na swój komputer z oficjalnej strony twórców: https://www.putty.org/.
Zainstaluj program, wybierając wersję odpowiednią dla Twojego systemu. Oprogramowanie samo przeprowadzi Cię przez cały proces. Wystarczy tylko, że wybierzesz miejsce na dysku, w którym ma się znaleźć aplikacja. Wszystko nie powinno zająć więcej niż kilka minut.
Następnie uruchom PuTTY i podaj:
- nazwę hosta lub adres IP serwera — dane te powinny być widoczne w Twoim koncie hostingowym. Większość usługodawców wysyła je też w wiadomości e-mail zaraz po założeniu konta,
- typ połączenia — wybierz SSH,
- port — zwykle dla połączeń SSH to „22″.
Na koniec kliknij przycisk „Open”. Nastąpi po tym nawiązanie szyfrowanego połączenia z serwerem. Gdy otworzy się konsola, musisz się do niej zalogować.
2. Linux i macOS
Te dwa systemy mają wbudowane terminale, co zdecydowanie ułatwia sprawę nawiązywania połączenia SSH. Wystarczy jedynie, że uruchomisz konsolę i wpiszesz polecenie:
ssh -p XXX przykladowy_login@adres_serwera
W miejsce XXX podaj numer portu. Zamiast „przykladowy_login” wpisz swoją nazwę użytkownika. „adres_serwera” to domena podpięta pod dany serwer. Alternatywnie skorzystać tu możesz z adresu IP.
Gdy połączenie zostanie nawiązane, na ekranie pojawi się pytanie. Musisz potwierdzić, że chcesz wykonać tę czynność i dodać hosta do „znanych hostów”. Gdy to się uda, wystarczy tylko, że podasz swoje hasło. Jeśli będzie poprawne, możesz przejść do zarządzania plikami na swoim serwerze.
Logowanie przy użyciu logina i hasła lub z pomocą klucza SSH
Możesz zalogować się do serwera na dwa sposoby. Przy użyciu:
- nazwy użytkownika i hasła (podczas jego wpisywania na ekranie nic nie będzie się pojawiało. To standardowe zabezpieczenie),
- wygenerowanego klucza SSH.
Pierwsze rozwiązanie jest powszechniejsze i korzysta z niego wiele osób, bo jest banalnie łatwe. Wystarczy tylko, że podasz dane logowania, których używasz w swoim Panelu Klienta u hostingodawcy. Nie wymaga to wiele czasu ani wykonywania żadnych dodatkowych czynności. Wskazane jest natomiast skorzystanie ze skomplikowanych układów liter, cyfr i znaków. Nie należy ich też nikomu ujawniać, by osoby niepożądane nie miały do nich dostępu.
Druga opcja wymaga od Ciebie dysponowania kluczem SSH. To metoda uwierzytelniania użytkownika. Dzięki kluczowi prywatnemu nawiążesz bezpieczne połączenie z serwerem dysponującym kluczem publicznym. Aby to jednak było możliwe, musisz wygenerować klucz, wgrać go na serwer i dopiero wtedy nawiązać połączenie. Opcja ta jest bardziej czasochłonna niż skorzystanie z loginu i hasła. Z drugiej strony natomiast jest o wiele bezpieczniejsza i w najlepszy sposób chroni wszystkie Twoje dane.
Jeśli dane są poprawne, w obu przypadkach zyskasz pełen dostęp SSH do serwera. Zobaczysz datę ostatniego logowania i zyskasz możliwość wpisywania komend w wierszu poleceń. Oznacza to, że możesz już swobodnie zarządzać zawartością swojego miejsca w sieci.
Jak używać SSH?
Skuteczne nawiązanie połączenia z serwerem uznać można za połowę sukcesu. Aby nim dobrze zarządzać przy użyciu protokołu SSH, musisz bowiem znać jeszcze komendy. Jest ich niesamowicie wiele i dają Ci imponujące możliwości. Jeśli jednak nie masz doświadczenia w obsłudze systemu Linux, korzystanie z nich początkowo może sprawiać Ci problemy. By przyśpieszyć proces nauki, przygotowaliśmy zestawienie najpopularniejszych poleceń. Dzięki nim błyskawicznie wykonasz wszystkie najważniejsze czynności, których może wymagać Twój serwer.
Podstawowe polecenia
Komendy wpisuj bezpośrednio w linii poleceń. Do ich zatwierdzenia wymagane jest naciśnięcie klawisza „Enter”. Zmiany w serwerze są wprowadzane natychmiast. Najpopularniejsze polecenia to:
- CHMOD — zmienia uprawnienia do katalogów i plików. Dzięki niemu określisz, kto może odczytywać, zapisywać i edytować konkretne dane;
- RM — usuwa pliki i katalogi z serwera;
- RM -rf — usuwa katalogi, wraz z plikami, które się w nich znajdują,
- CP — kopiuje pliki i katalogi z jednej lokalizacji do drugiej. Musisz w poleceniu najpierw podać lokalizację danych, a następnie miejsce, w którym ma znaleźć się ich kopia;
- FIND — wyszukuje pliki na dysku na podstawie rozmaitych parametrów, m.in. nazwy czy daty modyfikacji;
- PWD — wyświetla ścieżkę katalogu, który obecnie masz otwarty,
- LS — wyświetla listę plików w katalogu, który obecnie masz otwarty lub w folderze wskazanym przez Ciebie w poleceniu,
- LS -a — robi to, co standardowe LS, ale dodatkowo wyświetla też pliki i foldery ukryte,
- LS -l — robi to, co standardowe LS, ale dodatkowo wyświetla też szczegółowe dane o elementach, np. daty, prawa dostępu itd.,
- CD — przenosi użytkownika do wskazanego w poleceniu katalogu,
- CAT — wyświetla zawartość plików tekstowych (jednego lub kilku jednocześnie),
- PASSWD — zmienia hasło zabezpieczające dany element,
- MV — przenosi katalogi i pliki z jednej lokalizacji do innej,
- MKDIR — umożliwia stworzenie nowego katalogu w danej lokalizacji,
- GREP — wyszukuje i wyświetla wiersze zawierające wskazany ciąg znaków,
- TOUCH — umożliwia stworzenie nowego pliku w danej lokalizacji,
- UNZIP — rozpakowuje archiwum do folderu, w którym się znajdujesz,
- UNZIP -d — rozpakowuje archiwum do folderu wskazanego w poleceniu,
- MORE — możesz dzięki niemu „podglądać” dostępne edytory tekstu, bez potrzeby ich otwierania,
- VIM — otwiera edytor tekstowy,
- MYSQL — łączy się z bazą danych,
- MAN — służy do przywoływania pomocy, np. w formie szczegółowego opisu polecenia zawartego w komendzie.
Hostingi oferujące SSH najczęściej oferują rozbudowane wsparcie swoim użytkownikom. Co to oznacza w praktyce? W przypadku wystąpienia problemu z wykonaniem konkretnego zadania możesz skontaktować się z supportem. Większość usługodawców na swoich stronach ma też rozbudowane zakładki pomocy czy blogi i poradniki. Zawarte są na nich rozmaite informacje, od tego, jak połączyć się z serwerem, aż po wyjaśnienia dotyczące zaawansowanych komend w linii poleceń.