Jak połączyć się z VPS-em Linux przez SSH przy użyciu klucza PuTTY | INTROSERV
EUR
european

EUR

usa

USD

Poland Pl
Ex. VAT Ex. VAT 0%

Jak połączyć się z VPS-em Linux przez SSH przy użyciu klucza PuTTY

PuTTY to darmowy klient SSH dla systemu Windows. Ten poradnik opisuje łączenie się z serwerem VPS z systemem Linux z komputera z Windows przy użyciu uwierzytelniania kluczem SSH zamiast hasła — od pobrania PuTTY po pierwsze udane logowanie. Potrzebujesz adresu serwera, konta SSH na nim oraz pary kluczy SSH.

Poziom odbiorcy: Początkujący
Szacowany czas: około 20 minut
Cel końcowy: Po zakończeniu tego poradnika zalogujesz się do swojego serwera VPS z Linuksem z Windows przy użyciu PuTTY i klucza SSH, bez wpisywania hasła do konta.

Do czego służą SSH i PuTTY

Secure Shell (SSH) to protokół sieciowy do pracy na zdalnej maszynie przez niezaufaną sieć. Szyfruje całą sesję, identyfikuje serwer, zanim cokolwiek do niego wyślesz, i akceptuje hasło lub klucz jako dowód tożsamości. Na serwerze VPS z Linuksem stroną serwerową SSH jest zwykle demon OpenSSH, nasłuchujący na porcie TCP 22.

PuTTY to darmowy klient SSH dla Windows oraz okno terminala, w którym pracujesz po nawiązaniu połączenia. Aktualna wersja to 0.84. Jedna uwaga oszczędza później nieporozumień: instalator dla Windows zawiera już PuTTYgen — narzędzie, które w tym poradniku generuje i konwertuje klucze — więc PuTTYgen nigdy nie jest osobnym pobraniem. Ten sam pakiet instaluje też narzędzia do transferu plików PSCP i PSFTP, nakładkę skryptową Plink oraz agenta uwierzytelniania Pageant.

Czego potrzebujesz przed połączeniem

Zbierz poniższe elementy przed rozpoczęciem:

  • Publiczny adres IP serwera, poniżej zapisywany jako <YOUR_SERVER_IP>
  • Nazwa konta SSH na serwerze, poniżej zapisywana jako <YOUR_USERNAME>
  • Port SSH, który wynosi 22, chyba że twój dostawca lub własna konfiguracja używa innego
  • Plik klucza prywatnego na komputerze z Windows, w formacie PuTTY (.ppk) lub w formacie OpenSSH
  • PuTTY 0.84 na Windows 10, Windows 11, Windows Server 2022 lub Windows Server 2025. Instalacja jest opisana w kolejnej sekcji
  • Serwer VPS z Linuksem, na którym działa serwer OpenSSH i który jest dostępny przez sieć. Poniższe polecenia po stronie serwera dotyczą Ubuntu 24.04 LTS i 26.04 LTS, Debiana 12 i 13, AlmaLinuksa 9 i 10 oraz innych dystrybucji korzystających z OpenSSH
  • Jeden działający sposób logowania, jeśli klucz publiczny nie jest jeszcze na serwerze: sesja z hasłem, inny klucz lub konsola w panelu dostawcy
  • Około 20 minut i żadnej wiedzy poza podstawową obsługą powłoki Linuksa

Para kluczy składa się z dwóch połówek pełniących różne funkcje. Klucz prywatny pozostaje na komputerze z Windows i generuje dowód twojej tożsamości. Klucz publiczny znajduje się na serwerze, w koncie, do którego się logujesz, i pozwala serwerowi zweryfikować ten dowód.

Warning

Nigdy nie przesyłaj, nie wysyłaj mailem ani nie wklejaj klucza prywatnego na serwer ani na żadną inną maszynę. Tylko klucz publiczny opuszcza twój komputer. Plik klucza prywatnego, który trafi w miejsce poza twoją kontrolą, uznaje się za skompromitowany, a właściwą reakcją jest wymiana pary kluczy.

Instalacja PuTTY

Pobieraj PuTTY wyłącznie od samego projektu. putty.software to krótka oficjalna domena projektu, przekierowująca na strony pobierania autora na chiark.greenend.org.uk.

Warning

putty.org i puttygen.com nie są stronami projektu i nie są utrzymywane przez zespół PuTTY. Nic nie gwarantuje, że pliki serwowane z tych adresów są oprogramowaniem wydanym przez autorów.

Pobierz instalator MSI dla Windows odpowiedni dla twojej architektury. Wersja 64-bitowa x86, putty-64bit-0.84-installer.msi, pasuje do niemal każdej obecnej maszyny. Wersja 32-bitowa x86 istnieje dla starszego sprzętu i starszych wersji Windows, a osobna wersja Arm64 obejmuje urządzenia z Windows na procesorach Arm.

