Behandeln von Problemen mit RHUI-Zertifikaten in Azure

In diesem Artikel werden häufige Probleme in der Red Hat Update Infrastructure (RHUI) erläutert, die durch abgelaufene oder fehlende TLS- oder Ssl-Zertifikate (Transport Layer Security) oder Secure Sockets Layer (SSL) verursacht werden.

Voraussetzungen

Wichtig

Die RHUI ist nur für Bilder mit nutzungsbasierter Bezahlung vorgesehen. Verwenden Sie stattdessen benutzerdefinierte oder goldene Images (auch als "Bring-Your-Own-Subscription (BYOS)" bezeichnet)? In diesem Fall muss das System an Red Hat Subscription Manager (RHSM) oder Satellite angefügt werden, um Updates zu erhalten. Weitere Informationen finden Sie unter Registrieren und Abonnieren eines RHEL-Systems im Red Hat-Kundenportal mithilfe von RHSM.

Hinweis

  • Ab dem 12. Oktober 2023 wurden alle Kunden mit nutzungsbasierter Bezahlung (pay-as-you-go, PAYG) in Phasen an die Red Hat Update Infrastructure (RHUI) 4-IP-Adressen weitergeleitet. Die RHUI-3-IP-Adressen bleiben für fortlaufende Updates verfügbar, werden aber in Zukunft entfernt. Um den ununterbrochenen Zugriff auf Pakete und Updates sicherzustellen, müssen Sie vorhandene Routen und Regeln aktualisieren, die den Zugriff auf RHUI-3-IP-Adressen ermöglichen, um RHUI-4-IP-Adressen einzuschließen. Um jedoch während dieses Übergangszeitraums weiterhin Updates zu erhalten, entfernen Sie keine RHUI-3-IP-Adressen.
  • Ab Januar 2020 verwenden die neuen Azure US Government-Images die öffentlichen IP-Adressen, die zuvor unter dem globalen Azure-Header erwähnt wurden.

Ursache 1: Das RHUI-Clientzertifikat ist abgelaufen.

Die Azure RHUI-Zertifikate laufen in der Regel alle zwei Jahre ab. Wenn Sie ein älteres RHEL-VM-Image verwenden, z. B. RHEL Version 7.4 (Image-URN: RedHat:RHEL:7.4:7.4.2018010506), tritt aufgrund eines jetzt abgelaufenen TLS/SSL-Clientzertifikats eine beeinträchtigte Konnektivität mit RHUI auf. Beispielsweise kann eine der folgenden Fehlermeldungen angezeigt werden:

  • "SSL-Peer hat Ihr Zertifikat als abgelaufen abgelehnt"

  • "Error: Cannot retrieve repository metadata (repomd.xml) for repository:_... Überprüfen Sie den Pfad, und versuchen Sie es erneut."

Sie müssen einen Prozess anwenden, um den Zertifikatablauf in alten Images oder Images zu vermeiden, die direkt vor einem Zertifikatablaufdatum erstellt wurden.

Lösung 1: Aktualisieren des RHUI-Clientpakets

Verwenden Sie RHUI, um auf RHEL-Repositorys auf Systemen mit nutzungsbasierter Bezahlung in Cloudumgebungen zuzugreifen. Als Cloudanbieter kann Azure jederzeit neuere RPM-Versionen der Clientkonfiguration erstellen und veröffentlichen, z. B. für die folgenden Aufgaben:

  • Bereitstellen des Zugriffs auf ein neues Repository.
  • Erneuern von Zertifikaten.
  • Andere Verpackungsänderungen vornehmen.

In diesem Fall müssen Sie das neue RHUI-Paket im System installieren. Dieses Paket verfügt über das erneuerte Zertifikat. Führen Sie den Befehl yum aus, um das RHUI-Paket zu aktualisieren:

sudo yum update -y --disablerepo='*' --enablerepo='*microsoft*'

