Мне нужно проанализировать конфигурацию OpenLDAP, в которой сертификаты и ключи хранятся в файлах cert8.db и keys3.db.
У меня есть связанный файл паролей, который, кажется, используется для шифрования / дешифрования данных. Также существует файл secmod.db, содержащий, помимо прочего:
Root Certs /usr/lib64/libnssckbi.so
Root Certs KdNSS Internal PKCS #11 Module
configdir='/etc/openldap/certs'
certPrefix=''
keyPrefix=''
secmod='secmod.db'
flags= updatedir=''
updateCertPrefix=''
updateKeyPrefix=''
updateid=''
updateTokenDescription='' ?=NSS Internal PKCS #11 Module
file
командовать /etc/openldap/certs
возвращает:
cert8.db: Berkeley DB 1.85 (Hash, version 2, native byte-order)
key3.db: Berkeley DB 1.85 (Hash, version 2, native byte-order)
password: ASCII text
secmod.db: Berkeley DB 1.85 (Hash, version 2, native byte-order)
Однако я не могу найти способ расшифровать то, что хранится в этих двух файлах. Я пробовал использовать pk12util, но список возвращал сертификаты:
pk12util -l cert8.db
Enter password for PKCS12 file:
pk12util: PKCS12 decoding failed: SEC_ERROR_BAD_DER: security library: improperly formatted DER-encoded message.
Как я могу получить данные из этих файлов?
РЕДАКТИРОВАТЬ
Я тоже пришла читать эта почта который советует использовать db_dump
:
db_dump -l cert8.db
db_dump: BDB0210 cert8.db: metadata page checksum error
db_dump: BDB5115 open: cert8.db: Invalid argument
Большое спасибо
Использовать certutil
из nss-tools
(в RHEL / CentOS):
certutil -L -d /etc/openldap/certs
предоставит вам список сертификатов.
Certificate Nickname Trust Attributes
SSL,S/MIME,JAR/XPI
OpenLDAP Server CTu,u,u
Экспортируйте ключи с помощью
pk12util -o outfile.p12 -d /etc/openldap/certs -n "OpenLDAP Server"
Это запросит пароль для экспорта (он находится в password
файл) и один для экспортированного ключа.