PuTTY is a free implementation of Telnet and SSH for Windows and Unix platforms, along with an xterm terminal emulator. PuTTY is a client program for the SSH, Telnet and Rlogin network protocols.

These protocols are all used to run a remote session on a computer, over a network. PuTTY implements the client end of that session: the end at which the session is displayed, rather than the end at which it runs.

In really simple terms: you run PuTTY on a Windows machine, and tell it to connect to (for example) a Unix machine. PuTTY opens a window. Then, anything you type into that window is sent straight to the Unix machine, and everything the Unix machine sends back is displayed in the window. So you can work on the Unix machine as if you were sitting at its console, while actually sitting somewhere else.

Can I copy and paste text between PuTTY and other Windows applications?

Yes. When you select text in the PuTTY window it automatically copies the text to the clipboard, without the need of pressing Ctrl-C or anything else. To paste the clipboard contents into a PuTTY window, you just need to click the right mouse button.

Does PuTTY work on macOS?

No. PuTTY is only available for Windows and Unix-based OS. As of version 0.68, PuTTY executables run on versions of Windows from XP onwards, up to and including Windows 11. If you need a macOS remote login with the SSH protocol, OpenSSH works with macOS and Linux, it is also free and open source.

What's a good alternative to PuTTY?

KiTTY is a fork of the original PuTTY client. It's based on PuTTY architecture and adds many new features for a Windows terminal app.

What's New

  • Security issue: fixed a remotely triggerable double-free in RSA key exchange. (We don't know of any way it is exploitable to execute code.)
  • Minor security issue: fixed a remotely triggerable crash in NIST ECDSA signature verification. (An assertion failure – definitely not exploitable to execute code.)
  • Minor security issue: fixed marking of Telnet and Rlogin session data with a trust sigil after you authenticated to a proxy (possibly allowing a server to spoof a repeat proxy password prompt).
  • Ability to run a specified command before starting the connection, e.g. to perform wake-on-LAN or a port knock.
  • On Unix: display 'pre-edit text', showing the progress of using multiple keystrokes to compose a single Unicode character.
  • On Unix: improved support for to running the GUI tools on Wayland (fixed startup issues and tuned performance).
  • Bug fix: configuring a SSH certificate authority on Unix would fail unless you manually made a config directory.
  • Bug fix: spurious "Network error: Socket is not connected" when authenticating to some HTTP proxies.
  • Bug fix: disabling cursor blinking in the Windows Control Panel but enabling it in PuTTY would lead to a tight loop.

Legal Warning: Use of PuTTY, PSCP, PSFTP and Plink is illegal in countries where encryption is outlawed. I believe it is legal to use PuTTY, PSCP, PSFTP and Plink in England and Wales and in many other countries, but I am not a lawyer and so if in doubt you should seek legal advice before downloading it. You may find this site useful (it's a survey of cryptography laws in many countries) but I can't vouch for its correctness.

Use of the Telnet-only binary (PuTTYtel) is unrestricted by any cryptography laws.