Uruchom pobrany plik .msi. Kliknij Next na stronie powitalnej, zachowaj domyślny folder docelowy, zachowaj domyślny zestaw funkcji i kliknij Install. Zatwierdź monit administratora Windows, jeśli się pojawi, a następnie zamknij kreatora, klikając Finish.

Menu Start zawiera teraz wpisy dla PuTTY i PuTTYgen, a wymienione wcześniej narzędzia są instalowane razem z nimi.

Info

Projekt publikuje też aktualne instalatory w Microsoft Store, zwykle kilka dni po wydaniu. Oba źródła dostarczają tę samą wersję.

Sprawdź lub przekonwertuj swój klucz SSH

PuTTY odczytuje klucze prywatne we własnym formacie, w pliku .ppk. To, co dzieje się dalej, zależy od tego, co już posiadasz.

Jeśli masz już plik .ppk

Nic nie wymaga konwersji. Zanotuj lokalizację pliku na dysku i przejdź do konfiguracji PuTTY poniżej.

Jeśli twój klucz jest w formacie OpenSSH

Klucze wygenerowane przez ssh-keygen mają nazwy takie jak id_rsa lub id_ed25519, zwykle bez rozszerzenia, a PuTTY nie odczytuje ich bezpośrednio. Przekonwertuj taki klucz raz i od tej pory korzystaj z wyniku.

Uruchom PuTTYgen i kliknij Load. Okno dialogowe pliku otwiera się z filtrem ustawionym na pliki kluczy prywatnych PuTTY, co ukrywa każdy plik niekończący się na .ppk, więc przed wyszukaniem klucza przełącz filtr na All Files. Wybierz plik klucza prywatnego i wpisz jego hasło, jeśli je posiada. PuTTYgen zgłasza, że klucz nie jest w jego natywnym formacie, i mimo to go wczytuje. Kliknij Save private key, nazwij plik i zachowaj rozszerzenie .ppk. Hasło przenosi się bez zmian, chyba że celowo wpiszesz nowe.

Menu Conversions oferuje tę samą operację co jawne polecenie Import key. Obie ścieżki dają ten sam plik .ppk.

Jeśli nie masz jeszcze klucza

Wygeneruj parę w PuTTYgen. Pozostaw typ klucza na RSA z 2048 bitami lub więcej, lub wybierz EdDSA z 255 bitami dla klucza Ed25519, a następnie naciśnij Generate. Poruszaj wskaźnikiem myszy nad pustym obszarem okna, aż pasek postępu się wypełni, ponieważ PuTTYgen zbiera losowość z tego ruchu. Gdy klucz się pojawi, wpisz hasło w polu Key passphrase, powtórz je w Confirm passphrase i zapisz obie połówki za pomocą Save public key i Save private key.

Info

PuTTY współpracuje z kluczami RSA i Ed25519, a także ECDSA i DSA. Zrzuty ekranu w tym poradniku pokazują klucz RSA. Dla nowej pary na obecnych systemach dobrym domyślnym wyborem jest Ed25519.

Dodaj klucz publiczny na serwerze

Pomiń tę sekcję, jeśli twój dostawca już umieścił klucz na koncie lub jeśli para została utworzona dla tego serwera. W przeciwnym razie potrzebujesz jednego działającego sposobu wejścia: sesji z hasłem, innego klucza lub konsoli dostawcy.

Otwórz sesję jako konto, które będzie korzystać z klucza, i przygotuj katalog:

mkdir -p ~/.ssh chmod 700 ~/.ssh touch ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys chown -R <YOUR_USERNAME>:<YOUR_USERNAME> ~/.ssh

Polecenia tworzą ~/.ssh i pusty plik authorized_keys, jeśli którykolwiek z nich brakuje, a następnie ustawiają właściciela i uprawnienia wymagane przez OpenSSH. Dla zwykłego konta, takiego jak admin lub ubuntu, pełna ścieżka to /home/<YOUR_USERNAME>/.ssh/authorized_keys. Dla konta root jest to /root/.ssh/authorized_keys. Zwróć uwagę na nazwę katalogu: .ssh, z kropką na początku i bez spacji w żadnym miejscu ścieżki.

Otwórz plik do edycji:

nano ~/.ssh/authorized_keys

Przełącz się na okno PuTTYgen, zaznacz całą zawartość pola oznaczonego Public key for pasting into OpenSSH authorized_keys file i skopiuj ją. W terminalu wklej ją jako ostatnią linię pliku. Kliknięcie prawym przyciskiem myszy wkleja zawartość schowka do okna PuTTY. Zapisz plik i zamknij edytor.

Warning

