Behandeln von Problemen mit RHUI-Zertifikaten in Azure

Gilt für: ✔️ Linux-VMs

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

Voraussetzungen

Wichtig

RHUI ist nur für Images mit nutzungsbasierter Bezahlung (Pay-As-You-Go) vorgesehen. Verwenden Sie stattdessen benutzerdefinierte oder goldene Bilder (auch bekannt als „bring-your-own-subscription (BYOS)“)? 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 beim Red Hat Customer Portal mit RHSM.

Notiz

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

Ursache 1: 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), haben Sie aufgrund eines jetzt abgelaufenen TLS/SSL-Clientzertifikats eine beeinträchtigte Verbindung mit RHUI. Sie können beispielsweise eine der folgenden Fehlermeldungen erhalten:

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

  • "Fehler: Repositorymetadaten (repomd.xml) für Repository nicht abrufen:_... Überprüfen Sie den Pfad, und versuchen Sie es erneut"

Sie müssen einen Prozess anwenden, um den Ablauf von Zertifikaten in alten Bildern oder Bildern zu vermeiden, die direkt vor einem Zertifikatablaufdatum erstellt wurden.

Lösung 1: Aktualisieren des RHUI-Clientpakets

Um auf RHEL-Repositorys auf Pay-as-you-go-Systemen in Cloud-Umgebungen zuzugreifen, verwenden Sie RHUI. Als Cloudanbieter kann Azure jederzeit neuere Client-Konfigurations-RPM-Versionen erstellen und veröffentlichen, z. B. für die folgenden Aufgaben:

  • Bereitstellen des Zugriffs auf ein neues Repository
  • Erneuern von Zertifikaten
  • Vornehmen anderer Verpackungsänderungen

In dieser Situation 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-azure*'

