Can I test authentication with an RSA key locally?
Solution 1
You can run ssh-add
to add your key to your current ssh-agent
. This will prompt for your passphrase.
Normally, when ssh-agent
is running, and you add a key to it, you won't have to unlock your key any more when you connect to hosts that recognise that key. If that isn't what you want, just run ssh-add -d
to remove it off your ssh-agent
when you're done testing.
Solution 2
Or as pointed here: How can I test my ssh-keys locally without a server
You can do this:
ssh-keygen -y
And this doesn't require any server (works great with msysgit on Windows).
pjmorse
Longtime web geek currently at MathWorks, former job creator at Common Media, Inc., former graduate student at Tufts, sometime track writer, father of twins.
Updated on March 17, 2020Comments
-
pjmorse over 4 years
Is there a way to check locally if you're providing the correct passphrase to an RSA key?
I recently had trouble pushing some commits to github because the push prompted for a password and then failed authentication. I verified that github had the correct public key for the
id_rsa
file in my~/.ssh
directory, and I verified that I could authenticate with Github (if youssh [email protected]
it will tell you you authenticated but that they don't offer shell access,) so I knew the problem was on my end, not Github's.(I should point out that at this point I simply used
git format-patch
to get my commits as files, then blew away my working repository and re-cloned from Github, reapplied the patches usinggit am
, and pushed without any trouble, so whatever the original problem was, it's fixed.)This left me wondering, though: how would I know if an authentication problem with a remote host was me providing the wrong passphrase to my private key, or the remote host not recognizing my key? Is there a way to do a test authentication with the private key, locally, without trying to connect to a remote host?