Я хочу настроить центр сертификации предприятия для своего домена. Поэтому я могу выдавать сертификаты для различных целей. Я хотел бы следовать рекомендациям о том, чтобы иметь автономный ЦС в качестве корневого, и настроить свой корпоративный ЦС в качестве подчиненного. Но, кажется, глупо лицензировать полную копию Windows для этой задачи.
Я надеюсь, что смогу установить какой-нибудь дистрибутив в реальном времени на флэш-диск USB, а затем установить openssl и настроить мой CA на флэш-диске. Когда я буду готов создать корневой ключ / сертификат, я отключу компьютер от сети и больше никогда не буду использовать этот USB-диск на компьютере, подключенном к сети.
Смогу ли я правильно подписать и создать сертификат подчиненного ЦС для корпоративного ЦС Windows, который можно будет использовать. Какие опции мне нужно использовать с OpenSSL, чтобы построить CA и правильно подписать сертификат подчиненного CA.
Я попытался поискать в Интернете, и это было единственное, что я мог найти по этому вопросу. Но это предшествует 2008 году, и я не совсем уверен, что этот человек был успешным.
Ответы:
Да, это работает просто отлично; центр сертификации Windows не имеет никаких сомнений в том, что работает как подчиненный корень не из Windows.
Протестировано с корнем OpenSSL и подчиненным Windows 2008 R2 в режиме Enterprise.
Несколько вещей, чтобы играть хорошо с тем, что MS CA ожидает в конфигурации OpenSSL:
Допустимые местоположения AIA и CDP должны применяться к корневому сертификату, в разделе, настроенном
x509_extensions
свойством[req]
раздела для самоподписанного корня. Что-то в этом роде:Данная конфигурация OpenSSL, вероятно, не позволяет подчиненным ЦС по умолчанию. Измените это для подписанных запросов (конечно, убедитесь, что это не относится к запросам, которые не должны быть CA). Это будет в разделе, настроенном
x509_extensions
свойством[ca]
раздела:Итак, мы сделаем CA для тестирования.
Сделайте свой корень:
Поиграйте с вашим конфигом и создайте необходимые файлы и каталоги в
[ca]
разделе вашего конфига OpenSSL.Все готово для того, чтобы добиться успеха со стороны Microsoft; создать подчиненный ЦС Windows с ручной подписью.
Загрузите запрос сертификата на сервер OpenSSL. Пока вы на нем, загрузите корневой сертификат. Импортируйте его в хранилище доверенных корней - компьютера, а не вашего пользователя!
Выдайте подчиненный сертификат:
Если это не сработало, возможно, у вашего ЦС есть проблема с конфигурацией - новый каталог сертификатов, индексный файл, последовательный файл и т. Д. Проверьте сообщение об ошибке.
Если это пошло, то это все. Если нет, создайте CRL и поместите его в CDP, который вы настроили выше; Я только что установил Apache и заклинил его в webroot:
И поместите свой сертификат в местоположение AIA, если это еще не сделано:
Загрузите новый выданный подчиненный сертификат и установите его в ЦС с помощью оснастки MMC центра сертификации. Он будет касаться любых вопросов с доверием или проверкой, но у него нет никаких моральных возражений против его принятия.
Конечный результат; работающий Windows CA без жалоб от оснастки Enterprise PKI с контрольным сигналом
OpenSSL Generated Certificate
в атрибутах.источник
Я понимаю, к чему вы клоните, но я не думаю, что OpenSSL - это вполне подходящий инструмент для работы. Возможно, вы захотите взглянуть на проекты Open Source Certificate Authority, такие как EJBCA, которые больше сосредоточены на этой функциональности, чем на OpenSSL, и имеют специальную документацию, которую вы можете использовать.
Я не вижу причины, по которой концепция не будет работать, поскольку все, что вы делаете, это подписываете сертификат подчиненного ЦС. Если вы платите государственному центру сертификации, чтобы сделать это для вас, вам не обязательно знать, какой тип сервера они используют.
Все, что вам нужно, это заботиться о:
Я не могу сказать, что сделал это, но я уверен, что если вы будете следовать документам для создания CSR из окна Windows, а затем будете следовать вашим документам CA для создания сертификата .p7k из CSR, тогда у вас все будет хорошо.
Кстати, я бы рекомендовал вам создать свой ЦС в качестве виртуальной машины для популярного гипервизора, такого как Hyper-V или VMware, а не для загрузочного диска, убедитесь, что вы храните его очень надежно, где ваш преемник может его найти, и раскручиваете его периодически отключаться, чтобы убедиться, что он работает, или перенести его на новый носитель / технологию. Корневой центр сертификации может иметь срок жизни 10 или 20 лет ...
источник