Der sudo yum update Befehl kann auch das Clientzertifikatpaket aktualisieren (abhängig von Ihrer RHEL-Version). Dies gilt auch, wenn die Befehlsausgabe dieselben abgelaufenen SSL-Zertifikatfehler enthält, die für andere Repositorys angezeigt werden. Wenn dieses Update erfolgreich ist, müssen Sie die normale Konnektivität mit anderen RHUI-Repositorys wiederherstellen, damit Sie ein zweites Mal erfolgreich ausgeführt sudo yum update werden können.

Wenn beim Ausführen yum updatevon die Fehlermeldung "404" angezeigt wird, versuchen Sie, die folgenden Befehle auszuführen, um Ihren yum-Cache zu aktualisieren:

sudo yum clean all
sudo yum makecache

Ursache 2: RHUI-Zertifikat fehlt

Auf der Azure Red Hat Linux-VM ist das RHUI-Azure-Paket bereits installiert. Das Zertifikat fehlt jedoch im Verzeichnis /etc/pki/rhui/product/ .

Wenn das RHUI-Zertifikat versehentlich vom virtuellen Computer entfernt wurde, wird die folgende Fehlermeldung angezeigt, wenn Sie versuchen, ein Paket zu installieren oder zu aktualisieren:

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?)]

Lösung 2: Erneutes Installieren des EUS-, Nicht-EUS- oder SAP RHUI-Pakets

Installieren Sie das entsprechende RHUI-Paket neu, um die fehlenden Zertifikate am richtigen Speicherort neu zu generieren.

Alle Befehle in den folgenden Schritten sollten mithilfe von Stammberechtigungen oder durch Angabe sudovon ausgeführt werden:

  1. Überprüfen Sie mithilfe des folgenden Befehls, ob das rhui-azure Paket (EUS, non-EUS, oder SAP/E4S) installiert ist:

    sudo rpm -qa | grep -i azure
    
    rhui-azure-rhelX-<>-X.X-XXX.noarch
    

    Weitere Informationen zu erweiterten Updateunterstützungspaketen (EXTENDED Update Support, EUS) oder Nicht-EUS-RHUI-Paketen finden Sie in den verknüpften Abschnitten der folgenden Artikel.

    Pakettyp Link
    EUS RHUI-Pakete Red Hat-Images, die mit EUS-Repositorys verbunden sind
    Nicht-EUS RHUI-Pakete Red Hat-Images, die mit Nicht-EUS-Repositorys verbunden sind
    Update Services für SAP-Lösungsabonnements (SAP/E4S) RHUI-Pakete Red Hat-Images, die mit SAP/E4S-Repositorys verbunden sind
  2. Vergewissern Sie sich, dass das Zertifikat vorhanden ist:

    sudo ls -l /etc/pki/rhui/product/
    

    Hinweis

    In diesem Szenario stellen Sie fest, dass die Datei fehlt.

  3. Installieren Sie das entsprechende rhui-azure Paket neu, indem Sie den yum reinstall Befehl ausführen:

    sudo yum reinstall $(rpm -qa | grep -i rhui-azure) --disablerepo=* --enablerepo="*microsoft*"
    
  4. Wenn das EUS Repository oder E4S installiert ist, sperren Sie die releasever Variable:

    sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/yum/vars/releasever
    
  5. Überprüfen Sie, ob das Zertifikat vorhanden ist, indem Sie den ls Befehl erneut ausführen. Die Zertifikatdatei sollte jetzt aufgelistet werden:

    sudo ls -l /etc/pki/rhui/product/
    

Ursache 3: RHUI-Paket fehlt

Das RHUI EUS-, Nicht-EUS- oder SAP/E4S-Paket fehlt auf der Red Hat-VM, aber die Repositorykonfigurationsdateien sind weiterhin im Verzeichnis /etc/yum.repos.d/ vorhanden.

Wenn Sie versuchen, ein Paket zu installieren oder zu aktualisieren, wird die folgende Fehlermeldung angezeigt:

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?)]

