Logo programu | |
Okno konfiguracji PuTTY w systemie Windows | |
| Autor | Simon Tatham i współpracownicy |
|---|---|
| Pierwsze wydanie | 1999 |
| Aktualna wersja stabilna | 0.85 (16 sierpnia 2026) [±] |
| System operacyjny | Windows, Linux, Unix |
| Rodzaj | Klient SSH, Telnet, rlogin; emulator terminala |
| Licencja | MIT |
| Strona internetowa | |
PuTTY – wolny emulator terminala i klient protokołów dostępu zdalnego, w tym SSH, Telnet i rlogin, rozwijany przede wszystkim przez Simona Tathama. Jest dostępny dla Microsoft Windows oraz systemów uniksowych, w tym Linuksa. Nazwą PuTTY określa się również zestaw towarzyszących mu narzędzi do transferu plików, obsługi kluczy kryptograficznych i wykonywania zdalnych poleceń. Program i jego kod źródłowy są rozpowszechniane na licencji MIT.
Według wspomnień Tathama prace rozpoczęły się latem 1996 roku. Niezadowolony z dostępnych klientów Telnet dla Windows, napisał własny program z graficznym interfejsem i emulacją terminala, początkowo nazwany STel, od Simon's Telnet. Latem 1998 roku przebudował go tak, aby oddzielić emulację terminala od obsługi protokołów, dodał SSH-1 i zmienił nazwę na PuTTY. Program został publicznie udostępniony w 1999 roku. Najstarszy wpis w oficjalnym dzienniku zmian dotyczy wersji 0.45 z 22 stycznia 1999 roku.
Zestaw stopniowo rozszerzano o osobne programy. Wersja 0.48 z listopada 1999 roku zawierała narzędzie do kopiowania plików PSCP. W wydaniu 0.50 z 16 października 2000 roku pojawiły się obsługa SSH-2, agent kluczy Pageant i narzędzie wiersza poleceń Plink, a w wersji 0.51 z grudnia tego roku – generator kluczy PuTTYgen. Wydanie 0.52 z 14 stycznia 2002 roku rozszerzyło obsługę SSH-2 o uwierzytelnianie kluczami RSA i DSA; wprowadziło także klienta PSFTP, przekierowywanie połączeń TCP i X11 oraz obsługę Unicode.
Tatham rozpoczął przenoszenie programu do systemów uniksowych pod koniec 2002 roku, początkowo wydzielając emulator terminala pterm. Port uniksowy udostępniono w wersji 0.54 z 12 lutego 2004 roku. Kolejne rozszerzenia obejmowały obsługę IPv6 w wersji 0.58 z 2005 roku, połączenia szeregowe w wersji 0.59 z 2007 roku oraz współdzielenie połączenia SSH przez kilka uruchomionych instancji programu w wersji 0.64 z 2015 roku.
Rozwijano również mechanizmy kryptograficzne SSH-2. Wersja 0.68 z 2017 roku dodała uwierzytelnianie i wymianę kluczy z wykorzystaniem krzywych eliptycznych. Wydanie 0.78 z 2022 roku wprowadziło hybrydową wymianę kluczy z użyciem NTRU Prime, a wersja 0.83 z 2025 roku – z użyciem ML-KEM.
PuTTY wyświetla tekstowy interfejs zdalnego komputera, emulując terminal. Oprócz SSH obsługuje protokoły Telnet, rlogin i SUPDUP oraz połączenia przez lokalny port szeregowy. SSH szyfruje komunikację, natomiast pozostałe wymienione protokoły sieciowe nie zapewniają porównywalnej ochrony. Domyślnie używany jest SSH-2; obsługa starszego SSH-1 pozostaje mechanizmem zgodności z dawnymi serwerami.
Program umożliwia uwierzytelnianie użytkownika kluczem publicznym i sprawdzanie klucza serwera. Obsługuje lokalne, zdalne i dynamiczne przekierowywanie portów oraz przekazywanie połączeń X11 przez SSH do lokalnego serwera X. Współdzielenie połączenia pozwala kilku instancjom PuTTY korzystać z jednego połączenia SSH-2, przy zachowaniu osobnych sesji terminalowych. Dostępne szyfry obejmują AES, a także starsze algorytmy, takie jak 3DES, Blowfish i DES, utrzymywane ze względów zgodności; ich dostępność i domyślne ustawienia zależą od algorytmu i wersji protokołu.
Oprócz graficznego klienta PuTTY projekt obejmuje narzędzia przeznaczone do odmiennych zadań:
| Program | Przeznaczenie |
|---|---|
| PuTTY | Emulator terminala i klient dostępu zdalnego z graficznym interfejsem konfiguracji. |
| PSCP | Kopiowanie plików z wiersza poleceń przez SFTP lub starszy protokół SCP. |
| PSFTP | Klient SFTP z interaktywną obsługą transferu plików oraz trybem wsadowym. |
| Plink | Klient wiersza poleceń do wykonywania zdalnych poleceń i automatyzacji połączeń. |
| Pageant | Agent przechowujący klucze prywatne w pamięci i obsługujący żądania uwierzytelnienia klientów SSH. |
| PuTTYgen | Generowanie i przekształcanie kluczy używanych do uwierzytelniania SSH. |
Zespół projektu udostępnia pliki wykonywalne dla Windows oraz kod źródłowy pozwalający zbudować wersję uniksową; pakiety dla systemów uniksowych dostarczają również ich dystrybucje. Istnieją także porty przygotowane przez osoby trzecie, odrębne od wydań zespołu PuTTY. Rozwój prowadzi niewielki zespół współpracowników Tathama, przyjmujący również wkład zewnętrznych autorów.
Oficjalna strona projektu znajduje się w domenie chiark.greenend.org.uk. W 2025 roku zespół uruchomił także stronę putty.software, odsyłającą do jego materiałów. Domena putty.org nie należy do zespołu PuTTY.
Timothy Dyck w recenzji wersji 0.52 opublikowanej w „eWeek” w lutym 2002 roku chwalił prostotę programu, szybkość działania i łatwość konfiguracji. Zwracał uwagę na rozszerzenie funkcji, w tym transfer plików SFTP i obsługę Unicode. Daniel J. Barrett, Richard E. Silverman i Robert G. Byrnes w książce SSH, The Secure Shell: The Definitive Guide z 2005 roku opisywali wersję 0.56 jako niewielkiego, prostego i użytecznego klienta SSH. Pozytywnie oceniali też jego dokumentację, a oznaczenia programu jako wersji beta nie uznawali za przeszkodę w korzystaniu z niego.