23

I have got an issue that seems about the format of SSH key used by GitHub. I used Git Bash to generate a new SSH key:

$ ssh-keygen -t rsa -C "[email protected]"

Then, I copied the key to the SSH section in settings of my GitHub account page. However, it came with the issue notice as follows:

Key is invalid. It must begin with 'ssh-ed25519', 'ssh-rsa', 'ssh-dss', 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384', or 'ecdsa-sha2-nistp521'. Check that you're copying the public half of the key

Following that, I edited my SSH key starting with ssh-rsa and my email address at the end. However, the issue is still there.

What is the solution to this? 

3
  • 1
    Looks like it has happened with you, because you've tried to add your private key instead of public one Commented Oct 7, 2017 at 13:28
  • 1
    make sure it's the id_rsa.pub Commented Sep 8, 2018 at 10:34
  • stackoverflow.com/a/68192584/7942242 Commented Jul 28, 2021 at 11:31

8 Answers 8

34

ssh-keygen will generate you a pair of keys, one private and one public. It sounds like you uploaded the wrong one. GitHub wants the public key, typically here: ~/.ssh/id_rsa.pub.

Sign up to request clarification or add additional context in comments.

2 Comments

Thanks! Yep, I just found one ending with .pub so that is the right and works properly!
Wow. This was my problem as well. I feel like a donkey. Thank you
13

Simply follow these steps and you will set up your SSH key in no time:

  • Generate a new ssh key (or skip this step if you already have a key) ssh-keygen -t rsa -C "your@email"

  • Once you have your key set in home/.ssh directory (or Users/<your user>.ssh under windows), open it and copy the content


How can I add the SSH key to the GitHub account?

  • Login to the GitHub account

  • Click on the rancher on the top right (Settings)

    GitHub account settings

  • Click on the SSH keys

    SSH key section

  • Click on the Add SSH key

    Add SSH key

  • Paste your key and save

And you are all set to go :-)

3 Comments

Easy way to grab this key to copy/paste into GitHub is using their suggested: clip < ~/.ssh/id_rsa.pub command
For those of us who make things harder than they have to be, also ensure that you are using the text from the .pub file.
5

If you are using a Mac and are typing out GitHub's instructions (e.g. Generating a new SSH key and adding it to the ssh-agent, you're probably typing and only tabbing (e.g. auto-completing) to:

$ pbcopy < ~/.ssh/id_rsa

and not

$ pbcopy < ~/.ssh/id_rsa.pub

With the former you're actually copying, and trying to paste your private key.

I hope that saves you some time.

1 Comment

sometimes I feel like a nut. sometimes I don't.
3

Another way to copy the public key to the clipboard:

clip < ~/.ssh/id_rsa.pub

1 Comment

What platform? Ubuntu? Is clip installed by default?
3

Open file ~/.ssh/id_rsa.pub. Then open it with an editor and copy the public key to your GitHub account.

Comments

2

I ran into the same problem and it turns out it was due to there being a - in the comment. GitHub apparently doesn't like -, but _ is OK though.

Comments

1

Add SSH key to Github

Check if you have a key?

ssh-add -l

If not? then follow steps to generate key

ssh-keygen -t rsa -b 4096 -C your__gmail

Now for copy the key use xclip tool or just goto file and copy

sudo apt install xclip
xclip -sel clip < ~/.ssh/id_rsa.pub
  • Now goto github.com and goto settings
  • select SSH and GPG keys
  • New SSH key
  • Enter "your__choice__name" in title field...
  • Paste your public key into the Key field
  • Click Add SSH key

Comments

0

For IntelliJ IDE,

Go to IntelliJ IDEA -> Preferences... enter image description here

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.