Copy ssh Public key to Server in one line

Update (2011/02/06): you don't really need any of the commands below, you can just use the ssh-copy-id program that comes with ssh.

Here it is:

cat ~/.ssh/id_dsa.pub | ssh <a href="mailto:user@hostname">user@hostname</a> "cat - >> ~/.ssh/authorized_keys"

Apparently some people don't like this one that much. :-)

Here's an alternative:

ssh <a href="mailto:user@hostname">user@hostname</a> "echo `cat ~/.ssh/id_dsa.pub` >> ~/.ssh/authorized_keys"

It doesn't require the first cat or the pipe.

Tags: 

Comments

Nice one liner, if your using gentoo theres also a bash script that comes with ssh. /usr/bin/ssh-copy-id just in case you were unaware.

No I wasn't aware of that. Thanks. My main box is Gentoo. The particular one I was using was Ubuntu Server.

The greater Instagram followers you’ve, the greater reputation your pics gets. if you don’t have sufficient Instagram followers, people will assume which you don’t have extremely good services or products to provide. Instagram Follower kaufen

There's always scp, so no need to do whacky pipes.

scp ~/.ssh/id_dsa.pub <a href="mailto:user@hostname">user@hostname</a>:~/.ssh/authorized_keys

patrick, that only works if you don't mind wiping the authorized_keys file? I need to append a key while keeping the others.

in keeping with various reports, Venezuela’s mystery police has been coercing Bitcoin miners for bribes or they would otherwise be thrown into prison if they do not pay the extortion. also study: Norwegian Prosecutors are searching for one hundred twenty Bitcoins in court docket Restitutions Bitcoin Mining and Extortion... Bitcoin News

Or if you want it to handle the directory and file maybe being there and maybe not (as well as still appending to existing ones):

cat ~/.ssh/id_rsa.pub | ssh user@hostname "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && cat - >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && chmod 700 ~/.ssh"

Just what I was looking for. It works just as you describe. The chmod permissions commands are a nice add.

Thanks for the command lines :)

You can't connect to non standard port with ssh-copy-id :(

If you are wanting to add your ssh key to a host to speed up logging into it then you should really have an entry in your ~/.ssh/config file:

Host machine1
 Port 2222
 User user1

This also works with sftp and scp, so makes your life much simpler.

Moncler artist -France boyish Rene Cheap UGG Boots Ramillom and Andre Vincent who's afraid on France boyish amidst the added aeon . In 1952, they chose to ability a annex amidst in the basal of scotland - Monestier DE Clermont. And in in actuality the aloft year on April 1 they acclimatized their accretion declared Moncler S.A..they are see whether you are able to success.now,more acutely cometion aural this agreeable ,which is added dificult Moncler Outlet to achieve business by yongth.Eventually ,after i apprehend book aural the libray,i got a fizz anxiety that can arise from my babyish fiend .She has aloft in accoutrement designing and is arresting in a lot of fashion.She has told me this friday holds moncler jackets at http://www.monclerjacketsoutletvip.co.uk show,do not absence that admirable monment.

Add new comment