Der sudo yum update-Befehl aktualisiert möglicherweise auch das Clientzertifikatpaket (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. Verläuft das Update erfolgreich, müssen Sie die normale Konnektivität zu anderen RHUI-Repositorys wiederherstellen, so dass Sie sudo yum update ein zweites Mal erfolgreich ausführen können.

Wenn beim Ausführen ein Fehler "404" angezeigt yum updatewird, versuchen Sie, die folgenden Befehle auszuführen, um den Yum-Cache zu aktualisieren:

sudo yum clean all
sudo yum makecache

Ursache 2: RHUI-Zertifikat fehlt

Der virtuelle Azure Red Hat Linux-Computer hat das RHUI Azure-Paket bereits installiert. Das Zertifikat fehlt jedoch im Verzeichnis "/etc/pki/rhui/product/ ".

Wenn das RHUI-Zertifikat versehentlich von der VM 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 an der richtigen Stelle neu zu generieren.

Alle Befehle in den folgenden Schritten sollten mithilfe von Stammberechtigungen oder durch Angeben sudovon :

  1. Stellen Sie sicher, dass das rhui-azure Paket (EUS, non-EUSoder SAP/E4S) installiert ist. Führen Sie zu diesem Zweck den folgenden Befehl aus:

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

    Weitere Informationen zum Erweiterten Update-Support (EUS) oder Nicht-EUS RHUI-Paketen finden Sie in den verknüpften Abschnitten der folgenden Artikel.

    Pakettyp Verknüpfung
    EUS RHUI Pakete Red Hat-Bilder, die mit EUS-Repositorys verbunden sind
    Nicht-EUS RHUI Pakete Red Hat-Bilder, die mit Nicht-EUS-Repositorys verbunden sind
    Update Services für SAP Solutions-Abonnements (SAP/E4S) RHUI-Pakete Red Hat-Bilder, die mit SAP/E4S-Repositorys verbunden sind
  2. Überprüfen Sie, ob das Zertifikat vorhanden ist:

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

    Notiz

    In diesem Szenario erkennen Sie, dass die Datei fehlt.

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

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

    sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/yum/vars/releasever
    
  5. Stellen Sie sicher, dass das Zertifikat vorhanden ist, indem Sie den ls Befehl erneut ausführen. Die Zertifikatdatei sollte jetzt aufgeführt werden:

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

Ursache 3: RHUI-Paket fehlt

Das RHUI EUS-, Nicht-EUS- oder SAP/E4S-Paket fehlt von 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 sudoausgeführt werden.

Installation des EUS RHUI-Pakets

  1. Verwenden Sie den yum install-Befehl , 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. Überprüfen Sie, ob die entsprechenden Repositorys verfügbar sind, und zeigen Sie keine Fehler an. Führen Sie dazu den yum repolist Befehl aus:

    sudo yum repolist all
    

Notiz

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 rhui-azure-rhel-X-X-X die tatsächlichen Werte entsprechend.

Nicht-EUS RHUI Paketinstallation

  1. Entfernen Sie die Releasever-Datei, falls 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. Überprüfen Sie, ob die entsprechenden Repositorys verfügbar sind, und zeigen Sie keine Fehler an. Führen Sie dazu den yum repolist Befehl aus:

    sudo yum repolist all
    

Notiz

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 rhui-azure-rhel-X-X-X die tatsächlichen Werte entsprechend.

RHEL 7 SAP/E4S/HANA RHUI Paketinstallation

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

Die folgenden Schritte gelten, wenn die Betriebssystemversion älter als RHEL 7.9 ist 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. Überprüfen Sie, ob die entsprechenden Repositorys verfügbar sind, und zeigen Sie keine Fehler an. Führen Sie dazu den yum repolist Befehl aus:

    sudo yum repolist all
    

Notiz

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 rhui-azure-rhel-X-X-X die tatsächlichen Werte entsprechend.

RHEL 8 SAP/E4S/HANA RHUI Paketinstallation

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

Die folgenden Schritte gelten, wenn die Betriebssystemversion früher als die neueste version ist, die von SAP unterstützt RHEL 8.X 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. Überprüfen Sie, ob die entsprechenden Repositorys verfügbar sind, und zeigen Sie keine Fehler an. Führen Sie dazu den yum repolist Befehl aus:

    sudo dnf repolist all
    

Notiz

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 rhui-azure-rhel-X-X-X die tatsächlichen Werte entsprechend.

RHEL 9 SAP/HANA RHUI Paketinstallation

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 Version ist, die von SAP für RHEL 9.0unterstützt wird, und ob der virtuelle Computer 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 die Version 9.0 oder 9.2 sein.

    sudo sh -c 'echo 9.2 > /etc/dnf/vars/releasever'
    
  3. Überprüfen Sie, ob die entsprechenden Repositorys verfügbar sind, und zeigen Sie keine Fehler an. Führen Sie dazu den yum repolist Befehl aus:

    sudo dnf repolist all
    

Notiz

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 rhui-azure-rhel-X-X-X die tatsächlichen Werte entsprechend.

Ursache 4: SSL-Zertifizierungsstellenzertifikat fehlt

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

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

# 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 Ca-certificates-XXXX.X.XX-XX.elX_X.noarch.rpm-Paket von einem anderen virtuellen Computer herunter, der Über Repositoryzugriff und dieselbe Red Hat-Version und -Version verfügt. Kopieren Sie dann das Paket auf die betroffene VM:

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

    Notiz

    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 nach dem Kopieren in die betroffene VM:

    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 neu zu generieren oder zu aktualisieren:

      sudo update-ca-trust
      

Ursache 5: Überprüfungsfehler in RHEL Version 8 oder 9 ("Zertifizierungsstellenzertifikatschlü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 ist. Das System verfügt jedoch über eine FUTURE-Richtlinieneinstellung, die diesen Kryptografiealgorithmus 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 Standard-Systemrichtlinieneinstellung ist DEFAULT. In diesem Szenario wurde die Standardeinstellung von DEFAULT zu FUTURE oder CUSTOM geändert. Die FUTURE Richtlinie deaktiviert einige Algorithmen, die 2.048 Bit verwenden, z. B. SHA-1, RSA und Diffie-Hellman. Die CUSTOM-Richtlinie kann diese Algorithmen auch deaktivieren. Um den aktuellen Richtlinieneinstellungsmodus zu identifizieren, führen Sie den folgenden Befehl "update-crypto-policies " aus:

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

Lösung 5: Zurücksetzen auf die Standardmäßige Kryptografiesystemrichtlinie

Setzen Sie die Kryptografie auf die DEFAULT-Systemrichtlinieneinstellung zurück, indem Sie die folgenden Schritte ausführen:

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

    sudo update-crypto-policies --set DEFAULT
    
  2. Überprüfen Sie, ob die Richtlinienänderung durchlaufen 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 ist. Führen Sie dazu den dnf install Befehl aus:

    sudo dnf install <package-name>
    

Weitere Informationen zu kryptografischen Richtlinien finden Sie unter Starke Kryptostandards in RHEL 8 und Ausmusterung von schwachen Kryptoalgorithmen.

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.