Azure での RHUI 証明書の問題のトラブルシューティング

この記事では、Red Hat Update Infrastructure (RHUI) の一般的な問題について説明します。これは、トランスポート層セキュリティ (TLS) 証明書または Secure Sockets Layer (SSL) 証明書の有効期限切れまたは不足が原因で発生します。

前提条件

重要

RHUI は従量課金制の画像のみを対象としています。 代わりにカスタム イメージまたはゴールデン イメージ ("Bring-your-own-subscription (BYOS)" とも呼ばれます) を使用していますか? その場合、更新プログラムを受信するには、システムを Red Hat サブスクリプション マネージャー (RHSM) またはサテライトに接続する必要があります。 詳細については、「 RHSM を使用して RHEL システムを登録して Red Hat カスタマー ポータルにサブスクライブする方法」を参照してください。

注:

  • 2023 年 10 月 12 日から、すべての従量課金制 (PAYG) クライアントは、段階的に Red Hat Update Infrastructure (RHUI) 4 IP に転送されています。 RHUI-3 IP は引き続き更新できますが、今後削除される予定です。 パッケージと更新プログラムへの中断のないアクセスを確保するには、RHUI-3 IP へのアクセスを許可する既存のルートとルールを更新して、RHUI-4 IP アドレスを含める必要があります。 ただし、この移行期間中に引き続き更新プログラムを受信するには、RHUI-3 IP を削除しないでください。
  • 2020 年 1 月以降、新しい Azure US Government イメージは、Azure Global ヘッダーの下で前述したパブリック IP アドレスの使用を開始しました。

原因 1: RHUI クライアント証明書の有効期限が切れています

Azure RHUI 証明書は通常、2 年ごとに期限切れになります。 RHEL バージョン 7.4 (イメージ URN: RedHat:RHEL:7.4:7.4.2018010506) などの古い RHEL VM イメージを使用する場合、有効期限が切れた TLS/SSL クライアント証明書が原因で RHUI への接続が低下します。 たとえば、次のいずれかのエラー メッセージが表示される場合があります。

  • "SSL ピアが証明書を期限切れとして拒否しました"

  • "エラー: repository:_.. のリポジトリ メタデータ (repomd.xml) を取得できません。そのパスを確認し、もう一度お試しください"

証明書の有効期限が切れる直前に作成された古いイメージまたはイメージで証明書の有効期限が切れないように、プロセスを適用する必要があります。

解決策 1: RHUI クライアント パッケージを更新する

クラウド環境の従量課金制システム上の RHEL リポジトリにアクセスするには、RHUI を使用します。 クラウド プロバイダーとして、Azure では、次のタスクなど、新しいクライアント構成 RPM バージョンをいつでも作成して発行できます。

  • 新しいリポジトリへのアクセスを提供する。
  • 証明書の更新。
  • その他のパッケージ化の変更。

このような場合は、新しい RHUI パッケージをシステムにインストールする必要があります。 このパッケージには、更新された証明書があります。 yum コマンドを実行して、RHUI パッケージを更新します。

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

また、コマンドによって sudo yum update クライアント証明書パッケージが更新される場合もあります (RHEL のバージョンに応じて)。 これは、コマンド出力に、他のリポジトリに表示されるのと同じ期限切れの SSL 証明書エラーが含まれている場合でも当てはまります。 この更新が成功した場合は、2 回目に正常に実行 sudo yum update できるように、他の RHUI リポジトリへの通常の接続を復元する必要があります。

を実行 yum updateするときに "404" エラーが発生した場合は、次のコマンドを実行して yum キャッシュを更新してみてください。

sudo yum clean all
sudo yum makecache

原因 2: RHUI 証明書がありません

Azure Red Hat Linux VM には、RHUI Azure パッケージが既にインストールされています。 ただし、証明書が /etc/pki/rhui/product/ ディレクトリに存在しません。

誤って RHUI 証明書が VM から削除された場合、パッケージをインストールまたは更新しようとすると、次のエラー メッセージが表示されます。

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

解決策 2: EUS、EUS 以外、または SAP RHUI パッケージを再インストールする

該当する RHUI パッケージを再インストールして、不足している証明書を正しい場所に再生成します。

次の手順のすべてのコマンドは、ルート特権を使用するか、 を指定して実行する sudo必要があります。

  1. (、、またはSAP/E4S) パッケージがインストールされていることをrhui-azureEUS確認するには、non-EUS次のコマンドを使用します。

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

    拡張更新プログラム サポート (EUS) または EUS 以外の RHUI パッケージの詳細については、次の記事のリンクされたセクションを参照してください。

    パッケージの種類 リンク
    EUS RHUI パッケージ EUS リポジトリに接続されている Red Hat イメージ
    EUS 以外の RHUI パッケージ EUS 以外のリポジトリに接続されている Red Hat イメージ
    SAP Solutions サブスクリプションのサービスの更新 (SAP/E4S) RHUI パッケージ SAP/E4S リポジトリに接続されている Red Hat イメージ
  2. 証明書が存在することを確認します。

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

    注:

    このシナリオでは、ファイルが見つからないことが検出されます。

  3. コマンドを実行して、対応する rhui-azure パッケージを yum reinstall 再インストールします。

    sudo yum reinstall $(rpm -qa | grep -i rhui-azure) --disablerepo=* --enablerepo="*microsoft*"
    
  4. EUSまたは E4S リポジトリがインストールされている場合は、変数をロックしますreleasever

    sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/yum/vars/releasever
    
  5. コマンドをもう一度実行して、証明書が ls 存在することを確認します。 証明書ファイルが次の手順で一覧表示されます。

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

