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 archivoPEMse haya convertido al formatoUNIX. Para convertir un archivo, utilice la utilidaddos2unixproporcionada 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 Copiar enlaceEnlace copiado en el portapapeles!
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
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.pemSi su archivo está en el formato
PKCS #12, cuyas extensiones de nombre de archivo comunes son.pfxy.p12, y contiene un certificado, una clave privada y posiblemente otros datos, extraiga el certificado utilizando la utilidadopenssl 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:
Obtenga las credenciales del administrador:
$ kinit adminAñada el certificado a la cuenta de usuario utilizando el
IdM CLIsiguiendo uno de los siguientes métodos:Elimine la primera y la última línea (-----BEGIN CERTIFICATE----- y -----END CERTIFICATE-----) del archivo
PEMutilizando la utilidadsedantes de añadir la cadena al comandoipa 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...NotaNo puede pasar un archivo
PEMque contenga el certificado como entrada al comandoipa user-add-certdirectamente, 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.pemEste comando da como resultado el mensaje de error "ipa: ERROR: Base64 decoding failed: Padding\Nincorrecto" mensaje de error.
Opcionalmente, para comprobar si el certificado fue aceptado por el sistema:
[idm_user@r8server]$ ipa user-show some_user