Ситуация: у меня есть внутренняя PKI с общим корневым ЦС и несколькими промежуточными ЦС. Я хочу, чтобы все, выпущенное промежуточным центром сертификации, доверяло друг другу. Есть ли способ сделать это, который понравится большинству программ / языков?
В настоящее время я понимаю, что это нелегко , но мне интересно, ошибочно ли мое понимание.
Итак, если у нас есть программы:
и мне абсолютно необходимо взаимное доверие между эти два, мой единственный выбор сделать большой сертификат CA с root => first и root => second, прикрепленными друг к другу? Или я могу каким-то образом просто создать цепочку с корнем в ней?
Могу ли я обойтись всем этим, добавив корень в хранилище доверенных сертификатов уровня ОС, или, если они контейнеры, в данное хранилище доверенных сертификатов контейнеров? (в разделе / etc / pki / ca-trust / source / anchors
или что-то в этом роде)
Моя вторая мысль, и, возможно, она плохая, но поскольку все внутреннее и у нас есть CRL - мы можем только использовать корневой ЦС и просто внимательно следить за чистым списком отзыва сертификатов TLS вместо сертификатов уровня ЦС.
Можно ли каким-то образом получить программное обеспечение для построения собственной цепочки, если я выставлю CRL и CA на определенных конечных точках, определенных где угодно?
Я не уверен, правильно ли я понял ваш вопрос или вы правильно поняли концепцию, но
Таким образом, если вы хотите, чтобы любой клиент доверял любым сертификатам, независимо от того, какой промежуточный CA был использован, то а) клиент должен доверять корневому CA и б) серверы должны отправлять промежуточные CA во время рукопожатия TLS в дополнение к сертификату сервера.