Reputation: 56699
I've just generated my RSA key pair, and I wanted to add that key to GitHub.
I tried cd id_rsa.pub
and id_rsa.pub
, but no luck. How can I access my SSH public key?
Upvotes: 946
Views: 1998895
Reputation: 7388
Copy the key to your clipboard and paste it in your preferred location.
$ pbcopy < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard
Warning: it's important to copy the key exactly without adding newlines or whitespace. Thankfully the pbcopy command makes it easy to perform this setup perfectly.
check: Generating SSH Keys.
Upvotes: 303
Reputation: 351
It is very simple. After you generated ssh key on your computer, you can access your public ssh key by following command
cat ~/.ssh/id_rsa.pub
You should see output similar to the following:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCyVGaw1PuEl98f4/7Kq3O9ZIvDw2OFOSXAFVqilSFNkHlefm1iMtPeqsIBp2t9cbGUf55xNDULz/bD/4BCV43yZ5lh0cUYuXALg9NI29ui7PEGReXjSpNwUD6ceN/78YOK41KAcecq+SS0bJ4b4amKZIJG3JWmDKljtv1dmSBCrTmEAQaOorxqGGBYmZS7NQumRe4lav5r6wOs8OACMANE1ejkeZsGFzJFNqvr5DuHdDL5FAudW23me3BDmrM9ifUzzjl1Jwku3bnRaCcjaxH8oTumt1a00mWci/1qUlaVFft085yvVq7KZbF2OPPbl+erDW91+EZ2FgEi+v1/CSJ5 your_username@hostname
Also note that the public key begins with ssh-rsa and ends with your_username@hostname.
Upvotes: 13
Reputation: 81
id_rsa.pub
is not a directory so you can not use cd
to open it.
instead you can use the command cd ~/.ssh
to access the folder containing your keys, then use cat id_rsa.pub
, nano id_rsa.pub
or gedit id_rsa.pub
to access the key file.
Upvotes: 3
Reputation: 151
ssh-add
is used to show the public key.
man ssh-add
-L Lists public key parameters of all identities currently repre‐
sented by the agent.
On my Linux system I copy it using xclip
ssh-add -L | xclip
Upvotes: 0
Reputation: 31
Just to give a new perspective to that question, if you use github, you could find your public key at: https://github.com/${USERNAME}.keys
Upvotes: 3
Reputation: 2014
Mac, Ubuntu, Linux compatible machines, use this command to print public key, then copy it:
$ cat ~/.ssh/id_rsa.pub
Upvotes: 31
Reputation: 1830
If you only have your private key available, you can generate the public key from it:
ssh-keygen -y
or
ssh-keygen -y -f path/to/private_key
Upvotes: 10
Reputation: 338
On Mac/unix and Windows:
ssh-keygen
then follow the prompts. It will ask you for a name to the file (say you call it pubkey, for example).
Right away, you should have your key fingerprint and your key's randomart image visible to you.
Then just use your favourite text editor and enter command vim pubkey.pub
and it (your ssh-rsa key) should be there.
Replace vim with emacs or whatever other editor you have/prefer.
Upvotes: 1
Reputation: 1205
I use Git Bash for my Windows.
$ eval $(ssh-agent -s) //activates the connection
$ ssh-add ~/.ssh/id_rsa //adds the identity
$ clip < ~/.ssh/id_rsa.pub //THIS IS THE IMPORTANT ONE. This adds your key to your clipboard. Go back to GitHub and just paste it in, and voilá! You should be good to go.
Upvotes: 2
Reputation: 1617
In UBUNTU +18.04
ssh-keygen -o -t rsa -b 4096 -C "[email protected]"
And After that Just Copy And Paste
cat ~/.ssh/id_rsa.pub
or
cat ~/.ssh/id_dsa.pub
Upvotes: 7
Reputation: 14467
On terminal cat ~/.ssh/id_rsa.pub
explanation
Upvotes: 16
Reputation: 123
If you're using windows, the command is:
type %userprofile%\.ssh\id_rsa.pub
it should print the key (if you have one). You should copy the entire result. If none is present, then do:
ssh-keygen -t rsa -C "[email protected]" -b 4096
Upvotes: 12
Reputation: 1149
The following command will save the SSH key on the clipboard. You only need to paste at the desired location.
cat ~/.ssh/id_rsa.pub | pbcopy
Upvotes: 9
Reputation: 2725
It can be found on this path (default path):
/Users/john/.ssh
john
is your Mac username.
Upvotes: 6
Reputation: 121
If you are using Windows PowerShell, the easiest way is to:
cat ~/.ssh/id_<key-type-here>.pub | clip
That will copy the key to your clipboard for easy pasting.
So, in my instance, I use ed25519 since RSA is now fairly hackable:
cat ~/.ssh/id_ed25519.pub | clip
Because I find myself doing this a lot, I created a function and set a simple alias I could remember in my PowerShell profile (learn more about PowerShell profiles here. Just add this to your Microsoft.PowerShell_profile.ps1
:
function Copy-SSHKey {
Get-Content ~/.ssh/id_ed25519.pub | clip
}
Set_Alias -Name sshkey -Value Copy-SSHKey
Then, in a PowerShell console, run . $profile
to load the functions. Then from now on all you will need to do is run sshkey
, and then paste the key into wherever you need via the clipboard.
Upvotes: 12
Reputation: 111
Use:
# sudo su
# cd /home/user/.ssh
.ssh# gedit id_rsa.pub
Then copy the entire file without any spaces. Click your icon at the top right of the GitHub page, go to settings, and add ssh.
Paste the copy into the space. It may prompt for your GitHub password. Enter it. Save.
Upvotes: 7
Reputation: 1625
If you're on Windows use the following, select all, and copy from a Notepad window:
notepad ~/.ssh/id_rsa.pub
If you're on OS X, use:
pbcopy < ~/.ssh/id_rsa.pub
Upvotes: 39
Reputation: 788
Here's how I found mine on OS X:
cd .ssh
(a hidden directory)If that doesn't work, do an ls
and see what files are in there with a .pub
extension.
Upvotes: 21
Reputation: 79
Open your id_dsa.pub or some_name.pub file with gedit and copy-paste the contents!
Just use:
~/.ssh$ gedit some_name.pub
Upvotes: 7
Reputation: 3044
On a Mac, you can do this to copy it to your clipboard (like cmd + c
shortcut)
cat ~/Desktop/ded.html | pbcopy
pbcopy < ~/.ssh/id_rsa.pub
and to paste
pbpaste > ~Documents/id_rsa.txt
or, use cmd + v
shorcut
to paste it somewhere else.
~/.ssh
is the same path as /Users/macbook-username/.ssh
You can use Print work directory: pwd
command on terminal to get the path to your current directory.
Upvotes: 2
Reputation: 166319
You may try to run the following command to show your RSA fingerprint:
ssh-agent sh -c 'ssh-add; ssh-add -l'
or public key:
ssh-agent sh -c 'ssh-add; ssh-add -L'
If you've the message: 'The agent has no identities.', then you've to generate your RSA key by ssh-keygen
first.
Upvotes: 70
Reputation: 39869
cat ~/.ssh/id_rsa.pub
or cat ~/.ssh/id_dsa.pub
You can list all the public keys you have by doing:
$ ls ~/.ssh/*.pub
Upvotes: 1582
Reputation: 558
After you generate your SSH key you can do:
cat .ssh/id_rsa.pub |pbcopy
which will copy your ssh key into your clipboard.
Upvotes: 13