[Документация Yandex Cloud](../index.md) > [Yandex IoT Core](index.md) > Начало работы > Реестр устройств

# Начало работы с реестрами устройств Yandex IoT Core

{% note warning %}

Сервис Yandex IoT Core больше не доступен для новых пользователей. 

Текущие пользователи могут создавать ресурсы до 1 ноября 2026 года. После сервис перейдет в режим read-only, а 1 декабря 2026 года — прекратит работу. Подробнее о сроках и порядке закрытия читайте на странице [Закрытие сервиса](sunset.md).

{% endnote %}

Чтобы начать работу с сервисом Yandex IoT Core, создайте:

1. [X.509-сертификаты](#create-ca).
1. [Реестр](#create-registry).
1. [Устройство](#create-device).

Затем [настройте обмен сообщениями](#exchange) между устройством и реестром.

## Перед началом работы {#before-you-begin}

Зарегистрируйтесь в Yandex Cloud и создайте [платежный аккаунт](../billing/concepts/billing-account.md):
1. Перейдите в [консоль управления](https://console.yandex.cloud), затем войдите в Yandex Cloud или зарегистрируйтесь.
1. На странице **[Yandex Cloud Billing](https://center.yandex.cloud/billing/accounts)** убедитесь, что у вас подключен платежный аккаунт, и он находится в [статусе](../billing/concepts/billing-account-statuses.md) `ACTIVE` или `TRIAL_ACTIVE`. Если платежного аккаунта нет, [создайте его](../billing/quickstart/index.md) и [привяжите](../billing/operations/pin-cloud.md) к нему облако.

Если у вас есть активный платежный аккаунт, вы можете создать или выбрать [каталог](../resource-manager/concepts/resources-hierarchy.md#folder), в котором будет работать ваша инфраструктура, на [странице облака](https://console.yandex.cloud/cloud).

[Подробнее об облаках и каталогах](../resource-manager/concepts/resources-hierarchy.md).

## Создайте сертификат {#create-ca}

X.509-сертификаты нужны для взаимодействия клиентов MQTT: [реестра](concepts/index.md#registry) и [устройства](concepts/index.md#device). Для каждого из них нужен свой сертификат.

* Если у вас есть сертификаты, добавьте их к клиентам MQTT. Это можно сделать во время создания клиентов.
* Если у вас нет сертификатов, создайте их с помощью программы [OpenSSL](https://www.openssl.org) (команда ниже создает только один сертификат):

    ```bash
    openssl req -x509 \
    -newkey rsa:4096 \
      -keyout private-key.pem \
      -out cert.pem \
      -nodes \
      -days 365 \
      -subj '/CN=localhost'
    ```

    Где:

    * `-x509` — вид сертификата: X.509.
    * `-newkey` — алгоритм шифрования.
    * `-keyout` — файл с приватным ключом сертификата.
    * `-out` — файл с публичным ключом сертификата.
    * `-nodes` — флаг, который устанавливается, когда не надо шифровать публичный ключ.
    * `-days` — срок действия сертификата в днях.
    * `-subj` — объект запроса.

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

## Создайте реестр {#create-registry}

{% list tabs group=instructions %}

- Консоль управления {#console}

    1. В [консоли управления](https://console.yandex.cloud) выберите каталог, в котором вы хотите создать реестр.
    1. Перейдите в сервис **IoT Core**.
    1. На панели слева выберите иконку **Реестры**.
    1. Нажмите кнопку **Создать реестр**.
    1. В блоке **Общая информация** добавьте имя реестра `my-registry`.
    1. Добавьте сертификат:

        * Чтобы добавить файл:

            1. Выберите способ `Файл`.
            1. Нажмите кнопку **Прикрепить файл**.
            1. Выберите файл с публичным ключом сертификата и нажмите кнопку **Открыть**.
            1. Нажмите кнопку **Добавить**.

        * Чтобы добавить текст:

            1. Выберите способ `Текст`.
            1. Вставьте публичный ключ сертификата в поле **Содержимое**.
            1. Нажмите кнопку **Добавить**.

    1. Нажмите кнопку **Создать**.

- CLI {#cli}

    Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), [установите и инициализируйте его](../cli/quickstart.md#install).

    По умолчанию используется каталог, указанный при [создании](../cli/operations/profile/profile-create.md) профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду `yc config set folder-id <идентификатор_каталога>`. Также для любой команды вы можете указать другой каталог с помощью параметров `--folder-name` или `--folder-id`. Если вы обращаетесь к ресурсу по имени, поиск будет выполнен в каталоге по умолчанию. Если вы обращаетесь к ресурсу по идентификатору, поиск будет выполнен глобально — во всех каталогах с учетом прав доступа.

    1. Создайте реестр:

        ```bash
        yc iot registry create --name my-registry
        ```

        Результат:

        ```text
        id: b91hafek85**********
        folder_id: aoek49ghmk*********
        created_at: "2019-05-27T13:40:06.923Z"
        name: my-registry
        status: ACTIVE
        log_group_id: ckghotead**********
        ```

    1. Добавьте реестру сертификат:

        ```bash
        yc iot registry certificate add \
           --registry-name my-registry \
           --certificate-file registry-cert.pem
        ```

        Где:

        * `--registry-name` — имя реестра;
        * `--certificate-file` — путь к публичному ключу сертификата.

        Результат:

        ```text
        registry_id: b91hafek85**********
        fingerprint: 589ce16050****
        certificate_data: |
           -----BEGIN CERTIFICATE-----
           MIIE/jCCAuagAwIBAgIJAPRA...
           -----END CERTIFICATE-----
        created_at: "2019-05-27T13:41:45.295Z"
        ```

{% endlist %}

## Создайте устройство {#create-device}

{% list tabs group=instructions %}

- Консоль управления {#console}

    1. В [консоли управления](https://console.yandex.cloud) выберите каталог, в котором вы хотите создать устройство.
    1. Перейдите в сервис **IoT Core**.
    1. Выберите в списке реестр `my-registry`.
    1. В левой части окна выберите раздел **Устройства**.
    1. Нажмите кнопку **Добавить устройство**.
    1. В блоке **Общая информация** добавьте имя устройства `my-device`.
    1. Добавьте сертификат:

        * Чтобы добавить файл:

            1. Выберите способ `Файл`.
            1. Нажмите кнопку **Прикрепить файл**.
            1. Выберите файл с публичным ключом сертификата и нажмите кнопку **Открыть**.
            1. Нажмите кнопку **Добавить**.

        * Чтобы добавить текст:

            1. Выберите способ `Текст`.
            1. Вставьте публичный ключ сертификата в поле **Содержимое**.
            1. Нажмите кнопку **Добавить**.

    1. Нажмите кнопку **Создать**.

- CLI {#cli}

    1. Создайте устройство:

        ```bash
        yc iot device create \
          --registry-name my-registry \
          --name my-device
        ```

        Где:

        * `--registry-name` — название реестра, в который входит устройство.
        * `--name` — название устройства.

        Результат:

        ```text
        id: b912an77oq**********
        registry_id: b91hafek85**********
        created_at: "2019-05-27T13:44:35.164Z"
        name: my-device
        ```

    1. Добавьте устройству сертификат:

        ```bash
        yc iot device certificate add \
          --device-name my-device \
          --certificate-file ./certs/device-cert.pem
        ```

        Где:

        * `--device-name` — название устройства.
        * `--certificate-file` — путь к публичному ключу сертификата.

        Результат:

        ```text
        device_id: b912an77oq**********
        fingerprint: 65e5b05006***
        certificate_data: |
           -----BEGIN CERTIFICATE-----
           MIIE/jCCAuagAwIBAgIJANZbq...
           -----END CERTIFICATE-----
        created_at: "2019-05-27T13:45:23.306Z"
        ```

{% endlist %}

## Настройте обмен сообщениями между устройством и реестром {#exchange}

1. [Подпишите устройство или реестр на получение сообщений](operations/subscribe.md).
1. [Отправьте сообщение](operations/publish.md).

## Что дальше {#what-is-next}

* Ознакомьтесь с [концепциями сервиса](concepts/index.md).
* Посмотрите, как [работать с реестрами и устройствами](operations/index.md).