It is very easy to perform SSH login to the remote server without prompting a password.
With a help of utilities from OpenSSH package, you can generate authentication keys on your local machine, copy public key to the remote server and add identities to your authentication agent.
Just three simple steps separate you from the possibility of connecting to a remote server without prompting a password.
Step 1: Generate a key pair on the local server
Use ssh-keygen to generate authentication keys for SSH.
Generating public/private rsa key pair. Enter file in which to save the key (/home/user/.ssh/id_rsa): Created directory '/home/user/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/user/.ssh/id_rsa. Your public key has been saved in /home/user/.ssh/id_rsa.pub. The key fingerprint is: 8c:2a:ed:82:98:6d:12:0a:3a:ba:b2:1c:c0:25:be:5b
Step 2: Install your public key on the remote server
Use ssh-copy-id to connect to the remote machine and install your public key by adding it the authorized_keys file.
$ ssh-copy-id -i ~/.ssh/id_rsa.pub UserName@RemoteServer
UserName@RemoteServer's password: ******** Now try logging into the machine, with "ssh 'username@remoteserver'", and check in: ~/.ssh/authorized_keys to make sure we haven't added extra keys that you weren't expecting.
Step 3: Add a private key to the authentication agent on the local server
Use ssh-add to add identities to the ssh-agent – the authentication agent.
Identity added: /home/user/.ssh/id_rsa (/home/user/.ssh/id_rsa)
Now you can log into the remote server via the SSH protocol without prompting a password.
This is a must-read for anyone who wants to understand, explain and implement DevOps culture, process and tools for high performance development and operations.
All DevOps practices in a single place - organisational, cultural and technical. Lots of exceptional case studies.
Increase profitability, elevate work culture, and exceed productivity goals through DevOps practices.