PuTTY je emulator terminala, ki lahko deluje kot odjemalec protokolov SSH, Telnet, rlogin in surovih računalniških protokolov TCP. Beseda "PuTTY" nima pomena, čeprav se včasih za terminale Unix uporablja izraz "tty" kot kratica za "teletype".
PuTTY je bil najprej napisan za Microsoft Windows, vendar je bil prenesen tudi na druge operacijske sisteme, vključno z nekaterimi Unixu podobnimi platformami. Operacijska sistema Mac OS in Mac OS X se še vedno prenašata, neuradno pa je bil prenesen na operacijska sistema Symbian in Windows Mobile.
PuTTY je trenutno beta programska oprema. Licenciran je z licenco MIT in je brezplačna odprtokodna programska oprema.
Glavne funkcije
- Podpora protokolom: SSH (vključno z različnimi različicami in algoritmi), Telnet, rlogin, surovi TCP in serijske povezave.
- SSH avtentikacija: uporabniško ime/geslo in preverjanje z javnimi/privatnimi ključi.
- Upravljanje sej: možnost shranjevanja nastavitev za hitri dostop do pogosto uporabljenih strežnikov.
- Tuneliranje: lokalno, oddaljeno in dinamično posredovanje vrat (port forwarding) za varno preusmerjanje prometa.
- Podpora za tipkovnico in terminalske tipe: izbira kodiranja, emulacije (npr. xterm, VT100) in numeričnih nastavitev.
- Pomožna orodja: PuTTYgen (generiranje ključev), Pageant (SSH agent) ter CLI programi PSCP in PSFTP za prenos datotek.
- Konfigurabilen vmesnik: barve, pisave, časovne omejitve, logiranje seje in način ohranjanja okna ob izhodu.
Kako uporabljati PuTTY
Osnovna povezava je preprosta: v polje "Host Name (or IP address)" vnesete naslov strežnika (ali IP) in po potrebi spremenite vrata (privzeto 22 za SSH). Pred prvo povezavo vas PuTTY opozori na odtise ključa strežnika (host key) — pomembno je, da preverite prstni odtis, da se izognete napadom "man-in-the-middle".
Za avtentikacijo z javnim ključem najprej ustvarite par ključev s programom PuTTYgen (ali uporabite obstoječ OpenSSH ključ, ga po potrebi pretvorite). Javnega ključa dodate na strežnik (običajno v ~/.ssh/authorized_keys), privatni ključ pa naložite v PuTTY ali Pageant (SSH agent), če želite avtomatsko odklepanje brez vnosa gesla.
PuTTY omogoča tudi nastavitve za port forwarding (tuneliranje):
- Lokalen port forwarding (L): preusmerite lokalno vratno številko na oddaljeni naslov skozi SSH.
- Oddaljen port forwarding (R): od daleč aktivirajte dostop do lokalne storitve preko strežnika.
- Dinamični (SOCKS) proxy (D): deluje kot dinamičen proxy za usmerjanje prometa skozi SSH povezavo.
Orodja in dodatki
- PuTTYgen: orodje za ustvarjanje in konverzijo SSH ključev (format PuTTY .ppk in OpenSSH).
- Pageant: SSH agent za upravljanje zasebnih ključev v spominu; omogoča enkratno odklepanje in ponovna preverjanja brez vnašanja gesla.
- PSCP in PSFTP: ukazni orodji za prenos datotek (SCP in SFTP protokola) med lokalnim računalnikom in strežnikom.
Namestitev in prenosljivost
Na Windows sistemih je PuTTY na voljo kot samostojna .exe datoteka brez potrebe po namestitvi, kar omogoča prenosljivost (portable uporaba s USB-ključem). Obstajajo tudi izvajalci in paketi za različne distribucije operacijskih sistemov Unix/Unix-like; za Mac OS X obstajajo prenosni porti, vendar uradne Apple različice ni.
Varnost in dobre prakse
- Vedno preverite prstni odtis (host key) strežnika ob prvi povezavi — primerjajte ga s podatkom, ki ga ima upravitelj strežnika.
- Uporabljajte javno/privatne ključne pare namesto gesel, kjer je to mogoče, in zaščitite zasebni ključ z močnim geslom.
- Posodabljajte PuTTY, da boste imeli na voljo najnovejše varnostne popravke in podporo za moderne kriptografske algoritme.
- Pri uporabi tuneliranja pazite, katere storitve preusmerjate in komu dovolite dostop preko njih.
Omejitve
PuTTY je osredotočen na terminalske povezave in SSH/Telnet protokole, zato nima vgrajenega X11 strežnika (X11 forwarding je mogoč le, če imate zunanji X strežnik), ni pa tudi polnega grafičnega upravljalnika sej, kot ga ponujajo nekatera komercialna orodja (čeprav so na voljo zunanji programi, ki dodajo takšne funkcije).
Alternativne rešitve
Če iščete alternativo ali dodatne funkcionalnosti, lahko razmislite o OpenSSH (vgradjen v večino Unix sistemov), KiTTY (fork PuTTY z razširitvami), MobaXterm (Windows z integriranim X11 in več orodji) ali sodobnih, večplatformskih odjemalcih kot je Termius.
Razvoj in licenca
PuTTY je odprtokodna programska oprema, licencirana pod MIT licenco, kar omogoča prosto uporabo, spreminjanje in redistribucijo. Projekt je bil dolgo vzdrževan s strani posameznih razvijalcev in skupnosti prispevkov; ker gre za stabilno in razširjeno orodje, ga pogosto uporabljajo sistemski skrbniki in razvijalci po celem svetu.
Za več informacij o konfiguraciji, naprednih možnostih in prenosu obiščite uradne vire ali dokumentacijo, ki spremlja vašo distribucijo PuTTY ali paketov, ki jih uporabljate.

