Home / Notes / SSH Without a Password
=====================================
The following steps can be used to ssh from one system to
another without specifying a password.
Notes
------
A. The system from which the ssh session is started via the
   ssh command is the [client]
B. The system that the ssh session connects to is the [server].
C. These steps seem to work on systems running OpenSSH.
D. The steps assume that a RSA key is being used because
   OpenSSH has deprecated DSA keys as being "too [] weak and
   [] recommend[s] against [their] use" (see OpenSSH Legacy Options). To use a DSA key (for example,
   on an older system) substitute 'dsa' for 'rsa'.
E. The steps assume that you are using a Bourne-like shell
   (sh, ksh or bash)
Steps:
------
1. On the [client] run the following commands:
    $ mkdir -p ~/.ssh
    $ chmod 0700 ~/.ssh
    $ ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''
   This should result in two files, ~/.ssh/id_rsa (private key)
   and ~/.ssh/id_rsa.pub (public key).
2. Copy ~/.ssh/id_rsa.pub to the [server].
3. On the [server] run the following commands:
    $ mkdir -p ~/.ssh
    $ chmod 0700 ~/.ssh
    $ cat id_rsa.pub >> ~/.ssh/authorized_keys2
    $ chmod 0600 ~/.ssh/authorized_keys2
   Depending on the version of OpenSSH the following commands
   may also be required:
    $ cat id_rsa.pub >> ~/.ssh/authorized_keys
    $ chmod 0600 ~/.ssh/authorized_keys
   An alternative is to create a link from authorized_keys2 to
   authorized_keys:
   $ cd ~/.ssh && ln -s authorized_keys2 authorized_keys
4. On the [client] test the results by ssh'ing to the [server]:
    $ ssh -i ~/.ssh/id_rsa [server]
   If a password prompt appears, adding the -v option before the
   -i option may be helpful to determine the problem.
5. (Optional) Add the following ~/.ssh/config on the [client]:
    Host [server]
        IdentityFile ~/.ssh/id_rsa
   This allows access to the [server] without having to specify
   the id_rsa file as an argument to ssh each time.
Translations:
-------------
Indonesian translation by Jordan Silaen / ChameleonJohn.com:
 
http://www.chameleonjohn.com/translations/ssh_nopass-Indonesian
References:
-----------
1. http://www.der-keiler.de/Mailing-Lists/securityfocus/Secure_Shell/2002-12/0083.html
2. ssh(1), ssh-keygen(1), ssh_config(5)