Требуется руководство по созданию инфраструктуры открытых ключей от онлайн-провайдера

Я хочу настроить безопасный TLS для своих хостов докеров, как описано здесь, где описывается создание собственной инфраструктуры открытых ключей (PKI). Для производственных серверов не рекомендуется использовать собственный центр сертификации. Существуют ли онлайн-центры сертификации, которые могут предоставить мне открытые/закрытые ключи (файлы .pem и .csr)? Я просматривал Lets Encrypt, так как знаю, что они могут предоставлять SSL-сертификаты, но не могу найти никаких указаний по предоставлению PKI.

Изменить:

Это установка, которую я пытаюсь создать:

введите здесь описание изображения

Может ли Let's Encrypt или любая другая онлайн-служба предоставить необходимые файлы ключей/сертификатов, как показано на этом изображении.


person CSharp    schedule 19.06.2019    source источник
comment
Let's Encrypt является PKI. Вы используете их инструменты для создания закрытого ключа и CSR в вашем экземпляре Docker, и инструмент отправляет CSR в Let's Encrypt, который подписывает запрос и автоматически возвращает сертификат в ваш экземпляр. Он может даже установить его в некоторых случаях. Пожалуйста, отредактируйте свой вопрос, чтобы перечислить дополнительные функции, которые вам нужны, которые Let's Encrypt не может предоставить.   -  person garethTheRed    schedule 19.06.2019
comment
Честно говоря, я не уверен, что Let's Encrypt не может предоставить необходимые токены для защиты демона Docker. Чтобы защитить Docker Daemon, мне нужно предоставить открытые/закрытые ключи и сертификаты (ca.cert) для узлов Docker CLI, Manager и Worker. Я отредактировал вопрос, чтобы, надеюсь, добавить разъяснения.   -  person CSharp    schedule 19.06.2019
comment
Я думаю, что вы не понимаете здесь некоторых основ PKI. Закрытый ключ не покидает лицо, которому он принадлежит, поэтому он называется закрытым ключом. Объект использует свою пару открытого/закрытого ключа для создания CSR, который отправляется (отдельно) в ЦС для подписи.   -  person garethTheRed    schedule 19.06.2019
comment
Let's Encrypt будет работать, если все сущности являются общедоступными, то есть имеют глобальную запись DNS. Let’s Encrypt не будет подписывать сертификат для частного пространства имен, такого как «example.com», поскольку в мире их много. Если последнее — то, что вам нужно, вы можете либо создать свою собственную PKI, либо выбрать управляемую службу PKI, которая может работать с внутренними сетями. Если вы решите создать внутренний, я бы не советовал использовать OpenSSL в производственной среде, так как вокруг него нет управления.   -  person garethTheRed    schedule 19.06.2019
comment
Спасибо за ваше разъяснение. Менеджер роя и работники являются общедоступными, но не удаленным клиентом Docker. Это бегун в Gitlab CI, который нужно развернуть на моем менеджере роя.   -  person CSharp    schedule 19.06.2019


Ответы (1)


Вы можете использовать службы Ascertia для настройки структуры pki. https://www.ascertia.com/ У них есть полный стандартный сервис PKI для ЦС и управления ключами.

person Moieen Abbas    schedule 23.07.2019