Łączenie się przez SSH przy użyciu klucza Putty
Ten poradnik zawiera instrukcje krok po kroku dotyczące instalacji PuTTY SSH, jego używania oraz konfiguracji uwierzytelniania opartego na kluczach. Postępując zgodnie z tymi instrukcjami, będziesz w stanie nawiązać bezpieczne połączenie z serwerem zdalnym za pomocą PuTTY.
Wyzwania dzisiejszych czasów
Współczesne środowiska biznesowe często wykorzystują wiele systemów operacyjnych — zarówno na stacjach roboczych, jak i serwerach. Urządzenia sieciowe, serwery Linux, systemy IoT i stacje robocze Linux często muszą łączyć się ze stacji roboczej Windows. Bezpieczne łączenie tych środowisk przy jednoczesnej ochronie danych pozostaje poważnym wyzwaniem. Narzędzie takie jak PuTTY może skutecznie pomóc w rozwiązaniu tego problemu.
SSH — co to jest?
Secure Shell (SSH), znany również jako Secure Socket Shell, to protokół sieciowy umożliwiający bezpieczny dostęp do komputerów przez niezabezpieczone sieci. Jest szczególnie popularny wśród administratorów systemów.
Protokół SSH jest implementowany poprzez zestaw narzędzi. Używając Secure Shell, możesz bezpiecznie komunikować się między dwoma komputerami przez otwartą sieć (taką jak Internet) z silnym uwierzytelnianiem hasłem lub uwierzytelnianiem kluczem publicznym.
Administratorzy sieci używają SSH do zdalnego dostępu do innego komputera, wykonywania poleceń, przesyłania plików i zapewnienia silnego szyfrowania.
Za pomocą SSH możesz bezpiecznie uzyskać dostęp do komputera lub urządzenia przez niezabezpieczoną sieć. Połączenia SSH są powszechnie używane do zdalnej konfiguracji serwerów Linux i urządzeń sieciowych.
Co to jest PuTTY?
PuTTY to darmowy klient SSH o otwartym kodzie źródłowym dla systemu Windows. Jest jednym z najpopularniejszych narzędzi do bezpiecznego łączenia się z serwerami Linux z komputera z systemem Windows.
Za pomocą PuTTY możesz:
- Połączyć się z serwerem za pomocą uwierzytelniania hasłem lub kluczem SSH
- Wykonywać polecenia zdalnie
- Przesyłać pliki (za pomocą PSCP lub wbudowanego klienta SFTP w PuTTY)
- Zarządzać serwerem Linux bez interfejsu graficznego
PuTTY jest lekki, szybki, regularnie aktualizowany i działa bez zarzutu ze wszystkimi nowoczesnymi dystrybucjami Linuxa (Ubuntu, Debian, AlmaLinux, Rocky Linux itp.).
W skład pakietu wchodzi również PuTTYgen – proste narzędzie do tworzenia par kluczy SSH, które wykorzystamy w tym przewodniku.
Jak zainstalować PuTTY
Najpierw pobierz pakiet PuTTY z oficjalnej strony internetowej. Odwiedź puttygen.com, aby pobrać PuTTY dla swojego systemu operacyjnego.
Aby zainstalować PuTTY w swoim systemie Windows, wykonaj następujące proste kroki:
1. Wybierz odpowiedni pakiet dla architektury swojego systemu — 32-bitowy lub 64-bitowy. Strona pobierania oferuje pojedyncze pliki wykonywalne, w tym putty.exe (klient SSH) i puttygen.exe (narzędzie do generowania kluczy).

2. Pobierz putty.exe i puttygen.exe. Zapisz je w łatwo dostępnej lokalizacji na swoim komputerze.
Generowanie kluczy SSH
Uruchom narzędzie PuTTYgen i kliknij przycisk Generate. Podczas generowania poruszaj kursorem myszy losowo po pustym obszarze, aby utworzyć entropię dla klucza.

Po zakończeniu generowania klucz publiczny pojawia się w obszarze tekstowym. Narzędzie wyświetla również odcisk palca klucza i pozwala dodać komentarz.

Użyj przycisków "Save public key" i "Save private key", aby zapisać klucze na swoim komputerze. Dla dodatkowego bezpieczeństwa ustaw hasło (passphrase), aby chronić klucz prywatny.
Dodawanie klucza publicznego do serwera
Następnie dodaj klucz publiczny do serwera docelowego.
Połącz się z serwerem przez SSH używając swojego hasła, a następnie otwórz plik .ssh/authorized_keys w katalogu domowym użytkownika. Dopisz następującą linię na końcu pliku:
ssh-rsa twój_klucz_publiczny_tutaj

W tym przykładzie używamy konta root, więc ścieżka do pliku to /root/.ssh/authorized_keys. Skopiuj klucz publiczny bezpośrednio z okna PuTTYgen (obszar tekstowy u góry).

Konfiguracja PuTTY do uwierzytelniania kluczem
Otwórz aplikację PuTTY. W głównym oknie wprowadź adres IP serwera w polu "Host Name (or IP address)", upewnij się, że port to 22, a typ połączenia to SSH.

Przed połączeniem określ ścieżkę do klucza prywatnego. W lewym panelu przejdź do Connection → SSH → Auth → Credentials i wyszukaj plik klucza prywatnego (z rozszerzeniem .ppk) w polu "Private key file for authentication".
Wróć do kategorii Session, wprowadź adres serwera i kliknij Open, aby się połączyć.
PuTTY poprosi o nazwę użytkownika. Wprowadź nazwę konta, dla którego dodałeś klucz publiczny (w naszym przypadku root). Następnie uzyskasz dostęp do konsoli serwera.
Jeśli klucz prywatny ma hasło (passphrase), zostaniesz poproszony o jego wprowadzenie po podaniu nazwy użytkownika. Pamiętaj, że to hasło chroni Twój klucz SSH i jest oddzielne od hasła do konta.
Sukces! Uwierzytelnianie oparte na kluczach działa
Jeśli wszystko jest poprawnie skonfigurowane, PuTTY połączy się z serwerem bez pytania o hasło do konta (tylko o hasło klucza, jeśli zostało ustawione). Terminal otwiera się natychmiast z wierszem poleceń, pozwalając od razu wykonywać polecenia.
Gratulacje! Teraz możesz bezpiecznie i wygodnie zarządzać swoim zdalnym serwerem bez wpisywania haseł za każdym razem.