50.4. Obtención de un certificado IdM para un servicio mediante certmonger
Para garantizar que la comunicación entre los navegadores y el servicio web que se ejecuta en su cliente IdM sea segura y esté cifrada, utilice un certificado TLS. Si desea restringir los navegadores web para que confíen en los certificados emitidos por la sub-CA webserver-ca pero no en ninguna otra sub-CA de IdM, obtenga el certificado TLS para su servicio web de la sub-CA webserver-ca.
Esta sección describe cómo utilizar certmonger para obtener un certificado IdM para un servicio (HTTP/my_company.idm.example.com@IDM.EXAMPLE.COM) que se ejecuta en un cliente IdM.
El uso de certmonger para solicitar el certificado de forma automática significa que certmonger gestiona y renueva el certificado cuando se debe renovar.
Para ver una representación visual de lo que ocurre cuando certmonger solicita un certificado de servicio, consulte Sección 50.5, “Flujo de comunicación para el certmonger que solicita un certificado de servicio”.
Requisitos previos
- El servidor web se inscribe como cliente de IdM.
- Tienes acceso de root al cliente IdM en el que estás ejecutando el procedimiento.
- El servicio para el que se solicita un certificado no tiene por qué existir previamente en IdM.
Procedimiento
En el cliente
my_company.idm.example.comIdM en el que se ejecuta el servicioHTTP, solicite un certificado para el servicio correspondiente a la entidad de seguridadHTTP/my_company.idm.example.com@IDM.EXAMPLE.COMy especifique que-
El certificado debe almacenarse en el archivo local
/etc/pki/tls/certs/httpd.pem -
La clave privada debe almacenarse en el archivo local
/etc/pki/tls/private/httpd.key -
La sub-CA
webserver-cadebe ser la autoridad de certificación emisora Que se añada una extensionRequest para un
SubjectAltNamea la solicitud de firma con el nombre DNS demy_company.idm.example.com:# ipa-getcert request -K HTTP/my_company.idm.example.com -k /etc/pki/tls/private/httpd.key -f /etc/pki/tls/certs/httpd.pem -g 2048 -D my_company.idm.example.com -X webserver-ca -C "systemctl restart httpd" New signing request "20190604065735" added.En el comando anterior:
-
El comando
ipa-getcert requestespecifica que el certificado debe obtenerse de la CA de IdM. El comandoipa-getcert requestes un atajo paragetcert request -c IPA. -
La opción
-gespecifica el tamaño de la clave que se generará si no existe ya una. -
La opción
-Despecifica el valor DNS deSubjectAltNameque se añadirá a la solicitud. -
La opción
-Xespecifica que el emisor del certificado debe serwebserver-ca, noipa. -
La opción
-Cindica acertmongerque reinicie el serviciohttpddespués de obtener el certificado.
-
Para especificar que el certificado se emita con un perfil determinado, utilice la opción
-T.
NotaRHEL 8 utiliza un módulo SSL en Apache diferente al utilizado en RHEL 7. El módulo SSL se basa en OpenSSL y no en NSS. Por esta razón, en RHEL 8 no se puede utilizar una base de datos NSS para almacenar el certificado
HTTPSy la clave privada.-
El comando
-
El certificado debe almacenarse en el archivo local
Opcionalmente, para comprobar el estado de su solicitud:
# ipa-getcert list -f /etc/pki/tls/certs/httpd.pem Number of certificates and requests being tracked: 3. Request ID '20190604065735': status: MONITORING stuck: no key pair storage: type=FILE,location='/etc/pki/tls/private/httpd.key' certificate: type=FILE,location='/etc/pki/tls/certs/httpd.crt' CA: IPA issuer: CN=WEBSERVER,O=IDM.EXAMPLE.COM [...]La salida muestra que la solicitud está en el estado
MONITORING, lo que significa que se ha obtenido un certificado. Las ubicaciones del par de claves y del certificado son las solicitadas.