Lösung 3: Installieren des EUS-, Nicht-EUS- oder SAP/E4S-RHUI-Pakets

Installieren Sie das fehlende RHUI-Paket für EUS, Nicht-EUS oder SAP/E4S.

Alle folgenden Befehle sollten mithilfe von Stammberechtigungen oder durch Angeben sudovon ausgeführt werden.

Installation des EUS-RHUI-Pakets

  1. Führen Sie den yum install Befehl aus, um das rhui-azure-rhel7-eus Paket zu installieren:

    sudo yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel7-eus.config' install 'rhui-azure-rhel7-eus'
    
  2. Sperren Sie die releasever Variable:

    sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/yum/vars/releasever
    
  3. Vergewissern Sie sich, dass die entsprechenden Repositorys verfügbar sind und keine Fehler anzeigen, indem Sie den yum repolist Befehl ausführen:

    sudo yum repolist all
    

Hinweis

Wenn Sie einen Proxy in /etc/yum.conf oder /etc/dnf.conf verwenden, funktioniert der yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-X Befehl nicht, da er Ihre Proxyeinstellungen nicht enthält. Verwenden Sie in diesem Fall die folgenden Befehle:

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

Ersetzen Sie rhui-microsoft-azure-rhelX-X-X-X und rhui-azure-rhel-X-X-X entsprechend.

Nicht-EUS RHUI-Paketinstallation

  1. Entfernen Sie die Releasever-Datei, sofern vorhanden.

    sudo rm /etc/yum/vars/releasever
    
  2. Installieren Sie das rhui-azure-rhel7 Paket, indem Sie den yum install Befehl ausführen:

    sudo yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel7.config' install 'rhui-azure-rhel7'
    
  3. Vergewissern Sie sich, dass die entsprechenden Repositorys verfügbar sind und keine Fehler anzeigen, indem Sie den yum repolist Befehl ausführen:

    sudo yum repolist all
    

Hinweis

Wenn Sie einen Proxy in /etc/yum.conf oder /etc/dnf.conf verwenden, funktioniert der yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-X Befehl nicht, da er Ihre Proxyeinstellungen nicht enthält. Verwenden Sie in diesem Fall die folgenden Befehle:

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

Ersetzen Sie rhui-microsoft-azure-rhelX-X-X-X und rhui-azure-rhel-X-X-X entsprechend.

Installation des RHEL 7 SAP/E4S/HANA RHUI-Pakets

Wählen Sie die Registerkarte eines SAP-Imagetyps aus, um die entsprechenden Anweisungen anzuzeigen.

Die folgenden Schritte gelten, wenn die Betriebssystemversion vor RHEL 7.9 liegt und die VM mithilfe des RHEL-SAP-APPS Angebotsimages erstellt wurde.

  1. Installieren Sie das rhui-azure-rhel7-sapapps Paket, indem Sie den yum install Befehl ausführen:

    sudo yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel7-sapapps.config' install rhui-azure-rhel7-sapapps
    
  2. Sperren Sie die releasever Variable:

    sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/yum/vars/releasever
    
  3. Vergewissern Sie sich, dass die entsprechenden Repositorys verfügbar sind und keine Fehler anzeigen, indem Sie den yum repolist Befehl ausführen:

    sudo yum repolist all
    

Hinweis

Wenn Sie einen Proxy in /etc/yum.conf oder /etc/dnf.conf verwenden, funktioniert der yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-X Befehl nicht, da er Ihre Proxyeinstellungen nicht enthält. Verwenden Sie in diesem Fall die folgenden Befehle:

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

Ersetzen Sie rhui-microsoft-azure-rhelX-X-X-X und rhui-azure-rhel-X-X-X entsprechend.

Installation des RHEL 8 SAP/E4S/HANA RHUI-Pakets

Wählen Sie die Registerkarte eines SAP-Imagetyps aus, um die entsprechenden Anweisungen anzuzeigen.

