Acabo de compilar OpenSSL y el navegador web Lynx. Me gustaría navegar por sitios web HTTPS. Tengo entendido que necesito obtener certificados de las CA que utilizan esos sitios y que también necesito algún tipo de certificado propio. El navegador web llama a OpenSSL correctamente, pero no puedo navegar por Internet porque no tengo una lista inicial de certificados de CA.
¿Alguien tiene documentación que explique cómo obtener estos certificados y hacer que OpenSSL los consuma?
Gracias
Respuesta1
Para que su navegador funcione con SSL/TLS, debe instalar en su navegador certificados raíz de diferentes autoridades de certificación. Con esos certificados su navegador reconocerá las claves de sello y las aceptará. PuedeChequea aquípara obtener la lista de CA instaladas en Mozilla, así como los propios certificados.
PD: Para instalar certificados debe consultar la documentación de su navegador.
Respuesta2
¿Alguien tiene documentación que explique cómo obtener estos certificados y hacer que OpenSSL los consuma?
De LinceREADME.sslcerts
:
TRÁMITES PRELIMINARES:
Se supone que openssl se ha instalado correctamente, que el directorio de certificados predeterminado es /usr/local/ssl/certs (a menudo es /etc/ssl/certs, pero necesitamos un punto de partida para la discusión) y que lynx tiene ha sido compilado --with-ssl.
La ubicación predeterminada para los certificados en su sistema puede ser diferente o puede que no haya ninguna. Tendrá que sustituir esa ubicación por /usr/local/ssl/certs en las siguientes instrucciones y/o establecer variables de entorno.
Para determinar la ubicación predeterminada de los certificados en su sistema, puede ejecutar el siguiente comando:
strings libcrypto.a | grep -in cert | less
Busque en este resultado
SSL_CERT_DIR
ySSL_CERT_FILE
y las líneas justo encima de ellas. Esta es su ubicación predeterminada, respectivamente, para los certificados y el paquete de certificados de CA, cert.pem. Por supuesto, necesitará saber dónde se encuentra libcrypto.a.Salida de ejemplo:
7490:/etc/ssl/certs 7491:/etc/ssl/cert.pem 7492:SSL_CERT_DIR 7493:SSL_CERT_FILE
Otro posible resultado de ejemplo:
31555:/usr/local/ssl/certs 31556:/usr/local/ssl/cert.pem 31557:SSL_CERT_DIR 31558:SSL_CERT_FILE
Tenga en cuenta que cuando se instala OpenSSL, la utilidad c_rehash se instala en un directorio bin (predeterminado
/usr/local/ssl/bin
). Necesitará saber dónde está en su sistema. El comando:whereis c_rehash
probablemente dará resultados útiles.
Tenga en cuenta también que no existe ningún paquete de certificados de CA distribuido con OpenSSL. El equipo de OpenSSL decidió específicamente NO hacer eso. Obtener un conjunto de certificados confiables queda en manos del instalador.
Ya no es un procedimiento bastante trivial extraer el paquete de certificados raíz confiables de una versión reciente de Internet Explorer. Ya no se pueden exportar varios certificados como un archivo con formato DER; la extracción de un único certificado es la única exportación para DER, y DER es lo que se convierte a PEM.
Los usuarios con acceso a Apple OS X pueden exportar todos los certificados de Keychain Access System Roots como un archivo .pem. Coloque esto en SSL_CERT_DIR, haga un hash y listo.
El proyecto MirOS BSD también los proporciona. El procedimiento para convertirlos e instalarlos se detalla más adelante en este documento, y si simplemente necesita tener certificados proporcionados comercialmente en los que lynx confíe, puede saltar algunas líneas a la sección INSTALACIÓN O ACTUALIZACIÓN DEL PAQUETE CA.
Los paquetes de certificados de Mozilla extraídos están disponibles para descargar desde el proyecto curlhttp://curl.haxx.se/docs/caextract.htmljunto con un script para extraer de la fuente de Mozilla.