Добавление ключей SSH для виртуальных машин

SSH-ключи применяются для защищенного SSH-доступа к виртуальным машинам. Можно создать пару ключей на клиенте, с которого вы будете подключаться к виртуальным машинам через SSH. Закрытый ключ будет храниться на клиенте, и его можно будет скопировать на другие серверы. Открытый ключ необходимо будет загрузить в продукт Кибер Инфраструктура и указать при создании ВМ. Он внедряется в виртуальную машину посредством cloud-init и используется для аутентификации OpenSSH. Внедрение ключей поддерживается для виртуальных машин под управлением как Linux, так и Windows.

Ограничения

  • SSH-ключ можно указать, только если ВМ развертывается из шаблона или загрузочного тома (не ISO-образа).
  • Если ключ внедрен в одну или несколько ВМ, он останется в них даже после его удаления из панели.

Предварительные требования

  • Утилита cloud-init и OpenSSH Server установлены на загрузочный том или в шаблон ВМ, как указано в разделе Подготовка шаблонов.

Как добавить открытый ключ

Панель администратора

  1. Создайте пару SSH-ключей на клиенте с помощью утилиты ssh-keygen.

    # ssh-keygen -t rsa
    
  2. На экране Вычисления > Виртуальные машины > SSH-ключи нажмите Добавить ключ.
  3. В окне Добавить SSH-ключ укажите имя ключа и скопируйте значение из созданного открытого ключа, который находится в /root/.ssh/id_rsa.pub. При необходимости можно добавить описание ключа.

Интерфейс командной строки

  1. Создайте пару SSH-ключей на клиенте с помощью утилиты ssh-keygen.

    # ssh-keygen -t rsa
    
  2. Загрузите открытый ключ в вычислительный кластер. Например, чтобы создать открытый SSH-ключ mykey, выполните:

    # vinfra service compute key create --public-key /root/.ssh/id_rsa.pub mykey
    

Новый SSH-ключ появится в выводе команды vinfra service compute key list:

# vinfra service compute key list
+-------+-------------+----------------------------------+
| name  | description | created_at                       |
+-------+-------------+----------------------------------+
| mykey |             | 2021-06-15T12:24:27.814043+00:00 |
+-------+-------------+----------------------------------+

Как просмотреть сведения об открытом ключе

Панель администратора

На экране Вычисления > Виртуальные машины > SSH-ключи щелкните по ключу, сведения о котором вы хотите просмотреть. На правой панели будут отображены его имя, описание, а также дата и время его создания.

Интерфейс командной строки

Используйте следующую команду:

vinfra service compute key show <ssh-key>
<ssh-key>
Имя SSH-ключа

Например, чтобы вывести сведения о SSH-ключе publickey, выполните:

# vinfra service compute key show publickey
+------------------------+-------------------------------------------------+
| Field                  | Value                                           |
+------------------------+-------------------------------------------------+
| created_at             | 2019-04-25T13:41:14.241736+00:00                |
| description            | public key                                      |
| name                   | publickey                                       |
| public_key_fingerprint | 1a:fb:de:d8:1e:0a:84:30:fc:ff:e4:fd:89:e7:96:a9 |
+------------------------+-------------------------------------------------+

Как удалить открытый ключ

Панель администратора

  1. На экране Вычисления > Виртуальные машины > SSH-ключи выберите SSH-ключ, который следует удалить, и нажмите Удалить.
  2. В окне подтверждения нажмите Удалить.

Если SSH-ключ был внедрен в какие-либо виртуальные машины, он останется внутри них.

Интерфейс командной строки

Используйте следующую команду:

vinfra service compute key delete <ssh-key>
<ssh-key>
Имя SSH-ключа

Например, чтобы удалить SSH-ключ mykey, выполните:

# vinfra service compute key delete mykey