Skip to content

How to Install PuTTY on Ubuntu and Convert Keys with puttygen

4 min read

Applies to: PuTTY on Ubuntu 26.04 and 24.04 and Debian 13; tested with the putty and putty-tools packages 0.83 on Ubuntu 26.04.1 and 0.81 on Ubuntu 24.04.5

You don’t download PuTTY from a website on Ubuntu: it is in the Ubuntu repositories, so install it with apt:

sudo apt update
sudo apt install putty

This installs the PuTTY window (putty) and the command-line tools from putty-tools. The PuTTY project itself only offers Windows installers and a source archive for Unix, so the package is the easy and safe route. At the time of writing, Ubuntu 26.04 has PuTTY 0.83, Ubuntu 24.04 has 0.81 and Debian 13 has 0.83; sudo apt upgrade keeps it updated.

Do you need PuTTY at all?

Ubuntu already has the ssh command, which does everything most people use PuTTY for on Windows:

ssh root@203.0.113.10
ssh -p 2222 root@203.0.113.10

PuTTY on Ubuntu is useful when you prefer its window and saved sessions, or when you have to work with .ppk key files from Windows users. For that last job you only need the small putty-tools package: sudo apt install putty-tools.

“Unable to locate package putty”

PuTTY is in Ubuntu’s universe component. If universe is switched off, apt answers:

E: Unable to locate package putty

Switch it on and try again:

sudo add-apt-repository universe
sudo apt update
sudo apt install putty

In our Ubuntu 24.04 test, add-apt-repository printed Adding component(s) 'universe' to all repositories. If the command itself is missing, install software-properties-common first.

Start PuTTY

Open the application menu and search for PuTTY SSH Client, or type putty in a terminal. As on Windows, enter the server’s IP address or host name, check that the port is 22 (or your own SSH port), and click Open. You can also start a connection straight from the terminal:

putty -ssh -P 2222 -l root 203.0.113.10
putty -load "my-server"

-P sets the port, -l the user name and -load opens a saved session. Saved sessions are stored in ~/.putty/sessions in your home folder. putty needs a desktop: on a server without one it only prints cannot open display.

Use a key with PuTTY on Ubuntu

PuTTY uses its own key format (.ppk). According to the PuTTY manual, the -i option only accepts SSH-2 keys in PPK format, not OpenSSH keys. Convert an OpenSSH key with puttygen:

puttygen ~/.ssh/id_ed25519 -o ~/mykey.ppk
putty -i ~/mykey.ppk -l root 203.0.113.10

The new file starts like this:

PuTTY-User-Key-File-3: ssh-ed25519
Encryption: none
Comment: me@laptop

Version 3 of the format arrived with PuTTY 0.75. If the key must work in an older PuTTY, add --ppk-param version=2, which gives PuTTY-User-Key-File-2.

Convert a .ppk key for the ssh command

The reverse is the more common job on Ubuntu: someone gave you a .ppk file made on Windows and you want to use ssh:

puttygen mykey.ppk -O private-openssh -o ~/.ssh/id_server
puttygen mykey.ppk -O public-openssh
ssh -i ~/.ssh/id_server root@203.0.113.10

The first command writes a private key that starts with -----BEGIN OPENSSH PRIVATE KEY-----; in our test it was created with the safe permissions -rw------- that ssh requires. The second prints the public key line for the server’s ~/.ssh/authorized_keys. If the .ppk file has a passphrase, puttygen asks Enter passphrase to load key:.

To check that two files hold the same key, compare the fingerprints. Both of these printed the same SHA256: value in our test:

puttygen -l mykey.ppk
ssh-keygen -lf ~/.ssh/id_server.pub

Other tools in putty-tools

  • pscp: copy files over SCP or SFTP, like scp.
  • psftp: interactive file transfer, like sftp.
  • plink: a command-line connection tool (plink [options] [user@]host [command]), like ssh.
  • puttygen: create and convert keys.

On Ubuntu, the OpenSSH tools do the same jobs and are already installed, so these are mainly useful for scripts shared with Windows.

Related: connect to your server with PuTTY on Windows, connect to SSH on a different port, set up SSH keys and create SSH keys on Windows.

Official documentation: PuTTY download page.

Related services

KVM VPS hosting

NVMe SSD and full root access, with Free Basic Managed Support.

Unmanaged dedicated servers

full root access and free IPMI KVM, with Free Basic Managed Support.

Linux server management

hardening, patching, monitoring and automation for Ubuntu, Debian, RHEL and AlmaLinux.

Was this answer helpful?

Still stuck? Open a ticket