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.
$ ssh-keygen
Output:
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
Output:
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.
$ ssh-add
Output:
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.
Класс, самая понятная инструкция из всех, что нашёл. Спасибо!
Miks siin mõni kommentaar imelikus keeles on?
Kas siin kirjutatakse oma keeles ja eeldatakse, et inimesed üle maailma saavad aru?
user_a@Server_A>ssh-keygen -t rsa -b 4096 -N “” -f ~/.ssh/id_rsa
user_a@Server_A> ssh-copy-id -i ~/.ssh/id_rsa.pub user_b@Server_B
ssh-add
Will recommend checking this article if you have an issue and particularly if you get – bad ownership or modes for directory /home/dave/.ssh.
https://www.daveperrett.com/articles/2010/09/14/ssh-authentication-refused/
____
SSH doesn’t like it if your home or ~/.ssh directories have group write permissions. Your home directory should be writable only by you, ~/.ssh should be 700, and authorized_keys should be 600 :
Excelente guia.
Muchas gracias por el aporte.
ssh-add not working
“$ ssh-add
Could not open a connection to your authentication agent.”
If you have:
Could not open a connection to your authentication agent
when trying ssh-add, do this instead:
$ ssh-agent /bin/sh
$ ssh-add