How to generate SSH key?

To generate an SSH key in Windows you will need an additional application. In case of Linux or MacOS, the appropriate tool is already available.

Please remember to transfer only the public key. The private key should not be transferred to third parties.

Generating SSH keys on Windows

The generation of SSH keys in Windows will be done by using Puttygen application.

1. Download the puttygen.exe application and run it. In the window that appears, press the "Generate" button.


Generating SSH keys - Putty - step 1

2. Application will ask us to move the mouse cursor, within the window to generate random data for key generation.

3. After the key generation is completed, the window should look like this.

Generating SSH keys - Putty - step 2

  • Public key for pasting into OpenSSH authorized_keys file - field where the public key for copying in OpenSSH format will appear (default for use on our servers),
  • Key passphrase, Confirm passphrase - type and confirm the password to our key (longer is better!),
  • Save public key, Save private key - buttons for saving public and private keys to separate files in .ppk format (application file format).

Generating SSH keys on Linux system

1. Open the terminal and then enter command: ssh-keygen.

2. When you are asked to enter a password (the Enter passphrase line), we recommend providing it, because it increases security.

#ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/myuser/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/myuser/.ssh/id_rsa.
Your public key has been saved in /home/myuser/.ssh/id_rsa.pub.
The key fingerprint is:
43:c5:5b:5f:b1:f1:50:43:ad:20:a6:92:6a:1f:9a:3a

3. After these commands are executed, the following files will appear in the ~/.ssh directory:

  • id_rsa – this is our private key. It cannot be lost or passed on to anyone,
  • id_rsa.pub – this is our public key. The contents of this file should be placed on server in ~/.ssh/authorized_keys, Or give it to the person who will do it for us.

Both keys will be available in the ~/.ssh/ directory.

Generating SSH keys on MacOS system

1. Open the terminal and then enter command: ssh-keygen.

2. When you are asked to enter a password (the Enter passphrase line), we recommend providing it, because it increases security.

#ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/myuser/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/myuser/.ssh/id_rsa.
Your public key has been saved in /Users/myuser/.ssh/id_rsa.pub.
The key fingerprint is:
43:c5:5b:5f:b1:f1:50:43:ad:20:a6:92:6a:1f:9a:3a

3. After these commands are executed, the following files will appear in the .ssh directory:

  • id_rsa – this is our private key. It cannot be lost or passed on to anyone,
  • id_rsa.pub – this is our public key. The contents of this file should be placed on server in ~/.ssh/authorized_keys, Or give it to the person who will do it for us.

Both keys will be available in the ~/.ssh/ directory.

linux, windows, ssh, puttygen, klucz prywatny, klucz publiczny, macos, private key, public key, ssh key, klucze ssh


Also Read