Экспортировать SSH-сертификат
Чтобы пользователь или сторонний инструмент, такой как Terraform
Чтобы экспортировать SSH-сертификат пользователя организации Cloud Organization или сервисного аккаунта на локальный компьютер:
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
-
Посмотрите описание команды CLI для экспорта SSH-сертификата в локальную директорию:
yc compute ssh certificate export --help
-
Получите идентификатор организации, в которой находится нужный профиль OS Login пользователя или сервисного аккаунта:
yc organization-manager organization list
Результат:
+----------------------+-------------------------+-------------------------+ | ID | NAME | TITLE | +----------------------+-------------------------+-------------------------+ | bpf1smsil5q0******** | sample-organization1 | Organization 1 | | bpf2c65rqcl8******** | sample-organization2 | Organization 2 | | bpf6dne49ue8******** | sample-organization3 | Organization 3 | +----------------------+-------------------------+-------------------------+
-
Получите список логинов в профилях OS Login пользователей и сервисных аккаунтов нужной организации, указав ее идентификатор:
yc organization-manager os-login profile list \ --organization-id <идентификатор_организации>
Результат:
+----------------------+----------------------+-----------+----------------------+----------------------+------------+ | ID | LOGIN | UID | ORGANIZATION ID | SUBJECT ID | IS DEFAULT | +----------------------+----------------------+-----------+----------------------+----------------------+------------+ | aje1eb5qm7jb******** | yc-sa-my-service-acc | 487816044 | bpfaidqca8vd******** | ajevnu4u2q3m******** | true | | ajegs81t2k9s******** | user1 | 760684761 | bpfaidqca8vd******** | aje7b4u65nb6******** | true | | ajej57b2kf0t******** | user2 | 1011 | bpfaidqca8vd******** | ajei280a73vc******** | true | +----------------------+----------------------+-----------+----------------------+----------------------+------------+
Сохраните значение поля
LOGIN
для нужного пользователя или сервисного аккаунта — оно понадобится позднее. -
Экспортируйте сертификат:
yc compute ssh certificate export \ --login <логин_пользователя_или_сервисного_аккаунта> --organization-id <идентификатор_организации> \ --directory <путь_к_директории>
Где:
--login
— полученный ранее логин пользователя или сервисного аккаунта, заданный в профиле OS Login. Необязательный параметр. Если параметр не задан, SSH-сертификат будет выгружен для пользователя или сервисного аккаунта, авторизованного в текущий момент в профиле YC CLI.--organization-id
— полученный ранее идентификатор организации, из которой нужно экспортировать SSH-сертификат. Необязательный параметр. Если параметр не задан, сертификат будет выгружен из организации, к которой относится каталог по умолчанию.--directory
— путь к локальной директории, в которой будет сохранен экспортированный SSH-сертификат. Необязательный параметр. Если параметр не задан, сертификат будет по умолчанию сохранен в директории.ssh
в домашней директории текущего пользователя компьютера (~/.ssh/
).
Результат:
Identity: /home/user1/.ssh/yc-cloud-id-b1gia87mbaom********-orgusername Certificate: /home/user1/.ssh/yc-cloud-id-b1gia87mbaom********-orgusername-cert.pub
При сохранении экспортированного сертификата в директорию, отличную от директории по умолчанию, убедитесь что доступ к сохраненным файлам сертификата разрешен только текущему пользователю. При необходимости измените разрешения с помощью команды
chmod
в Linux и macOS или на вкладке Безопасность свойств файлов в Проводнике Windows.
С помощью экспортированного SSH-сертификата вы можете подключиться к виртуальной машине, для которой настроен доступ по OS Login.