Инструкция по созданию ключей для организации удаленного доступа между серверами без ввода пароля.

Создание пары ключей на локальном сервере

Для общего случая наименование ключа рекомендую оставить по умолчанию. В противном случае его будет необходимо всегда указывать.
Чтобы доступ к ключу осуществлялся без ввода пароля его необходимо оставить пустым.

Установка публичного ключа на удаленном сервере

Рекомендую использовать утилиту ssh-copy-id для переноса публичного ключа на удаленный сервер.

Если такой утилиты вдруг нет, то необходимо выполнить такую последовательность на примере аккаунта backup на удаленном сервере remoteserver:

Так же необходимо убедится, что на удаленном сервере разрешена аутентификация по публичному ключу и в настройках sshd указан тот же самый файл .ssh/authorized_keys, где лежат публичные ключи.

Значение PubkeyAuthentication должно быть yes. Если значение AuthorizedKeysFile отличается от .ssh/authorized_keys, как на примере, то необходимо либо переименовать файл с публичными ключами на удаленном сервере на тот, что указан в настройках sshd или изменить настройки sshd таким образом, чтобы значение AuthorizedKeysFile было равно .ssh/authorized_keys.

Проверка

Если пароль удаленным сервером не запрошен, то все настроено верно.
Если имя ключа расположенного в каталоге ~/.ssh отличается от имен по умолчанию (id_dsa, id_ecdsa, id_rsa), то его необходимо указывать явно с ключом -i, как это показано на примере ниже.

Ограничение доступа по паролю

На стороне сервера авторизация по паролю для конкретного аккаунта может быть заблокирована следующей командой:

Где, backup — имя аккаунта.