原因 3: RHUI パッケージがありません

RHUI EUS、EUS 以外、または SAP/E4S パッケージが Red Hat VM に存在しませんが、リポジトリ構成ファイルは /etc/yum.repos.d/ ディレクトリに存在します。

パッケージをインストールまたは更新しようとすると、次のエラー メッセージが表示されます。

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

解決策 3: EUS、EUS 以外、または SAP/E4S RHUI パッケージをインストールする

EUS、EUS 以外、または SAP/E4S の不足している RHUI パッケージをインストールします。

次のすべてのコマンドは、ルート特権を使用するか、 を指定して実行する sudo必要があります。

EUS RHUI パッケージのインストール

  1. コマンドを yum install 実行してパッケージを rhui-azure-rhel7-eus インストールします。

    sudo yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel7-eus.config' install 'rhui-azure-rhel7-eus'
    
  2. 変数をロックします releasever

    sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/yum/vars/releasever
    
  3. コマンドを実行して、対応するリポジトリが使用可能であり、エラーが表示されていないことを yum repolist 確認します。

    sudo yum repolist all
    

注:

/etc/yum.conf または /etc/dnf.conf でプロキシを使用している場合、プロキシ設定が含まれていないため、yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-Xコマンドは機能しません。 この場合は、次のコマンドを使用します。

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

rhui-azure-rhel-X-X-X を適宜置き換えますrhui-microsoft-azure-rhelX-X-X-X

EUS 以外の RHUI パッケージのインストール

  1. リリースバー ファイルが存在する場合は削除します。

    sudo rm /etc/yum/vars/releasever
    
  2. コマンドを rhui-azure-rhel7 実行してパッケージを yum install インストールします。

    sudo yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel7.config' install 'rhui-azure-rhel7'
    
  3. コマンドを実行して、対応するリポジトリが使用可能であり、エラーが表示されていないことを yum repolist 確認します。

    sudo yum repolist all
    

注:

/etc/yum.conf または /etc/dnf.conf でプロキシを使用している場合、プロキシ設定が含まれていないため、yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-Xコマンドは機能しません。 この場合は、次のコマンドを使用します。

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

rhui-azure-rhel-X-X-X を適宜置き換えますrhui-microsoft-azure-rhelX-X-X-X

RHEL 7 SAP/E4S/HANA RHUI パッケージのインストール

SAP イメージの種類のタブを選択して、対応する手順を確認します。

次の手順は、OS バージョンが RHEL 7.9 より前 で、オファー イメージを使用して VM が作成された場合に RHEL-SAP-APPS 適用されます。

  1. コマンドを rhui-azure-rhel7-sapapps 実行してパッケージを yum install インストールします。

    sudo yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel7-sapapps.config' install rhui-azure-rhel7-sapapps
    
  2. 変数をロックします releasever

    sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/yum/vars/releasever
    
  3. コマンドを実行して、対応するリポジトリが使用可能であり、エラーが表示されていないことを yum repolist 確認します。

    sudo yum repolist all
    

注:

/etc/yum.conf または /etc/dnf.conf でプロキシを使用している場合、プロキシ設定が含まれていないため、yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-Xコマンドは機能しません。 この場合は、次のコマンドを使用します。

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

rhui-azure-rhel-X-X-X を適宜置き換えますrhui-microsoft-azure-rhelX-X-X-X

RHEL 8 SAP/E4S/HANA RHUI パッケージのインストール

SAP イメージの種類のタブを選択して、対応する手順を確認します。

次の手順は、OS バージョンが SAP でRHEL 8.Xサポートされている最新バージョンより前であり、オファー イメージを使用して VM が作成された場合にRHEL-SAP-APPS適用されます。

  1. rhui-azure-rhel8-sapappsdnf インストール コマンドを実行してパッケージをインストールします。

    sudo dnf --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel8-sapapps.config' install rhui-azure-rhel8-sapapps
    
  2. 変数をロックします releasever

    sudo echo $(. /etc/os-release && echo $VERSION_ID) > /etc/dnf/vars/releasever
    
  3. コマンドを実行して、対応するリポジトリが使用可能であり、エラーが表示されていないことを dnf repolist 確認します。

    sudo dnf repolist all
    

注:

/etc/yum.conf または /etc/dnf.conf でプロキシを使用している場合、プロキシ設定が含まれていないため、yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-Xコマンドは機能しません。 この場合は、次のコマンドを使用します。

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

