SSH - Авторизация без пароля с помощью RSA ключей
В первую очередь, нужно создать пару ключей, если их ещё нет. По умолчанию ключи хранятся в домашней директории пользователя, /home/имя пользователя/.ssh/id_rsa и id_rsa.pub. Итак:
ssh-keygen Enter file in which to save the key (/home/user/.ssh/id_rsa):<Enter> Enter passphrase (empty for no passphrase):<Пароль(или ничего), Enter> Enter same passphrase again: <Тот же пароль, Enter> 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: 92:12:4c:сс:c8:36:ec:f6:60:50:c4:82:2a:01:39:20 user@host
Теперь, когда у нас есть ключ: - нужно создать на серверах, к которым мы собираемся подключаться с использованием этого ключа, папку /home/имя пользователя/.ssh. И, конечно, на сервере должен существовать пользователь с тем же именем, что и на локальной машине, где мы делали ключ. - копируем файл /home/имя пользователя/.ssh/id_rsa.pub на сервер, в файл /home/имя пользователя/.ssh/authorized_keys2:
scp ~/.ssh/id_rsa.pub hostname_of_server:.ssh/authorized_keys2
Важно: если файл authorized_keys2 уже существует, то его нужно просто дописать:
mkdir $HOME/.ssh chmod 700 $HOME/.ssh cat ~/.ssh/id_rsa.pub | ssh hosname "cat >> .ssh/authorized_keys2"
Это позволит использовать несколько ключей для авторизации под одним пользователем, например, если вы хотите авторизоваться с разных машин с разными же ключами.
В конфиге посмотреть, как называется файл где искать ключи: /etc/ssh/sshd_config
Macbook
ssh-copy-id user@server