Klucz publiczny zajmuje dokładnie jedną linię, od ssh-rsa lub ssh-ed25519 aż do końca komentarza klucza. Nie dziel go, nie pozwól, by edytor go zawijał, i nie dodawaj do tej linii żadnego własnego tekstu komentarza. Klucz podzielony na linie lub z dodatkowymi znakami na końcu zostaje odrzucony, a serwer nie zgłasza niczego bardziej informatywnego niż odrzucenie klucza.

Plik zawiera teraz po jednej linii na każdy autoryzowany klucz, a wszelkie linie, które już tam były, pozostają bez zmian.

Konfiguracja PuTTY

Uruchom PuTTY. Jako pierwszy otwiera się panel Session. Wpisz adres serwera w polu Host Name (or IP address), ustaw Port na 22 lub na port, na którym nasłuchuje twój serwer, i pozostaw Connection type na SSH.

Teraz wskaż PuTTY klucz prywatny. W drzewie po lewej stronie rozwiń Connection, następnie SSH, Auth, Credentials i użyj przycisku Browse obok Private key file for authentication, aby wybrać plik .ppk. To drzewo różni się nieznacznie między wersjami PuTTY, a starsze wydania trzymają to pole bezpośrednio na panelu Auth, więc kieruj się nazwą pola, a nie dokładną ścieżką.

Zapisanie sesji zwraca się w ciągu kilku dodatkowych sekund. Wróć do Session, wpisz nazwę w polu Saved Sessions i kliknij Save. Nazwa pojawia się na liście, a jej zaznaczenie i kliknięcie Load przywraca adres, port i ścieżkę do klucza.

Połącz się i zaloguj

Kliknij Open. Przy pierwszym połączeniu z serwerem, którego PuTTY jeszcze nie widziało, program zatrzymuje się i przedstawia klucz hosta tego serwera:

The host key is not cached for this server: <YOUR_SERVER_IP> (port 22) The server's ssh-ed25519 key fingerprint is: ssh-ed25519 255 SHA256:<FINGERPRINT_STRING>

Porównaj odcisk palca z tym opublikowanym przez twojego dostawcę dla tego serwera. More info... pokazuje pełny klucz publiczny, jeśli tak łatwiej porównać. Gdy odcisk się zgadza, kliknij Accept: PuTTY zapisuje klucz w pamięci podręcznej, połączenie jest kontynuowane, a pytanie nie powróci dla tego hosta. Connect Once łączy bez zapisywania czegokolwiek. Cancel przerywa połączenie, co jest właściwym wyborem, gdy odcisk nie pasuje do niczego, czego oczekujesz.

Warning

Ostrzeżenie o kluczu hosta przy kolejnym połączeniu z tym samym serwerem, sformułowane mocniej, dotyczące potencjalnego naruszenia bezpieczeństwa, oznacza, że serwer przedstawił inny klucz niż poprzednio. Odbudowany serwer robi to zgodnie z prawem. Tak samo robi atakujący, który przekierował twoje połączenie. Ustal, który z tych dwóch przypadków zachodzi, zanim cokolwiek wpiszesz w oknie.

Gdy klucz hosta zostanie ustalony, terminal pokazuje monit logowania:

login as:

Wpisz nazwę konta i naciśnij Enter. PuTTY użyje wtedy skonfigurowanego klucza. Jeśli klucz ma hasło, PuTTY zapyta o nie w tym samym oknie, a wpisywane znaki pozostają niewidoczne.

Trzy rzeczy łatwo pomylić na tym etapie:

  • Nazwa konta identyfikuje użytkownika na serwerze — root lub zwykłe konto, na przykład admin.
  • Hasło klucza odszyfrowuje plik klucza prywatnego na twoim własnym komputerze, a serwer nigdy go nie widzi.
  • Hasło konta należy do konta na serwerze. Przy działającym uwierzytelnianiu kluczem nie jest ono potrzebne do zalogowania się.

Potwierdź, że uwierzytelnianie kluczem działa

Brak monitu o hasło jest potwierdzeniem. Jeśli sesja otwiera się po podaniu hasła klucza lub bez żadnego monitu, serwer zaakceptował klucz. Dwa polecenia jasno pokazują wynik:

whoami hostname

Oczekiwane wyjście:

admin vps-01

Pierwsza linia podaje nazwę konta, na którym działa sesja, i musi się zgadzać z kontem, którego plik authorized_keys zawiera klucz publiczny. Druga podaje nazwę serwera.

Rozwiązywanie problemów

