Skip to content

Instantly share code, notes, and snippets.

@JoaquimLey
Last active April 4, 2024 11:07
Show Gist options
  • Star 44 You must be signed in to star a gist
  • Fork 14 You must be signed in to fork a gist
  • Save JoaquimLey/31deaf857521319fcba8ee9f7af47299 to your computer and use it in GitHub Desktop.
Save JoaquimLey/31deaf857521319fcba8ee9f7af47299 to your computer and use it in GitHub Desktop.
Generating a new SSH key and adding it to the ssh-agent

Generating a new ssh-key

Open Terminal. Paste the text below, substituting in your GitHub email address.

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

This creates a new ssh key, using the provided email as a label

Generating public/private rsa key pair.

  1. When you're prompted to Enter a file in which to save the key press Enter to accept the default file location.

Enter the file in which to save the key (you can press ENTER for default path):

(/Users/you/.ssh/id_rsa): [Press enter]

At the prompt, type a secure passphrase.

Enter passphrase (empty for no passphrase): [Type a passphrase]

Enter same passphrase again: [Type passphrase again]

Adding your SSH key to the ssh-agent

Before adding a new SSH key to the ssh-agent, you should have checked for existing SSH keys and generated a new SSH key.

Ensure ssh-agent is enabled:

start the ssh-agent in the background

eval "$(ssh-agent -s)"

Agent pid 59566

Add your SSH key to the ssh-agent. If you used an existing SSH key rather than generating a new SSH key, you'll need to replace id_rsa in the command with the name of your existing private key file.

$ ssh-add ~/.ssh/id_rsa

@mitia-anah
Copy link

I have exactly what anonperezj got. I created the key and i don't know whether I have id_rsa file in my .ssh directory or not. How can check it please? And if not, what can I do?

@JoaquimLey
Copy link
Author

@mitia-anah I don't know which Operating system you are on, but check you are seeing "invisible" files. The way you check is to go to that directory and see if the file is there.

@hmorgancode
Copy link

hmorgancode commented Mar 23, 2021

I had the problem people are describing: "ssh-add ~/.ssh/id_rsa" results in "No such file or directory"

I'm on Windows, I believe I solved the problem by using the command "ssh-add C:\Users\USER\.ssh\id_rsa" instead of using a tilde ~/.ssh/id_rsa to shorten the path.

@Emmanuella77
Copy link

For Windows, this worked for me:
$ eval "$(ssh-agent -s)"
Agent pid 554

$ ssh-add sshkey

note: sshkey is my filename

@Snax777
Copy link

Snax777 commented Apr 4, 2024

For Windows, this worked for me: $ eval "$(ssh-agent -s)" Agent pid 554

$ ssh-add sshkey

note: sshkey is my filename

Thanks. It also worked for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment