34 votos

¿Cómo puedo actualizar mis certificados Root en una versión antigua de Mac OS (por ejemplo, El Capitan)?

Tengo dificultades para acceder a varios sitios web seguros. Me dan un error de certificado expirado. Funcionan en Firefox pero no en Safari o Chrome. También funcionan en las versiones más recientes de MacOS (por ejemplo, Catalina, Big Sur). Esto parece deberse a que Safari y Chrome utilizan el almacén de certificados Root del sistema operativo y Firefox utiliza el suyo propio, y El Capitán no se actualiza.

Desde aquí lo hay:

  • Los certificados de confianza establecen una cadena de confianza que verifica otros certificados firmados por las root de confianza, por ejemplo, para establecer una conexión segura con un servidor web. Cuando los administradores de TI crean perfiles de configuración, no es necesario incluir estos certificados root de confianza.
  • Los certificados Always Ask no son de confianza pero no están bloqueados. Cuando se utiliza uno de estos certificados, se le pedirá que elija si confía o no en él.
  • Se cree que los certificados bloqueados están comprometidos y nunca serán de confianza.

Hay una lista de huellas digitales de los certificados actuales, pero no hay paquetes de certificados descargables.

¿Cómo puedo actualizar mis certificados Root en una versión antigua de OS X 10.11?

51voto

abligh Puntos 121

La forma más fácil de hacerlo es transferir sus certificados System Root desde otro Mac al que tenga acceso y que ejecute una versión más moderna de MacOS.

  1. En primer lugar, encuentre el Mac más moderno con un conjunto de certificados root del sistema que funcione (es decir, que pueda acceder a los sitios web problemáticos)
  2. En ese Mac, inicie Keychain Access, seleccione "System Roots", seleccione todos los certificados, seleccione Archivo->Exportar y expórtelos como rootcerts.pem archivo. Este archivo contendrá todos los certificados concatenados.
  3. Copiar el rootcerts.pem archivo a su antiguo mac
  4. Haz el shell trustroot script que aparece a continuación, por ejemplo, copiándolo en un archivo, y luego usando chmod 755 trustroot
  5. Ejecutar sudo ./trustroot rootcerts.pem

    !/bin/bash

    DIR=${TMPDIR}/trustroot.$$ mkdir -p ${DIR} trap "rm -rf ${DIR}" EXIT cat "$1" | (cd $DIR && split -p '-----BEGIN CERTIFICATE-----' - cert- ) for c in ${DIR}/cert-* ; do security -v add-trusted-cert -d -r trustRoot -k "/Library/Keychains/System.keychain" "$c" done rm -rf ${DIR}

Lo que hace el script es dividir el .pem en una serie de certificados en el directorio temporal correspondiente, y luego los añade como trustRoot a la cadena de claves del sistema; entonces funcionarán como root de confianza además de los certificados de la cadena de claves original "Raíces del sistema". En caso de que te lo preguntes, no puedes añadirlos al llavero "Raíces del sistema", ya que éste sólo puede ser actualizado por el sistema operativo.

Tenga en cuenta que esto copia el primer grupo de certificados ( "Certificados de confianza" en la pregunta), pero no la segunda ni la tercera.

Felicitaciones a esta respuesta por una pista.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X