He generado un certificado autofirmado para mi servidor de compilación y me gustaría confiar globalmente en el certificado de mi máquina, ya que creé la clave yo mismo y estoy harto de ver advertencias.
Estoy en Ubuntu 12.04. ¿Cómo puedo tomar el certificado y confiar globalmente para que los navegadores (Google Chrome), las utilidades CLI (wget, curl) y los lenguajes de programación (Python, Java, etc.) confíen en la conexión a https://mysite.com sin preguntar? preguntas?

Respuestas:
La respuesta simple a esto es que casi cada aplicación lo manejará de manera diferente.
Además, OpenSSL y GNUTLS (las bibliotecas de procesamiento de certificados más utilizadas para manejar certificados firmados) se comportan de manera diferente en el tratamiento de los certificados, lo que también complica el problema. Además, los sistemas operativos utilizan diferentes mecanismos para utilizar la "CA raíz" utilizada por la mayoría de los sitios web.
Aparte de eso, dando a Debian como ejemplo. Instala el
ca-certificatespaquete:Luego copia la mitad pública de su certificado de CA no confiable (el que usa para firmar su CSR) en el directorio del certificado de CA (como raíz):
Y consiga que reconstruya el directorio con su certificado incluido, ejecútelo como root:
y seleccione la
askopción, desplácese hasta su certificado, márquelo para incluirlo y seleccione ok.La mayoría de los navegadores usan su propia base de datos de CA, por lo que
certutilse deben usar herramientas como para modificar su contenido (en Debian que proporciona ellibnss3-toolspaquete). Por ejemplo, con Chrome ejecutas algo en la línea de:Firefox le permitirá buscar el certificado en el disco, reconocerlo como un archivo de certificado y luego le permitirá importarlo a la lista de CA raíz.
La mayoría de los otros comandos, como los
curlinterruptores de línea de comando take, puede usar para apuntar a su CA,o descartar la validación SSL por completo
El resto necesitará una investigación individual si el
ca-certificatestruco similar no lo ordena para esa aplicación en particular.fuente
dpkg-reconfigure ca-certificateslista. ¿Qué estoy haciendo mal?whatever.pemawhatever.crt..cer, y eso no funcionó. Tuve que cambiarle el nombre.crtpara que fuera reconocido.Enfoque no interactivo
Para usar en un contexto no interactivo (por ejemplo, una receta de chef) puede usar la siguiente secuencia.
man update-ca-certificatesEste método es preferido sobre el método de @ Drav, ya
/usr/share/que generalmente está reservado para los archivos agregados por el OS /apt-get.fuente
/usr/local/share/ca-certificates/como se menciona en las páginas del.crt, encontré.certafirmada que se agregó pero no ayudóEn Fedora 23, agregue el archivo .pem o .der
/etc/pki/ca-trust/source/anchors/y ejecútelosudo update-ca-trust extract.Consulte los
man update-ca-trustdetalles, por ejemplo, si debe usar / etc o / usr.fuente
En centos:
fuente
openssl connect, ¿ debería especificar esta carpeta / anchors? Todavía recibo un error "self signed certsEnfoque no interactivo (18 de octubre)
para sistemas basados en Debian recientes
Hay una distinción entre agregar un certificado a la tienda del host y activarlo para que las aplicaciones realmente los utilicen. No se usa necesariamente un certificado existente en la tienda (aunque tengo que admitir que todavía muchos paquetes se están equivocando de todos modos)
Esto puede ser confuso cuando configura un paquete que considera
/etc/ca-certificate.confy simplemente se niega a usar su certificado, aunque tiene agregado sin error. Debe indicarupdate-ca-certificatesexplícitamente (no solo copiar sino) activar el certificado agregándolo a/etc/ca-certificate.confo/etc/ca-certificate/update.d.Ahora aquí se vuelve confuso ya que hay una manera implícita de confiar en un certificado utilizando una ruta diferente:
fuente