Когда я использую openSSL и файл конфигурации для подписи промежуточного сертификата, я постоянно получаю одну и ту же ошибку. Ошибки:
140736005481480: ошибка: 02001002: системная библиотека: fopen: нет такого файла или каталога: bss_file.c: 175: fopen ('/ Volumes / Project - Encrypted / Security / root / ca / index.txt. attr ',' rb ')
140736005481480: ошибка: 2006D080: подпрограммы BIO: BIO_new_file: такого файла нет: bss_file.c: 182:
140736005481480: ошибка: 0E078072: подпрограммы файла конфигурации: DEF_LOAD: такого файла нет: conf_def.c: 195:
140736005481480: ошибка: 0E06D06C: подпрограммы файла конфигурации: NCONF_get_string: нет значения: conf_lib.c: 324: group = CA_default name = email_in_dn
Я понимаю первую ошибку о том, что файл не найден, но я не понимаю, почему файл, который он ищет, не является файлом, который я определяю в конфигурации. Вот что я ввел в конфигурацию:
database = $ dir / index.txt # файл индекса базы данных.
Я использую команду sudo openssl ca -config openssl.cnf -extensions v3_intermediate_ca -days 3650 -notext -md sha256 -keyfile private / ca.key.pem -cert certs / ca.cert.pem -in intermediate / csr / intermediate.csr.pem -out intermediate / certs / intermediate.cert.pem
Кто-нибудь понять, что вызывает эти ошибки и как их исправить ??
openssl ca
не просто использует индексный файл базы данных (который вы правильно установили как index.txt
), но также и атрибут базы данных файл. Он всегда находится в том же месте, что и индексный файл, и его имя совпадает с именем индекса с суффиксом .attr . Этот файл атрибутов (который, насколько мне известно, не документирован) содержит только одну информацию: строку конфигурации
unique_subject = yes/no
Итак, что вам нужно делать? Создайте файл index.txt.attr
в папке, где хранится ваш CA (примерно / Volumes / Project - Encrypted / Security / root / ca ) и добавьте в него единственную строку Я упоминал выше.