SSH (Secure Shell) jest kluczowym elementem nowoczesnego bezpieczeństwa informacji i zdalnej administracji. Ten artykuł poświęcony jest połączeniom SSH i przydatnym narzędziom do pracy z nimi. Znajdziesz tu przydatne informacje na temat łączenia się z wynajętym serwerem z różnych systemów operacyjnych, Windows, macOS lub Linux. Przedstawimy również różne narzędzia, które ułatwią pracę z SSH, takie jak PUTTY, Midnight Commander i oczywiście standardowy terminal.
Czym jest SSH i jak z niego korzystać
SSH, czyli Secure Shell, to protokół zdalnego połączenia, który umożliwia bezpieczne zarządzanie zdalnymi serwerami. Kiedy wynajmujesz hosting współdzielony, VDS lub serwer dedykowany, zazwyczaj otrzymujesz interfejs sieciowy lub panel sterowania, którego możesz użyć do zarządzania serwerem. Jednak za tą przyjazną dla użytkownika powłoką graficzną kryje się praca z różnymi protokołami.
Termin “SSH” tłumaczy się jako “Secure Shell”. Technologia ta została opracowana jako zamiennik starego i niezabezpieczonego protokołu TELNET, który również zapewniał zdalny dostęp do komputerów, ale przesyłał wszystkie dane w postaci zwykłego tekstu, w tym loginy i hasła. W przeciwieństwie do TELNET, SSH szyfruje wszystkie przesyłane dane i weryfikuje ich integralność.
Teraz może pojawić się pytanie: “Jeśli wynajęty serwer ma interfejs WWW, menedżera plików, FTP i inne narzędzia, dlaczego zwykły użytkownik miałby używać SSH i uczyć się komend, skoro istnieją prostsze sposoby?”.
Jest ku temu kilka ważnych powodów:
- Wygoda. Niektórym użytkownikom wygodniej jest administrować serwerem przez SSH. Zarządzanie za pomocą wiersza poleceń nie jest dużo bardziej skomplikowane niż praca z panelami graficznymi, a dla tych, którzy są już zaznajomieni z tą technologią, przejście na inne metody może wydawać się niepotrzebne.
- Zaawansowane funkcje. Niektóre polecenia i operacje mogą być wykonywane tylko przez SSH. Na przykład, specjalne lub rzadko używane polecenia mogą być dostępne tylko przez SSH, rozszerzając możliwości zarządzania serwerem.
- Aplikacje i CMS. W niektórych przypadkach, podczas pracy z określonymi systemami zarządzania treścią (CMS), takimi jak Drupal, niektóre polecenia i operacje mogą być wykonywane tylko przez SSH.
SSH jest więc wygodnym narzędziem dla zaawansowanych użytkowników i administratorów, które otwiera przed nimi więcej możliwości zarządzania serwerem. Zrozumienie przynajmniej podstaw SSH pozwoli lepiej opanować procesy zarządzania i zapewni większą elastyczność podczas pracy z serwerem.
Przeczytaj także: WordPress: jak zabezpieczyć witrynę i uniknąć luk w zabezpieczeniach open source
Różnice między Web SSH i VNC dla zdalnego dostępu
Połączenie SSH to metoda, a nie konkretne narzędzie. Aby połączyć się z serwerem za pomocą SSH, potrzebne są specjalne programy i znajomość odpowiednich poleceń.
Jednak proces nawiązywania połączenia SSH może być trudny dla początkującego. Nazwa serwera może być nieprawidłowa, adres IP może nie zostać dodany do listy dozwolonych lub pole hasła może nie być widoczne po pomyślnym zalogowaniu.
Web SSH umożliwia łączenie się przez SSH bezpośrednio przez przeglądarkę internetową, bez konieczności instalowania dodatkowego oprogramowania po stronie klienta. Odbywa się to poprzez wstępną instalację niezbędnych narzędzi po stronie serwera. Użytkownicy mogą łączyć się z serwerem za pośrednictwem SSH za pomocą jednego kliknięcia, dzięki czemu proces jest znacznie bardziej dostępny.
Teraz, gdy omówiliśmy Web SSH, przejdźmy do tego, czym są VNC i Web VNC.
W panelu sterowania serwera wirtualnego może okazać się, że nie ma opcji Web SSH, ale jest VNC i Web VNC. Co to jest?
Web VNC to system zdalnego dostępu lub protokół, który umożliwia zdalne sterowanie komputerem lub serwerem. Jedną z kluczowych cech Web VNC jest możliwość kontrolowania zdalnego komputera działającego w innym systemie operacyjnym. Protokół ten działa niezależnie od SSH i może być przydatnym narzędziem w sytuacjach awaryjnych. Na przykład, jeśli klient przypadkowo zablokuje dostęp SSH lub zapomni hasła do serwera, Web VNC zapewnia opcję odzyskania kontroli nad serwerem.
Należy jednak pamiętać, że VNC i Web VNC nie są zwykle przeznaczone do stałego działania i są częściej używane w sytuacjach, które wymagają przywrócenia dostępu do serwera lub komputera w przypadkach, gdy inne metody dostępu nie są dostępne.
Jak nawiązać połączenie SSH z VDS lub serwerem dedykowanym
Jeśli komputer klienta działa pod kontrolą systemu Linux lub Mac OS, jest to bardzo proste, ponieważ mają one już wbudowane terminale, które umożliwiają łatwą pracę z SSH. Jeśli korzystasz z systemu Windows, sytuacja jest nieco bardziej skomplikowana i może być konieczne zainstalowanie dodatkowych narzędzi, chociaż warto zauważyć, że Windows 10 ma już wbudowanego klienta SSH, co ułatwia proces.
Spróbujmy nawiązać połączenie SSH z serwerem za pomocą terminala.
W systemie Linux terminal można otworzyć, naciskając kombinację klawiszy Ctrl+Alt+T. W przypadku Mac OS należy nacisnąć Command + Spacja, a następnie wpisać słowo “Terminal” w polu wyszukiwania. Spowoduje to wyświetlenie terminala na górze listy aplikacji.
Po otwarciu terminala należy wprowadzić polecenie “ssh login@servername”, gdzie “login” to login do serwera, który otrzymałeś od dostawcy pocztą elektroniczną. “Nazwa serwera” to adres IP serwera, który zazwyczaj można znaleźć w głównych informacjach w panelu klienta.
Następnie system wyświetli monit o wprowadzenie hasła do serwera, a po pomyślnym wprowadzeniu będzie można kontrolować połączenie SSH.
Na przykład, oto jak wygląda proces łączenia się z serwerem w systemie operacyjnym Linux Ubuntu.
Najpopularniejszym narzędziem do połączeń SSH w systemie Windows jest PuTTY.
Jeśli masz system Windows 10, klient SSH jest już wbudowany, ale czasami trzeba go aktywować. Aby to zrobić, przejdź do Aktualizacje i zabezpieczenia i włącz tryb programisty. Następnie wyszukaj “Zarządzaj dodatkami” (możesz też po prostu wpisać to zapytanie w wyszukiwarce). Znajdziesz tam “Klienta OpenSSH”, którego musisz aktywować.
Omówiliśmy podstawowe kroki, aby połączyć się z serwerem za pomocą tego bezpiecznego protokołu. W zależności od systemu operacyjnego, typu serwera i zasad dostawcy usług internetowych, mogą wystąpić pewne różnice w procedurze połączenia. W każdym przypadku zawsze możesz skontaktować się z naszym zespołem pomocy technicznej w celu uzyskania porady.
Połączenie zostało nawiązane pomyślnie. Co powinieneś zrobić dalej? Porozmawiamy o różnych opcjach połączenia SSH, które możesz zbadać, nawet jeśli jesteś nowy w administracji.
Podstawowe polecenia SSH
SSH zapewnia wygodny dostęp do zdalnych serwerów, a ważnym aspektem pracy z nim jest znajomość podstawowych poleceń do zarządzania plikami i procesami. Oto kilka podstawowych poleceń SSH:
- s – to polecenie służy do wyświetlania zawartości bieżącego katalogu, aby zobaczyć listę znajdujących się w nim plików i folderów.
- cd – Polecenie cd służy do zmiany bieżącego katalogu roboczego. Na przykład, aby przejść do innego folderu, można użyć cd nazwa_pliku.
- mkdir – aby utworzyć nowy folder (katalog), należy użyć polecenia mkdir nazwa_folderu.
- touch – aby utworzyć nowy plik, użyj polecenia touch nazwa_pliku.
- rm – do usuwania plików służy polecenie rm nazwa_pliku.
- cat – Użyj cat, aby wyświetlić zawartość pliku.
- pwd – to polecenie wyświetla bieżący katalog roboczy, podając pełną ścieżkę do tego katalogu.
- cp – do kopiowania plików i folderów służy polecenie cp source_file/directory target_directory.
- mv – do przenoszenia plików i folderów służy polecenie mv source_file/directory target_directory.
- grep – Polecenie grep służy do wyszukiwania określonej frazy w pliku. Na przykład grep “fraza” nazwa_pliku.
- find – to polecenie umożliwia wyszukiwanie plików i folderów w określonym katalogu.
- vi/nano – vi i nano to edytory tekstu, które umożliwiają edycję zawartości plików. Przykładowe użycie: vi nazwa_pliku.
- history – Użyj historii, aby wyświetlić listę ostatnich 50 wykonanych poleceń.
- kill – polecenie kill jest używane do zakończenia pojedynczego procesu i wymaga podania PID procesu.
- killall – W przeciwieństwie do kill, polecenie killall pozwala “zabić” program, nawet jeśli nie znasz jego PID. Wszystko czego potrzebujesz to nazwa narzędzia.
- rsync – To polecenie synchronizuje pliki między dwoma lub więcej hostami.
- wget – Użyj wget, aby pobrać plik z łącza internetowego.
- zip i unzip – polecenie zip archiwizuje jeden lub więcej plików w pojedynczy plik .zip, a unzip rozpakowuje archiwum.
- df -h – to polecenie wyświetla ilość wolnego miejsca na dysku twardym.
Te podstawowe polecenia pomogą ci efektywnie zarządzać plikami, wyszukiwać, edytować tekst i nie tylko na zdalnym serwerze za pośrednictwem SSH.
Midnight Commander
Midnight Commander to menedżer plików w konsoli, który zapewnia wygodny dostęp i funkcje:
- Praca z archiwami i sieciowymi systemami plików (Samba, FTP, SFTP).
- Kopiowanie i przenoszenie plików w tle.
- Wbudowany edytor tekstu z podświetlaniem składni.
- Obsługa trybu tekstowego, połączeń zdalnych (np. SSH) i myszy.
- Wielojęzyczny interfejs i obsługa UTF-8.
Aby go uruchomić, należy użyć polecenia:
mc
Monitorowanie obciążenia serwera
Do monitorowania obciążenia serwera służy htop, który wyświetla informacje o procesach i zasobach:
- Monitorowanie czasu pracy systemu.
- Śledzenie obciążenia serwera (średnia obciążenia).
- Wyświetlanie użycia pamięci i procesora.
- Wyszukiwanie procesów według PID i nazwy.
- Wyświetlanie otwartych plików i wywołań systemowych.
- Obsługa widoku drzewa procesów i wątków.
Aby go uruchomić, należy użyć polecenia:
htop
Importowanie i eksportowanie bazy danych
Użyj poleceń, aby przenieść bazę danych:
Import bazy danych:
css
mysql -h server-u user-p name_БД < file_dump
Eksport (tworzenie kopii zapasowej):
css
mysqldump -h сервер -u користувач -p ім’я_БД > ім’я_файлу
SSH zapewnia niezawodny dostęp do serwera, a zrozumienie jego zasad otwiera dodatkowe możliwości w administrowaniu serwerem.