Die folgenden Schritte gelten, wenn die Betriebssystemversion älter als die neueste verfügbare Version ist, die von SAP für RHEL 8.X unterstützt wird und die VM mithilfe des RHEL-SAP-APPS Angebotsimages erstellt wurde.

  1. Installieren Sie das rhui-azure-rhel8-sapapps Paket, indem Sie den dnf-Installationsbefehl ausführen:

    sudo dnf --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel8-sapapps.config' install rhui-azure-rhel8-sapapps
    
  2. Sperren Sie die releasever Variable:

    sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/dnf/vars/releasever
    
  3. Vergewissern Sie sich, dass die entsprechenden Repositorys verfügbar sind und keine Fehler anzeigen, indem Sie den dnf repolist Befehl ausführen:

    sudo dnf repolist all
    

Hinweis

Wenn Sie einen Proxy in /etc/yum.conf oder /etc/dnf.conf verwenden, funktioniert der yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-X Befehl nicht, da er Ihre Proxyeinstellungen nicht enthält. Verwenden Sie in diesem Fall die folgenden Befehle:

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

Ersetzen Sie rhui-microsoft-azure-rhelX-X-X-X und rhui-azure-rhel-X-X-X entsprechend.

Installation des RHEL 9-SAP/HANA-RHUI-Pakets

Wählen Sie die Registerkarte eines SAP-Imagetyps aus, um die entsprechenden Anweisungen anzuzeigen.

Die folgenden Schritte gelten, wenn die Betriebssystemversion älter als die neueste verfügbare Version ist, die von SAP für RHEL 9.0unterstützt wird, und wenn die VM mithilfe des RHEL-SAP-APPS Angebotsimages erstellt wurde.

  1. Installieren Sie das rhui-azure-rhel9-sapapps Paket, indem Sie den dnf install Befehl ausführen:

    sudo dnf --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel9-sapapps.config' install rhui-azure-rhel9-sapapps
    
  2. Sperren Sie die releasever Ebene. Derzeit muss es 9.0 oder 9.2 sein.

    sudo sh -c 'echo 9.2 > /etc/dnf/vars/releasever'
    
  3. Vergewissern Sie sich, dass die entsprechenden Repositorys verfügbar sind und keine Fehler anzeigen. Führen Sie hierzu den dnf repolist Befehl aus:

    sudo dnf repolist all
    

Hinweis

Wenn Sie einen Proxy in /etc/yum.conf oder /etc/dnf.conf verwenden, funktioniert der yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-X Befehl nicht, da er Ihre Proxyeinstellungen nicht enthält. Verwenden Sie in diesem Fall die folgenden Befehle:

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

Ersetzen Sie rhui-microsoft-azure-rhelX-X-X-X und rhui-azure-rhel-X-X-X entsprechend.

Ursache 4: Ssl-Zertifizierungsstellenzertifikat fehlt

Die Zertifikatdatei ca-bundle.crt wurde manuell gelöscht, war beschädigt oder veraltet.

Möglicherweise erhalten Sie eine Fehlermeldung, die der folgenden Ausgabe ähnelt, wenn Sie versuchen, Befehle auszuführen yum :

# 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.

