Solución de problemas de certificados RHUI en Azure
En este artículo se describen problemas comunes en la infraestructura de actualización de Red Hat (RHUI) causados por certificados de seguridad de la capa de transporte (TLS) o capa de sockets seguros (SSL) expirados o que faltan.
Requisitos previos
Acceso SSH a la máquina virtual (VM) de pago por uso (PAYG) de Red Hat Enterprise Linux (RHEL) correspondiente en Azure.
Privilegios raíz.
Importante
RHUI está pensado solo para imágenes de pago por uso. ¿Usa imágenes personalizadas o doradas (también conocidas como "bring-your-own-subscription (BYOS)") en su lugar? En ese caso, el sistema debe estar conectado a Red Hat Subscription Manager (RHSM) o Satellite para recibir actualizaciones. Para obtener más información, consulte Registro y suscripción de un sistema RHEL al Portal de clientes de Red Hat mediante RHSM.
Nota:
- A partir del 12 de octubre de 2023, todos los clientes de pago por uso (PAYG) se han dirigido a las direcciones IP de Red Hat Update Infrastructure (RHUI) 4 en fases. Las direcciones IP de RHUI-3 permanecen disponibles para las actualizaciones continuas, pero se quitarán en el futuro. Para garantizar el acceso ininterrumpido a paquetes y actualizaciones, debe actualizar las rutas y reglas existentes que permiten el acceso a direcciones IP RHUI-3 para incluir direcciones IP RHUI-4. Sin embargo, para seguir recibiendo actualizaciones durante este período de transición, no quite las direcciones IP de RHUI-3.
- A partir de enero de 2020, las nuevas imágenes de Azure US Government han empezado a usar las direcciones IP públicas mencionadas anteriormente en el encabezado Global de Azure.
Causa 1: El certificado de cliente de RHUI ha expirado
Los certificados RHUI de Azure suelen expirar cada dos años. Si usa una imagen de máquina virtual de RHEL anterior, como RHEL versión 7.4 (URN de imagen: RedHat:RHEL:7.4:7.4.2018010506
), experimenta una conectividad degradada con RHUI debido a un certificado de cliente TLS/SSL expirado. Por ejemplo, puede recibir uno de los siguientes mensajes de error:
"El mismo nivel de SSL rechazó el certificado como expirado"
"Error: No se pueden recuperar metadatos del repositorio (repomd.xml) para repository:_... Compruebe su ruta de acceso e inténtelo de nuevo"
Tiene que aplicar un proceso para evitar la expiración del certificado en imágenes o imágenes antiguas que se crearon justo antes de una fecha de expiración del certificado.
Solución 1: Actualización del paquete de cliente de RHUI
Para acceder a repositorios de RHEL en sistemas de pago por uso en entornos en la nube, use RHUI. Como proveedor de nube, Azure puede crear y publicar versiones de RPM de configuración de cliente más recientes en cualquier momento, como para las siguientes tareas:
- Proporcionar acceso a un nuevo repositorio.
- Renovación de certificados.
- Realizar cualquier otro cambio de empaquetado.
En esta situación, tiene que instalar el nuevo paquete RHUI en el sistema. Este paquete tiene el certificado renovado. Ejecute el comando yum para actualizar el paquete RHUI:
sudo yum update -y --disablerepo='*' --enablerepo='*microsoft*'
El sudo yum update
comando también puede actualizar el paquete de certificado de cliente (en función de la versión de RHEL). Esto es cierto incluso si la salida del comando contiene los mismos errores de certificado SSL expirados que se ven en otros repositorios. Si esta actualización se realiza correctamente, debe restaurar la conectividad normal a otros repositorios de RHUI para que pueda ejecutarse sudo yum update
correctamente una segunda vez.
Si recibe un error "404" al ejecutar yum update
, intente ejecutar los siguientes comandos para actualizar la caché de yum:
sudo yum clean all
sudo yum makecache
Causa 2: Falta el certificado RHUI
La máquina virtual Red Hat Linux de Azure ya tiene instalado el paquete de Azure RHUI. Sin embargo, falta el certificado del directorio /etc/pki/rhui/product/ .
Si el certificado RHUI se quitó de la máquina virtual por error, aparece el siguiente mensaje de error al intentar instalar o actualizar un paquete:
sudo yum install <package-name>
Red Hat Enterprise Linux X for x86_64 - XXXX 0.0 B/s | 0 B 00:00
Errors during downloading metadata for repository 'rhel-X-for-x86_64-XXXX-eus-rhui-rpms':
- Curl error (58): Problem with the local SSL certificate for https://rhui-3.microsoft.com/pulp/repos/content/eus/rhel8/rhui/X.X/x86_64/XXXXX/os/repodata/repomd.xml [could not load PEM client certificate, OpenSSL error error:02001002:system library:fopen:No such file or directory, (no key found, wrong pass phrase, or wrong file format?)]
Solución 2: Reinstalación del paquete EUS, no EUS o SAP RHUI
Vuelva a instalar el paquete RHUI correspondiente para volver a generar los certificados que faltan en la ubicación correcta.
Todos los comandos de los pasos siguientes deben ejecutarse mediante privilegios raíz o especificando sudo
:
Compruebe que el
rhui-azure
paquete (EUS
,non-EUS
oSAP/E4S
) está instalado mediante el siguiente comando:sudo rpm -qa | grep -i azure
rhui-azure-rhelX-<>-X.X-XXX.noarch
Para obtener más información sobre la compatibilidad con actualizaciones extendidas (EUS) o paquetes RHUI que no son de EUS, consulte las secciones vinculadas de los artículos siguientes.
Tipo de paquete Vínculo Paquetes de RHUI de EUS Imágenes de Red Hat conectadas a repositorios EUS Paquetes de RHUI que no son de EUS Imágenes de Red Hat conectadas a repositorios que no son EUS Paquetes RHUI de Update Services for SAP Solutions (SAP/E4S) Imágenes de Red Hat conectadas a repositorios SAP/E4S Compruebe que el certificado existe:
sudo ls -l /etc/pki/rhui/product/
Nota:
En este escenario, descubrirá que falta el archivo.
Vuelva a instalar el paquete correspondiente
rhui-azure
ejecutando elyum reinstall
comando :sudo yum reinstall $(rpm -qa | grep -i rhui-azure) --disablerepo=* --enablerepo="*microsoft*"
Si el
EUS
repositorio oE4S
está instalado, bloquee lareleasever
variable:sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/yum/vars/releasever
Compruebe que el certificado existe ejecutando el
ls
comando de nuevo. El archivo de certificado debe aparecer ahora:sudo ls -l /etc/pki/rhui/product/
Causa 3: Falta el paquete RHUI
Falta el paquete RHUI EUS, no EUS o SAP/E4S en la máquina virtual de Red Hat, pero los archivos de configuración del repositorio siguen existiendo en el directorio /etc/yum.repos.d/ .
Al intentar instalar o actualizar un paquete, recibe el siguiente mensaje de error:
sudo yum install <package-name>
Red Hat Enterprise Linux X for x86_64 - XXXX 0.0 B/s | 0 B 00:00
Errors during downloading metadata for repository 'rhel-X-for-x86_64-XXXX-XXX-rhui-rpms':
- Curl error (58): Problem with the local SSL certificate for https://rhui-3.microsoft.com/pulp/repos/content/eus/rhel8/rhui/X.X/x86_64/XXXXX/os/repodata/repomd.xml [could not load PEM client certificate, OpenSSL error error:02001002:system library:fopen:No such file or directory, (no key found, wrong pass phrase, or wrong file format?)]
Solución 3: Instalación del paquete EUS, no EUS o SAP/E4S RHUI
Instale el paquete RHUI que falta para EUS, no EUS o SAP/E4S.
Todos los comandos siguientes deben ejecutarse mediante privilegios raíz o especificando sudo
.
Instalación del paquete RHUI de EUS
Ejecute el
yum install
comando para instalar elrhui-azure-rhel7-eus
paquete:sudo yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel7-eus.config' install 'rhui-azure-rhel7-eus'
Bloquee la
releasever
variable:sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/yum/vars/releasever
Compruebe que los repositorios correspondientes están disponibles y no muestre errores ejecutando el
yum repolist
comando :sudo yum repolist all
Nota:
Si usa un proxy en /etc/yum.conf o /etc/dnf.conf, el yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-X
comando no funcionará porque no incluye la configuración del proxy. En este caso, use los siguientes comandos:
sudo wget https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhelX-X-X-X.config
sudo mv rhui-microsoft-azure-rhelX-X-X-X.config /etc/yum.repos.d
sudo yum install rhui-azure-rhel-X-X-X
Reemplace rhui-microsoft-azure-rhelX-X-X-X
y rhui-azure-rhel-X-X-X
en consecuencia.
Instalación de paquetes RHUI que no son de EUS
Quite el archivo releasever si existe.
sudo rm /etc/yum/vars/releasever
Ejecute el comando para instalar el
rhui-azure-rhel7
yum install
paquete:sudo yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel7.config' install 'rhui-azure-rhel7'
Compruebe que los repositorios correspondientes están disponibles y no muestre errores ejecutando el
yum repolist
comando :sudo yum repolist all
Nota:
Si usa un proxy en /etc/yum.conf o /etc/dnf.conf, el yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-X
comando no funcionará porque no incluye la configuración del proxy. En este caso, use los siguientes comandos:
sudo wget https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhelX-X-X-X.config
sudo mv rhui-microsoft-azure-rhelX-X-X-X.config /etc/yum.repos.d
sudo yum install rhui-azure-rhel-X-X-X
Reemplace rhui-microsoft-azure-rhelX-X-X-X
y rhui-azure-rhel-X-X-X
en consecuencia.
Instalación del paquete RHEL 7 SAP/E4S/HANA RHUI
Seleccione la pestaña de un tipo de imagen de SAP para ver las instrucciones correspondientes.
- RHEL 7. x : RHEL-SAP-APPS
- RHEL 7.9 - RHEL-SAP-APPS
- RHEL 7. x - RHEL-SAP (oferta antigua)
- RHEL 7. x - RHEL-SAP-HA (E4S)
- RHEL 7.9 - RHEL-SAP-HA
Los pasos siguientes se aplican si la versión del sistema operativo es anterior a RHEL 7.9 y la máquina virtual se creó mediante la imagen de oferta RHEL-SAP-APPS
.
Ejecute el comando para instalar el
rhui-azure-rhel7-sapapps
yum install
paquete:sudo yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel7-sapapps.config' install rhui-azure-rhel7-sapapps
Bloquee la
releasever
variable:sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/yum/vars/releasever
Compruebe que los repositorios correspondientes están disponibles y no muestre errores ejecutando el
yum repolist
comando :sudo yum repolist all
Nota:
Si usa un proxy en /etc/yum.conf o /etc/dnf.conf, el yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-X
comando no funcionará porque no incluye la configuración del proxy. En este caso, use los siguientes comandos:
sudo wget https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhelX-X-X-X.config
sudo mv rhui-microsoft-azure-rhelX-X-X-X.config /etc/yum.repos.d
sudo yum install rhui-azure-rhel-X-X-X
Reemplace rhui-microsoft-azure-rhelX-X-X-X
y rhui-azure-rhel-X-X-X
en consecuencia.
Instalación del paquete RHUI de RHEL 8 SAP/E4S/HANA
Seleccione la pestaña de un tipo de imagen de SAP para ver las instrucciones correspondientes.
Los pasos siguientes se aplican si la versión del sistema operativo es anterior a la versión más reciente disponible compatible con SAP para RHEL 8.X
y la máquina virtual se creó mediante la imagen de oferta RHEL-SAP-APPS
.
Instale el
rhui-azure-rhel8-sapapps
paquete ejecutando el comando de instalación dnf :sudo dnf --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel8-sapapps.config' install rhui-azure-rhel8-sapapps
Bloquee la
releasever
variable:sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/dnf/vars/releasever
Compruebe que los repositorios correspondientes están disponibles y no muestre errores ejecutando el
dnf repolist
comando :sudo dnf repolist all
Nota:
Si usa un proxy en /etc/yum.conf o /etc/dnf.conf, el yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-X
comando no funcionará porque no incluye la configuración del proxy. En este caso, use los siguientes comandos:
sudo wget https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhelX-X-X-X.config
sudo mv rhui-microsoft-azure-rhelX-X-X-X.config /etc/yum.repos.d
sudo yum install rhui-azure-rhel-X-X-X
Reemplace rhui-microsoft-azure-rhelX-X-X-X
y rhui-azure-rhel-X-X-X
en consecuencia.
Instalación del paquete RHUI de SAP/HANA de RHEL 9
Seleccione la pestaña de un tipo de imagen de SAP para ver las instrucciones correspondientes.
Los pasos siguientes se aplican si la versión del sistema operativo es anterior a la versión más reciente disponible que es compatible con SAP para RHEL 9.0
y si la máquina virtual se creó mediante la imagen de la RHEL-SAP-APPS
oferta.
Ejecute el comando para instalar el
rhui-azure-rhel9-sapapps
dnf install
paquete:sudo dnf --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel9-sapapps.config' install rhui-azure-rhel9-sapapps
Bloquee el
releasever
nivel. Actualmente, tiene que ser 9.0 o 9.2.sudo sh -c 'echo 9.2 > /etc/dnf/vars/releasever'
Compruebe que los repositorios correspondientes están disponibles y no muestre errores. Para ello, ejecute el
dnf repolist
comando :sudo dnf repolist all
Nota:
Si usa un proxy en /etc/yum.conf o /etc/dnf.conf, el yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-X
comando no funcionará porque no incluye la configuración del proxy. En este caso, use los siguientes comandos:
sudo wget https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhelX-X-X-X.config
sudo mv rhui-microsoft-azure-rhelX-X-X-X.config /etc/yum.repos.d
sudo yum install rhui-azure-rhel-X-X-X
Reemplace rhui-microsoft-azure-rhelX-X-X-X
y rhui-azure-rhel-X-X-X
en consecuencia.
Causa 4: Falta el certificado de entidad de certificación SSL
El archivo de certificado ca-bundle.crt se eliminó manualmente, se ha dañado o está obsoleto.
Es posible que reciba un mensaje de error similar al siguiente resultado al intentar ejecutar yum
comandos:
# yum repolist
Loaded plugins: langpacks, product-id, search-disabled-repos
rhui-rhel-X-server-dotnet-rhui FAILED
https://rhui-3.microsoft.com/pulp/repos//content/dist/rhel/rhui/server/X/XServer/x86_64/dotnet/1/os/repodata/70b2edf9a115dffa42d4dd66ba77e77bc3cad45d1143ed02df72ea58c92b59b5-primary.sqlite.bz2: [Errno 14] curl#77 - "Problem with the SSL CA cert (path? access rights?)"
Trying other mirror.
Solución 4: Actualización o reinstalación del paquete de certificados de CA
Descargue el paquete ca-certificates-XXXX.X.XX-XX.elX_X.noarch.rpm más reciente desde otra máquina virtual que tenga acceso al repositorio y la misma versión y versión de Red Hat. A continuación, copie el paquete en la máquina virtual afectada:
sudo yumdownloader ca-certificates sudo scp ca-certificates-XXXX.X.XX-XX.elX_X.noarch.rpm <user-name>@<affected-VM-IP-address>:/tmp
Nota:
Asegúrese de reemplazar los marcadores de posición de usuario y dirección IP correspondientes. Además, asegúrese de reemplazar el nombre del paquete, ca-certificates-XXXX.X.XX-XX.elX_X.noarch.rpm, en consecuencia.
Actualice, instale o vuelva a instalar el
ca-certificate
paquete después de copiarlo en la máquina virtual afectada:Compruebe si el paquete ya está instalado:
sudo rpm -qa | grep "ca-certificates"
Si falta el paquete, instálelo ejecutando el
yum install
comando :sudo yum install ca-certificates-*.noarch.rpm --disablerepo=*
Si el paquete sigue instalado, ejecute el
yum reinstall
comando para reinstalarlo:sudo yum reinstall ca-certificates-*.noarch.rpm --disablerepo=*
Para regenerar o actualizar los certificados correspondientes, ejecute el comando update-ca-trust :
sudo update-ca-trust
Causa 5: Error de comprobación en la versión 8 o 9 de RHEL ("Clave de certificado de CA demasiado débil")
El sistema intenta conectarse a un servidor que contiene un certificado firmado mediante claves RSA de 2048 bits. Sin embargo, el sistema tiene una FUTURE
configuración de directiva que prohíbe ese algoritmo criptográfico. Los siguientes mensajes de error se muestran en el archivo /var/log/messages o /var/log/dnf.log :
2023-03-13T19:07:55+0000 DEBUG error: Curl error (60): SSL peer certificate or SSH remote key was not OK for https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel9/rhui/9/x86_64/supplementary/os/repodata/repomd.xml [SSL certificate problem: CA certificate key too weak] (https://rhui4-1.microsoft.com/pulp/repos/content/dist/rhel9/rhui/9/x86_64/supplementary/os/repodata/repomd.xml).
- Curl error (58): Problem with the local SSL certificate for https://rhui-2.microsoft.com/pulp/repos/content/e4s/rhel8/rhui/8.4/x86_64/sap/os/repodata/repomd.xml [could not load PEM client certificate, OpenSSL error error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small, (no key found, wrong pass phrase, or wrong file format?)]
La configuración predeterminada de la directiva del sistema es DEFAULT
. En este escenario, la configuración predeterminada se cambió de DEFAULT
a FUTURE
o CUSTOM
. La FUTURE
directiva deshabilita algunos algoritmos que usan 2048 bits, como SHA-1, RSA y Diffie-Hellman. La CUSTOM
directiva también podría deshabilitar estos algoritmos. Para identificar el modo de configuración de directiva actual, ejecute el siguiente comando update-crypto-policies :
sudo update-crypto-policies --show
DEFAULT:FUTURE
Solución 5: Revertir a la directiva predeterminada del sistema criptográfico
Revierta la criptografía a la configuración de directiva del DEFAULT
sistema siguiendo estos pasos:
Vuelva a cambiar la configuración de directiva del sistema a
DEFAULT
mediante la ejecución delupdate-crypto-policies
comando :sudo update-crypto-policies --set DEFAULT
Compruebe que el cambio de directiva se realizó ejecutando el
update-crypto-policies
comando de nuevo:sudo update-crypto-policies --show
Pruebe para asegurarse de que el error se corrigió mediante la ejecución del
dnf install
comando :sudo dnf install <package-name>
Para obtener más información sobre la directiva criptográfica, vea Valores predeterminados criptográficos seguros en RHEL 8 y desuso de algoritmos criptográficos débiles.
Aviso de declinación de responsabilidades sobre la información de terceros
Los productos de otros fabricantes que se mencionan en este artículo han sido creados por compañías independientes de Microsoft. Microsoft no ofrece ninguna garantía, ya sea implícita o de otro tipo, sobre la confiabilidad o el rendimiento de dichos productos.
Ponte en contacto con nosotros para obtener ayuda
Si tiene preguntas o necesita ayuda, cree una solicitud de soporte o busque consejo en la comunidad de Azure. También puede enviar comentarios sobre el producto con los comentarios de la comunidad de Azure.
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de