¿Por qué Curl no reconoce un certificado SSL autofirmado?

Copié el archivo PEM en / usr / local / share / ca-certificate / y ejecuté update-ca-certificados, y verifiqué que el certificado resultante ahora está incluido en /etc/ssl/certs/ca-certificates.crt que es El archivo impreso por curl-config --ca. También verifiqué que el certificado impreso por openssl s_client -connect example.com:443 era idéntico a mi archivo PEM. Y, sin embargo, sigo recibiendo el mensaje "error: 14090086: rutinas SSL: SSL3_GET_SERVER_CERTIFICATE: error de verificación del certificado". Esto sucede incluso si uso la opción --cacert de curl como se describe enhttp://curl.haxx.se/docs/sslcerts.html Para decirle qué certificado utilizar.

Funciona si deshabilito la verificación del certificado por completo con curl -k, pero no quiero hacerlo porque estoy tratando de escribir un arnés de prueba que se supone que prueba el SSL correctamente.

Funciona bien si accedo a la misma URL en lynx, que normalmente se queja si hay errores de SSL. Pero no puedo simplemente usar Lynx para este arnés de prueba, a menos que pueda encontrar alguna forma de hacer que el Clima AsyncHTTP de Tornado use Lynx en lugar de libcurl. Y no parece que tenga sentido que la instalación del certificado autofirmado satisfaga a Lynx pero no a la curvatura.

Estoy usando Ubuntu 12.04 LTS en un VirtualBox alimentado por Vagrant; tiene rizo 7.22.0. El proxy de terminación SSL es nginx / 1.3.13 ejecutándose en la misma máquina, y el nombre de dominio apunta a 127.0.0.1 mediante una entrada en / etc / hosts.

¿Alguna pista sobre cuál podría ser el problema? Gracias.

Respuestas a la pregunta(1)

Su respuesta a la pregunta