¿Cómo puedo averiguar, donde mi openssl instalado está buscando certificados instalados (de confianza)?
No puede. OpenSSL no confía en nada por defecto, y no busca certificaciones. Tienes que instruirlo en qué confiar. Incluso hay un tema que lo cubre FAQ: Why does <SSL program>
fail with a certificate verify error?:
Este problema viene a menudo indicada por los mensajes de registro diciendo algo como "incapaz de obtener el certificado emisor locales" o "auto firmado certificado". Cuando se verifica un certificado de CA de su raíz debe ser "de confianza" por OpenSSL esto normalmente significa que el certificado de la CA debe ser colocado en un directorio o archivo y el programa correspondiente configurado para leerlo. El programa OpenSSL 'verificar' se comporta de una manera similar y muestra mensajes de error similares: comprobar el verificar (1) Programa de página del manual para más información.
respuesta de CAF es una especie de correcta, pero OpenSSL no lo usa y no hay nada allí ...
$ grep -R X509_get_default_cert_dir *
...
crypto/x509/x509_def.c:const char *X509_get_default_cert_dir(void)
...
En lo anterior, se dio cuenta que lo hace no éxito en cualquier cosa en el directorio apps/
. apps/
es donde todas las muestras de OpenSSL y utilidades son, como openssl req
, openssl rsa
, openssl dsa
, openssl x509
, openssl sign
, openssl verify
, etc.
continuación:
$ cat crypto/x509/x509_def.c
...
const char *X509_get_default_cert_dir(void)
{ return(X509_CERT_DIR); }
...
$ grep -R X509_CERT_DIR *
crypto/cryptlib.h:#define X509_CERT_DIR OPENSSLDIR "/certs"
Y, por último:
$ ls /usr/local/ssl/certs/
$
igual Dije, no se usa y no hay nada allí.
Trate de encontrar el tipo de sistema en esta página: http://gagravarr.org/writing/openssl-certs/ others.shtml – indiv