- Log in to post comments
Using remote shells is all time favourite but remembering those many passwords is a pain so here are the steps to login using SSH without putting a password :)
1. Create a public ssh key, if you haven’t one already. Look at ~/.ssh. If you see a file named id_dsa.pub then you obviously already have a public key. If not, simply create one.
ssh-keygen -t dsa should do the trick. Please note that there are other types of keys, e.g. RSA instead of DSA.
2. Make sure your .ssh dir is not publically writable
# chmod 700 ~/.ssh
3. Get your public ssh key on the server you want to login automatically.
#scp ~/.ssh/id_dsa.pub remoteuser@example.com
4. Append the contents of your public key to the ~/.ssh/authorized_keys and remove it.
Important: This must be done on the server you just copied your public key to. Otherwise you wouldn’t have had to copy it on your server. Simply issue something like
# cat id_dsa.pub >> .ssh/authorized_keys while at your home directory.
5. Instead of steps 3 and 4, you can issue something like this:
# cat ~/.ssh/id_dsa.pub | ssh -l remoteuser remoteserver.com 'cat >> ~/.ssh/authorized_keys'
6. Remove your public key from the home directory on the server.
7. And you are in
# ssh -l remoteuser example.com
or
# ssh remoteuser@example.com
without getting asked for a password.