PuTTY to lekki, sprawdzony klient SSH dla Windows, wygodny, gdy chcesz mieć zapisane sesje i graficzne okno ustawień. W tym poradniku połączysz się z VPS Linux Infrawire, utrzymasz sesję przy życiu, przejdziesz na uwierzytelnianie kluczem za pomocą PuTTYgen i Pageant oraz prześlesz pliki przez pscp.
📋 Wymagania wstępne
- Windows 10 lub 11.
- Działający VPS z Linuksem (Ubuntu 24.04, Debian 12, AlmaLinux 9 lub Rocky 9).
- Adres IP VPS i hasło roota: w panelu klienta znajdziesz IP i hasło root VPS.
- Zainstalowany PuTTY, który zawiera
putty.exe,puttygen.exe,pageant.exeipscp.exe.
Z winget instalacja to jedna linia w PowerShellu:
PowerShellwinget install PuTTY.PuTTY
🔌 Tworzenie i zapisywanie sesji
- Uruchom PuTTY. W kategorii Session wpisz
VPS_IPw polu Host Name (or IP address). - Zostaw Port na
22(lub swoim własnym) i Connection type na SSH. - W polu Saved Sessions wpisz nazwę, na przykład
myvps, i kliknij Save. - Opcjonalnie: w Connection > Data wpisz
rootw Auto-login username, aby nie być o to pytanym. - Wróć do Session, wybierz
myvps, kliknij ponownie Save, a potem Open.
Przy pierwszym połączeniu PuTTY wyświetla okno PuTTY Security Alert z odciskiem klucza serwera. Kliknij Accept tylko wtedy, gdy ufasz serwerowi: klucz zostanie zapamiętany w rejestrze.
⏱️ Unikanie rozłączeń dzięki keepalive
Nieaktywne sesje są często zrywane przez routery i zapory. Otwórz Connection, ustaw Seconds between keepalives na 30, wróć do Session i ponownie zapisz myvps. PuTTY będzie wysyłać mały pakiet co 30 sekund.
🔑 Generowanie pary kluczy w PuTTYgen
Otwórz PuTTYgen, wybierz EdDSA (Ed25519) jako typ klucza i kliknij Generate, poruszając myszą nad pustym obszarem. Następnie:
- Wpisz Key passphrase i potwierdź ją.
- Kliknij Save private key i zachowaj plik
.ppkw bezpiecznym miejscu. - Skopiuj tekst z Public key for pasting into OpenSSH authorized_keys file.
Zaloguj się hasłem i zainstaluj klucz publiczny na VPS (wklej skopiowaną linię do pliku):
Bashmkdir -p ~/.ssh && chmod 700 ~/.ssh nano ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
W PuTTY przejdź do Connection > SSH > Auth > Credentials, wybierz swój plik .ppk w Private key file for authentication, wróć do Session i zapisz. Aby użyć istniejącego prywatnego klucza OpenSSH, skorzystaj z PuTTYgen: Conversions > Import key, a potem Save private key.
🧩 Jednorazowe wczytanie klucza w Pageant
Pageant to agent kluczy PuTTY. Uruchom pageant.exe, który trafia do obszaru powiadomień, kliknij prawym przyciskiem jego ikonę, wybierz Add Key, wskaż plik .ppk i wpisz hasło do klucza tylko raz. Dopóki Pageant działa, PuTTY i pscp używają klucza bez ponownego pytania. Zamknij Pageant, aby klucz został zapomniany.
📂 Przesyłanie plików przez pscp
pscp.exe to narzędzie PuTTY do kopiowania z wiersza poleceń. Zwróć uwagę na wielkie -P dla portu. W PowerShellu:
PowerShell# Wysłanie pliku pscp -P 22 C:\Users\USER\Documents\site.zip root@VPS_IP:/root/ # Pobranie pliku pscp -P 22 root@VPS_IP:/var/log/syslog C:\Users\USER\Downloads\ # Wysłanie całego folderu pscp -r -P 22 C:\Users\USER\project root@VPS_IP:/root/ # Użycie konkretnego klucza pscp -i C:\keys\vps.ppk site.zip root@VPS_IP:/root/
Jeśli pscp nie zostanie znaleziony, wywołaj go pełną ścieżką, na przykład & 'C:\Program Files\PuTTY\pscp.exe'.
✅ Weryfikacja połączenia
Po zalogowaniu sprawdź, czy używany jest klucz i czy jesteś na właściwej maszynie:
Bashwhoami hostname cat /etc/os-release sudo grep 'Accepted publickey' /var/log/auth.log | tail -n 3
Ostatnie polecenie działa w Ubuntu/Debian; w AlmaLinux/Rocky użyj sudo journalctl -u sshd | grep Accepted | tail -n 3. Pasek tytułu PuTTY pokazuje połączoną sesję, a Event Log (prawy przycisk na pasku tytułu) wylicza etapy uwierzytelniania.
🛠️ Rozwiązywanie problemów
Network error: Connection timed out / refused. Sprawdź VPS_IP i port, czy VPS jest uruchomiony oraz czy SSH nasłuchuje (sudo systemctl status ssh w Ubuntu/Debian, sshd w AlmaLinux/Rocky). Port może też blokować lokalna zapora lub sieć firmowa.
Server refused our key / Disconnected: No supported authentication methods available. Klucz publiczny nie został wklejony w jednej linii, używany jest zły użytkownik albo uprawnienia są zbyt szerokie. Sprawdź ponownie authorized_keys, wykonaj chmod 700 ~/.ssh i chmod 600 ~/.ssh/authorized_keys oraz upewnij się, że .ppk pasuje do klucza publicznego.
Unable to use key file (OpenSSH SSH-2 private key). PuTTY nie odczyta tego formatu. Przekonwertuj klucz w PuTTYgen (Conversions > Import key) lub zaktualizuj PuTTY do aktualnej wersji.
Sesja zawiesza się po kilku minutach. Ustaw opisany wyżej interwał keepalive.
🚀 PuTTY jest już skonfigurowany: zapisana sesja, logowanie kluczem i transfer plików. Następny krok: wyłącz logowanie hasłem, gdy klucz zacznie działać.