rhui-azure-rhel-X-X-X を適宜置き換えますrhui-microsoft-azure-rhelX-X-X-X

RHEL 9 SAP/HANA RHUI パッケージのインストール

SAP イメージの種類のタブを選択して、対応する手順を確認します。

次の手順は、OS のバージョンが、SAP for RHEL 9.0でサポートされている利用可能な最新バージョンより前の場合と、オファー イメージを使用して VM が作成された場合にRHEL-SAP-APPS適用されます。

  1. コマンドを rhui-azure-rhel9-sapapps 実行してパッケージを dnf install インストールします。

    sudo dnf --config='https://rhelimage.blob.core.windows.net/repositories/rhui-microsoft-azure-rhel9-sapapps.config' install rhui-azure-rhel9-sapapps
    
  2. レベルをロックします releasever 。 現時点では、9.0 または 9.2 である必要があります。

    sudo sh -c 'echo 9.2 > /etc/dnf/vars/releasever'
    
  3. 対応するリポジトリが使用可能であり、エラーが表示されていないことを確認します。 これを行うには、次のコマンドを dnf repolist 実行します。

    sudo dnf repolist all
    

注:

/etc/yum.conf または /etc/dnf.conf でプロキシを使用している場合、プロキシ設定が含まれていないため、yum --config='https://rhelimage.blob.core.windows.net/repositories/rhui-x-x-x-x install rhui-azure-rhel-X-X-Xコマンドは機能しません。 この場合は、次のコマンドを使用します。

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

rhui-azure-rhel-X-X-X を適宜置き換えますrhui-microsoft-azure-rhelX-X-X-X

原因 4: SSL CA 証明書がありません

ca-bundle.crt 証明書ファイルが手動で削除されたか、破損しているか、古くなっています。

コマンドを実行 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.

解決策 4: CA 証明書パッケージを更新または再インストールする

  1. 最新の ca-certificates-XXXX.X.XX-XX.elX_X.noarch.rpm パッケージを、リポジトリ アクセスと同じ Red Hat バージョンとリリースを持つ別の VM からダウンロードします。 次に、影響を受ける VM にパッケージをコピーします。

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

    注:

    対応するユーザーと IP アドレスのプレースホルダーを必ず置き換えてください。 また、それに応じて、パッケージ名 ca-certificates-XXXX.X.XX-XX.elX_X.noarch.rpm も必ず置き換えてください。

  2. 影響を受ける VM に ca-certificate コピーした後、パッケージを更新、インストール、または再インストールします。

    1. パッケージが既にインストールされているかどうかを確認します。

      sudo rpm -qa | grep "ca-certificates"
      
      • パッケージが見つからない場合は、次のコマンドを yum install 実行してインストールします。

        sudo yum install ca-certificates-*.noarch.rpm --disablerepo=*
        
      • パッケージがまだインストールされている場合は、コマンドを yum reinstall 実行して再インストールします。

        sudo yum reinstall ca-certificates-*.noarch.rpm --disablerepo=*
        
    2. 対応する証明書を再生成または更新するには、 update-ca-trust コマンドを実行します。

      sudo update-ca-trust
      

原因 5: RHEL バージョン 8 または 9 の検証エラー ("CA 証明書キーが弱すぎます")

システムは、2048 ビット RSA キーを使用して署名された証明書を含むサーバーに接続しようとします。 ただし、システムには FUTURE 、その暗号化アルゴリズムを禁止するポリシー設定があります。 /var/log/messages または /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?)]

既定のシステム ポリシー設定は です DEFAULT。 このシナリオでは、既定の設定が から DEFAULT または CUSTOMFUTURE変更されました。 このポリシーでは FUTURE 、SHA-1、RSA、Diffie-Hellman など、2048 ビットを使用する一部のアルゴリズムが無効になります。 ポリシーでは、 CUSTOM これらのアルゴリズムが無効になる場合もあります。 現在のポリシー設定モードを特定するには、次の update-crypto-policies コマンドを 実行します。

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

解決策 5: 既定の暗号化システム ポリシーに戻す

次の手順に従って、暗号化を DEFAULT システム ポリシー設定に戻します。

  1. コマンドを実行update-crypto-policiesして、システム ポリシー設定を にDEFAULT戻します。

    sudo update-crypto-policies --set DEFAULT
    
  2. 次のコマンドをもう一度実行して、ポリシーの変更が行ったことを update-crypto-policies 確認します。

    sudo update-crypto-policies --show
    
  3. 次のコマンドを実行 dnf install して、エラーが修正されていることをテストします。

    sudo dnf install <package-name>
    

暗号化ポリシーの詳細については、「 RHEL 8 の強力な暗号化の既定値」および「弱い暗号化アルゴリズムの廃止」を参照してください。

サードパーティの情報に関する免責事項

この資料に記載されているサードパーティ製品は、マイクロソフトと関連のない他社の製品です。 明示的か黙示的かにかかわらず、これらの製品のパフォーマンスや信頼性についてマイクロソフトはいかなる責任も負わないものとします。

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。