SSH генерация ключей для удаленного доступа без пароля

///SSH генерация ключей для удаленного доступа без пароля

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

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

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

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

Рекомендую использовать утилиту 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 — имя аккаунта.

By | 2016-06-01T09:28:47+00:00 29.05.2016|Categories: Linux|Tags: , |Нет комментариев