Lösung 4: Aktualisieren oder erneutes Installieren des Zertifizierungsstellenzertifikatpakets

  1. Laden Sie das neueste Paket ca-certificates-XXXX.X.XX-XX.elX_X.noarch.rpm von einem anderen virtuellen Computer mit Repositoryzugriff und derselben Red Hat-Version und -Version herunter. Kopieren Sie dann das Paket auf den betroffenen virtuellen Computer:

    sudo yumdownloader ca-certificates
    sudo scp ca-certificates-XXXX.X.XX-XX.elX_X.noarch.rpm <user-name>@<affected-VM-IP-address>:/tmp
    

    Hinweis

    Stellen Sie sicher, dass Sie die entsprechenden Benutzer- und IP-Adressplatzhalter ersetzen. Stellen Sie außerdem sicher, dass Sie den Paketnamen ca-certificates-XXXX.X.XX-XX.elX_X.noarch.rpm entsprechend ersetzen.

  2. Aktualisieren, installieren oder erneutes Installieren des ca-certificate Pakets, nachdem es auf den betroffenen virtuellen Computer kopiert wurde:

    1. Überprüfen Sie, ob das Paket bereits installiert ist:

      sudo rpm -qa | grep "ca-certificates"
      
      • Wenn das Paket fehlt, installieren Sie es, indem Sie den yum install Befehl ausführen:

        sudo yum install ca-certificates-*.noarch.rpm --disablerepo=*
        
      • Wenn das Paket noch installiert ist, führen Sie den yum reinstall Befehl aus, um es erneut zu installieren:

        sudo yum reinstall ca-certificates-*.noarch.rpm --disablerepo=*
        
    2. Führen Sie den Befehl update-ca-trust aus, um die entsprechenden Zertifikate erneut zu generieren oder zu aktualisieren:

      sudo update-ca-trust
      

Ursache 5: Überprüfungsfehler in RHEL Version 8 oder 9 ("ZS-Zertifikatschlüssel zu schwach")

Das System versucht, eine Verbindung mit einem Server herzustellen, der ein Zertifikat enthält, das mit 2048-Bit-RSA-Schlüsseln signiert wurde. Das System verfügt jedoch über eine FUTURE Richtlinieneinstellung, die diesen kryptografischen Algorithmus verbietet. Die folgenden Fehlermeldungen werden in der Datei /var/log/messages oder /var/log/dnf.log angezeigt:

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?)]

Die Standardeinstellung der Systemrichtlinie ist DEFAULT. In diesem Szenario wurde die Standardeinstellung von in DEFAULTFUTURE oder CUSTOMgeändert. Die FUTURE Richtlinie deaktiviert einige Algorithmen, die 2048 Bits verwenden, z. B. SHA-1, RSA und Diffie-Hellman. Die CUSTOM Richtlinie kann diese Algorithmen auch deaktivieren. Führen Sie den folgenden Befehl update-crypto-policies aus, um den aktuellen Richtlinieneinstellungsmodus zu identifizieren:

sudo update-crypto-policies --show
DEFAULT:FUTURE

Lösung 5: Wiederherstellen der kryptografischen Standardsystemrichtlinie

Führen Sie die folgenden Schritte aus, um die Kryptografie auf die DEFAULT Systemrichtlinieneinstellung zurückzustellen:

  1. Ändern Sie die Systemrichtlinieneinstellung wieder in, DEFAULT indem Sie den update-crypto-policies Befehl ausführen:

    sudo update-crypto-policies --set DEFAULT
    
  2. Überprüfen Sie, ob die Richtlinienänderung durchgeführt wurde, indem Sie den update-crypto-policies Befehl erneut ausführen:

    sudo update-crypto-policies --show
    
  3. Testen Sie, um sicherzustellen, dass der Fehler behoben wurde, indem Sie den dnf install Befehl ausführen:

    sudo dnf install <package-name>
    

Weitere Informationen zur Kryptografierichtlinie finden Sie unter Starke Kryptografiestandardeinstellungen in RHEL 8 und Einstellung schwacher Kryptografiealgorithmen.

Informationen zum Haftungsausschluss von Drittanbietern

Die in diesem Artikel genannten Drittanbieterprodukte stammen von Herstellern, die von Microsoft unabhängig sind. Microsoft gewährt keine implizite oder sonstige Garantie in Bezug auf die Leistung oder Zuverlässigkeit dieser Produkte.

Kontaktieren Sie uns für Hilfe

Wenn Sie Fragen haben oder Hilfe mit Ihren Azure-Gutschriften benötigen, dann erstellen Sie beim Azure-Support eine Support-Anforderung oder fragen Sie den Azure Community-Support. Sie können auch Produktfeedback an die Azure Feedback Community senden.