Сертификаты SSL/TLS на MQTT-брокере и Клиенте должны быть одинаковыми?
Я пытаюсь настроить сервер Mosca с шифрованием SSL/TLS.
Глядя на вики Mosca на странице https://github.com/mcollina/mosca/wiki/TLS-SSL-Configuration предположить, что нам потребуется личный ключ и сертификат для брокера.
Хотя на этой странице ничего не говорится о конфигурации на стороне клиента для mqtt через SSL/TLS, я нашел статью самого Мэттино Коллина о конфигурации SSL/TLS на стороне клиента. Здесь http://www.hivemq.com/blog/mqtt-client-library-mqtt-js
В этой статье говорится, что для mqtts нам необходимо предоставить ключ и сертификат также на стороне клиента. Должны ли они быть теми же ключом и сертификатом, которые мы предоставили при настройке брокера, или разными для каждого клиента, который мы подключаем к брокеру?
Являются ли эти ключи и сертификаты способом аутентификации клиента для брокера?
1 ответ
Сколько сертификатов и ключей зависит от того, чего именно вы пытаетесь достичь.
Если вам просто нужно безопасное соединение, то вам нужен только сертификат и закрытый ключ на брокере. (вам может потребоваться предоставить сертификат CA клиенту в зависимости от того, подписываете ли вы свои собственные сертификаты или используете ли вы сертификаты, подписанные признанным общедоступным CA).
Если вы хотите уникально идентифицировать клиента с помощью SSL, клиенту также потребуется собственный уникальный сертификат и соответствующий закрытый ключ. Они будут отличаться от пары сертификат / ключ брокера, но, вероятно, будут подписаны тем же центром сертификации.