Red Hat Training

A Red Hat training course is available for RHEL 8

40.2. Conversión de un certificado externo para cargarlo en una cuenta de usuario de IdM

Esta sección describe cómo asegurarse de que un certificado externo está correctamente codificado y formateado antes de añadirlo a una entrada de usuario.

Requisitos previos

  • Si su certificado fue emitido por una autoridad de certificados de Active Directory y utiliza la codificación PEM, asegúrese de que el archivo PEM se haya convertido al formato UNIX. Para convertir un archivo, utilice la utilidad dos2unix proporcionada por el paquete epónimo.

40.2.1. Convertir un certificado externo en la CLI de IdM y cargarlo en una cuenta de usuario de IdM

IdM CLI sólo acepta un certificado de PEM del que se han eliminado la primera y la última línea (-----BEGIN CERTIFICATE----- y -----END CERTIFICATE-----).

Procedimiento

  1. Convierte el certificado al formato PEM:

    • Si su certificado está en el formato DER:

      $ openssl x509 -in cert.crt -inform der -outform pem -out cert.pem
    • Si su archivo está en el formato PKCS #12, cuyas extensiones de nombre de archivo comunes son .pfx y .p12, y contiene un certificado, una clave privada y posiblemente otros datos, extraiga el certificado utilizando la utilidad openssl pkcs12. Cuando se le solicite, introduzca la contraseña que protege la clave privada almacenada en el archivo:

      $ openssl pkcs12 -in cert_and_key.p12 -clcerts -nokeys -out cert.pem
      Enter Import Password:
  2. Obtenga las credenciales del administrador:

    $ kinit admin
  3. Añada el certificado a la cuenta de usuario utilizando el IdM CLI siguiendo uno de los siguientes métodos:

    • Elimine la primera y la última línea (-----BEGIN CERTIFICATE----- y -----END CERTIFICATE-----) del archivo PEM utilizando la utilidad sed antes de añadir la cadena al comando ipa user-add-cert:

      $ ipa user-add-cert some_user --certificate="$(sed -e '/BEGIN CERTIFICATE/d;/END CERTIFICATE/d' cert.pem)"
    • Copie y pegue el contenido del archivo del certificado sin las líneas primera y última (-----BEGIN CERTIFICATE----- y -----END CERTIFICATE-----) en el comando ipa user-add-cert:

      $ ipa user-add-cert some_user --certificate=MIIDlzCCAn gAwIBAgIBATANBgkqhki...
      Nota

      No puede pasar un archivo PEM que contenga el certificado como entrada al comando ipa user-add-cert directamente, sin eliminar primero la primera y la última línea (-----BEGIN CERTIFICATE----- y -----END CERTIFICATE-----):

      $ ipa user-add-cert some_user --cert=some_user_cert.pem

      Este comando da como resultado el mensaje de error "ipa: ERROR: Base64 decoding failed: Padding\Nincorrecto" mensaje de error.

  4. Opcionalmente, para comprobar si el certificado fue aceptado por el sistema:

    [idm_user@r8server]$ ipa user-show some_user