Другие

Настройка авторизации по RSA-ключу

При подключении к серверу по защищенному протоколу SSH можно использовать пароль или RSA-ключ. Более предпочтительным считается RSA-ключ, так как при этом меньше вероятность перехвата пароля и удобнее проходить авторизацию.

Для использования RSA-ключа нужно вначале создать его на локальном компьютере, а затем скопировать на сервер. Процедура создания RSA-ключа отличается в зависимости от операционной системы.

Windows

Создание RSA-ключа

Для создания RSA-ключа в ОС Windows можно использовать специальную программу

PuTTYgen (рекомендуется скачивать на официальном сайте).

  1. Запустите программу PuTTYgen.
  2. Выберите Type of key to generate - SSH-2 RSA.
  3. Нажмите Generate.
    Генерация RSA ключа
  4. В процессе создания ключа двигайте курсор мыши случайным образом. Это необходимо для генерации случайных значений в структуре ключа.
  5. После создания ключа Вы можете задать кодовую фразу в поле Key passphrase. Это позволяет повысить уровень защищенности подключения, однако каждый раз придется вводить кодовую фразу при подключении.
  6. Нажмите Save public key для сохранения открытого ключа.
  7. Нажмите Save private key для сохранения закрытого ключа.
  8. Сохраните в текстовом файле содержимое поля Public key for pasting into OpenSSH authorized keys file. Это содержимое необходимо для копирования ключа на сервер.
    Генерация RSA ключа

Копирование ключей на сервер

Для копирования ключей на сервер можно использовать утилиту pageant (рекомендуется скачивать с официального сайта).

  1. Подключитесь к серверу по SSH.
  2. Создайте на сервере каталог и файл для хранения ключей:
    mkdir ~/.ssh

    chmod 0700 ~/.ssh

    touch ~/.ssh/authorized_keys

    chmod 0644 ~/.ssh/authorized_keys
  3. Откройте файл для хранения ключей:
    nano ~/.ssh/authorized_keys
  4. Вставьте в файл текст из поля Public key for pasting into OpenSSH authorized keys file, полученный на шаге 8 создания ключей.
  5. Сохраните внесенные в файле изменения.  
  6. Запустите программу pageant. В результате иконка программы отобразится в трее. Щелкните по иконке правой кнопкой мыши и нажмите Add Key.
  7. Укажите путь к закрытому ключу, сохраненному на 7 шаге создания ключей. Нажмите  Open. Введите кодовую фразу (если она была установлена).

Linux и MacOS

Создание RSA-ключей

  1. Запустите терминал. Для генерации ключей выполните команду:
    ssh-keygen
  2. В результате будет выведено сообщение:
    Generating public/private rsa key pair.

    Enter file in which to save the key (/home/user/.ssh/id_rsa):
  3. Если нажать Enter, ключ будет сохранен в директорию, установленную по умолчанию.
  4. Задайте кодовую фразу. Также можно не вводить кодовую фразу и нажать Enter. Кодовую фразу нужно будет вводить при каждой авторизации по данному ключу.

Ключи сохраняются в директории ~/.ssh/ в файлах id_rsa (закрытый ключ) и id_rsa.pub (открытый ключ).

Копирование ключей на сервер

  1. Выполните команду:
    ssh-copy-id user@server
    где user – логин
    server – IP-адрес сервера
  2. Содержимое файла с открытым ключом id_rsa.pub будет скопировано в файл ~/.ssh/authorized_keys на сервере.
  3. Теперь для подключения к серверу Вы можете использовать команду:
    ssh user@server

Если у Вас остались вопросы - создайте тикет в техподдержку.