Настройка SSH авторизации с помощью ключей (клиент-Unix)

Шаг первый: генерируем ключи

Команда ssh-keygen с опцией -t dsa будет генерировать ключ DSA длиной 2048 бит (по умолчанию RSA 4096 бит).

$ ssh-keygen -q -f ~/.ssh/id_rsa -t rsa
$ ssh-keygen -q -f ~/.ssh/id_dsa -t dsa


Шаг второй: устанавливаем ключи на удалённый хост

Каждый авторизованный ключ для хоста добавляется в файл ~/.ssh/authorized_keys в папке пользователя удалённого хоста, одной строкой (в формате тип-ключ-хост). Поэтому при повторной генерации, или если авторизацию какого-то хоста надо прекратить, удаляем соответствующую строку в этом файле.

$ ssh-copy-id -i ~/.ssh/id_rsa.pub <user>@<remote_server>
$ ssh-copy-id -i ~/.ssh/id_dsa.pub <user>@<remote_server>

или ещё проще:

$ cat ~/.ssh/id_dsa.pub | ssh <user>@<remote_server> "cat - >> ~/.ssh/authorized_keys"


Шаг третий: проверяем результат

$ ssh <user>@<remote_server>