Как доверять самозаверяющему сертификату, не доверяя ЦС?
Итак, я создал rootCA и подписал сертификат для *.a.com, как я могу доверять полученному сертификату в Firefox/Chrome, не доверяя ЦС напрямую?
Обратите внимание, что добавления исключения (один раз) в этом случае недостаточно, поскольку существует несколько доменов.
2 ответа
Есть два возможных подхода:
Явно добавьте сертификат в диспетчер сертификатов браузера. Поскольку Chrome и Firefox используют NSS в качестве своей библиотеки SSL, это можно сделать с помощью следующей команды (для Chrome):
certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n SomeCertificateName -i /path/to/certificate
- Выдать сертификат subCA, ограниченный
nameConstraint
расширение, так что subCA может выдавать только сертификаты сa.com
суффикс. Теперь доверяйте только этой subCA. Эта статья объясняет этот подход.
Поскольку сертификат не выдан доверенным центром сертификации, вы получите сообщение об ошибке для каждого домена, к которому применяется подстановочный сертификат. Firefox хранит исключения сертификатов с доменом в качестве ключа, а не с сертификатом, поэтому он попросит вас сделать исключение для каждого домена (даже с подстановочным сертификатом).
Если вы не хотите доверять ЦС напрямую, вы можете попросить владельца ЦС создать для вас промежуточный сертификат ЦС, который вы можете использовать для выдачи сертификатов. Затем вы можете добавить промежуточный CA в вашем браузере. (или вы можете просто создать новый CA)