Problem Przyczyna Rozwiązanie
Server refused our key Klucz publiczny nie jest poprawnie zainstalowany dla tego konta Sprawdź, czy ~/.ssh/authorized_keys zawiera klucz w jednej linii, czy ~/.ssh ma uprawnienia 700, a authorized_keys — 600, oraz czy oba należą do tego konta
No supported authentication methods available PuTTY nie ma klucza do zaoferowania, a serwer nie akceptuje haseł Ustaw plik .ppk w Connection, SSH, Auth, Credentials
Access denied Nazwa konta jest błędna Potwierdź nazwę konta na serwerze. PuTTY nie potrafi poprawić błędnie wpisanej nazwy w tej samej sesji, więc zamknij okno i połącz się ponownie
Network error: Connection timed out Adres lub port jest błędny, albo zapora sieciowa odrzuca ruch Zweryfikuj adres IP i port, a następnie sprawdź zaporę sieciową na serwerze i na trasie
Network error: Connection refused Nic nie nasłuchuje na tym porcie, ponieważ usługa SSH jest zatrzymana lub powiązana z innym portem Sprawdź stan usługi SSH i port, na którym nasłuchuje, przez konsolę dostawcy, jeśli nie masz innego dostępu
Passphrase jest odrzucana Hasło klucza prywatnego jest błędne Wpisz je ponownie. Jeśli nadal się nie udaje, użyj klucza, którego hasło znasz, lub wygeneruj nową parę
Klucz działa w innym kliencie, ale nie w PuTTY Klucz jest w formacie OpenSSH, a nie .ppk Przekonwertuj go w PuTTYgen zgodnie z opisem powyżej

Bezpieczeństwo klucza SSH

  • Trzymaj klucz prywatny na swoim komputerze i nie udostępniaj go nikomu. Każdy, kto posiada ten plik, może zalogować się jako ty.
  • Zabezpiecz klucz hasłem i wybierz takie, którego nie używasz nigdzie indziej.
  • Przechowuj plik klucza w miejscu, do którego dostęp ma tylko twoje konto, i uwzględnij go w swoich osobistych kopiach zapasowych. Utraconego klucza prywatnego nie da się odzyskać z połowy publicznej.
  • Tam, gdzie to praktyczne, używaj osobnych kluczy dla osobnych serwerów lub ról, aby jeden ujawniony klucz nie otwierał wszystkiego.
  • Traktuj każde podejrzenie ujawnienia jako rzeczywiste: wygeneruj nową parę, zainstaluj nowy klucz publiczny i usuń starą linię z authorized_keys na każdym serwerze.

Info

Gdy uwierzytelnianie kluczem działa już niezawodnie, dwie zmiany po stronie serwera jeszcze bardziej ograniczają ryzyko: wyłącz uwierzytelnianie hasłem w konfiguracji OpenSSH i ogranicz port SSH w zaporze sieciowej do adresów, z których się łączysz.

Cofanie zmian

Aby usunąć klucz z serwera, najpierw zachowaj kopię pliku, a następnie usuń linię zawierającą klucz publiczny:

cp ~/.ssh/authorized_keys ~/.ssh/authorized_keys.bak nano ~/.ssh/authorized_keys

Warning

Zanim usuniesz klucz, potwierdź, że inny sposób wejścia nadal działa. Konto pozbawione zarówno działającego klucza, jak i logowania hasłem wymaga do odzyskania konsoli dostawcy.

Aby usunąć PuTTY z Windows, najpierw wyczyść zapisane ustawienia, ponieważ odinstalowanie programu pozostawia je bez zmian. Uruchom poniższe polecenie w wierszu poleceń lub w oknie Uruchom i zatwierdź monit, który się pojawi:

putty.exe -cleanup

Następnie otwórz Ustawienia, przejdź do Aplikacje, potem Zainstalowane aplikacje, znajdź PuTTY na liście i wybierz Odinstaluj. Sam usuń plik .ppk, jeśli nie potrzebujesz już klucza.

Podsumowanie i kolejne kroki

Twój komputer z Windows łączy się teraz z serwerem VPS z Linuksem przez PuTTY przy użyciu klucza zamiast hasła, sesja jest zapisana do ponownego użycia, a klucz hosta serwera jest zapisany w pamięci podręcznej i zweryfikowany. Uwierzytelnianie hasłem na serwerze można teraz wyłączyć, co usuwa najczęściej atakowany sposób wejścia na maszynę dostępną publicznie. Pageant, instalowany razem z PuTTY, przechowuje odszyfrowany klucz przez czas trwania sesji Windows i oszczędza ci podawania hasła klucza przy każdym połączeniu. Powiązane zadania znajdziesz w: Łączenie się przez SSH — dostęp oparty na haśle, Zmiana portu SSH — przeniesienie usługi z portu 22, oraz Łączenie się z serwerem przez SSH na macOS — to samo zadanie z poziomu macOS.

Wersja dokumentu: 1.0
Ostatnia aktualizacja: sierpień 2026
Właściciel: Zespół Dokumentacji Technicznej

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Русский
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA