collideoscope

addicted to the future
 

Easy Remote Colonization

March 16, 2011

Now that I’m managing a few linux servers (personal, not work related), I’ve found it handy to have automatic login via ssh-keys. At first it wasn’t so bad copying keys up to the server, but when you have 5 or so, it becomes a bit tedious (especially when I can never remember things). I’ve found a script to automate the process from StackOverflow:

#!/bin/bash
if [ -z "$1" ]; then
	echo "colonize.sh by Brian Enigma "
	echo "Function: copies ssh public keys to remote machines for passwordless login"
	echo "Usage: colonize.sh @"
	exit 1
fi
KEY=id_rsa.pub
STORE=authorized_keys
CONTENT=`cat ~/.ssh/$KEY`
echo "Attaching key to authorized_keys file"
ssh $1 "mkdir -p .ssh && chmod 700 .ssh && touch .ssh/$STORE \
	&& chmod 644 .ssh/$STORE \
	&& echo '$CONTENT' >> .ssh/$STORE \
	&& rm -f $KEY"
echo "Complete!  You should be able to log in without a password now!"

Note that before this works, you must have generated your keys on your local box first:

ssh-keygen -t rsa
 
Powered by WordPress | Written by Eric Kiel | BY-NC-SA 3 | <3