期限切れの証明書がないのに証明書エラーが表示される(VMware)

VMware
Sponsored Link

証明書エラー

vCenterの画面で「証明書のステータス」エラーを見ることはたまにあります。
証明書のステータス

実際証明書の期限切れが近かったりすることもありますが、正しく更新を行っているにもかかわらずエラーが出力されることもあります。

実際には上の画像のような「証明書のステータス(Alarm alarm.CertificateStatusAlarm)」のほかに「有効期限が切れた、または期限が近付いている証明書があります。(There are certificate that expired or about to expire)」などが表示されます。

これはVMwareのKBにも公開されていますが、「BACKUP_STORE」とよばれる、証明書のバックアップの日付に対して誤ってエラーが出力される問題です。

CertificateStatusAlarm - There are certificate that expired or about to expire/Certificate Status Change Alarm Triggered on VMware vCenter Server

実際の証明書群をコマンドラインで確認する

vSphere 6.7以降ではGUI上でわかりやすく証明書の情報が表示されるようになりました。
ただ、それでも全量ちゃんと確認したい場合は辿れない場合があります。

コマンドラインで証明書を確認してみます。

  1. vCenter、外部PSCにSSHでログインします

    shellモードを使用するため、必要に応じて「shell」コマンドを実行してshellモードに入ります。

    vCenterと外部PSCはそれぞれ証明書を保持しているため、外部PSC環境ではvCenterと外部PSCどちらに対しても実行します。

  2. ストアの一覧を取得します

    /usr/lib/vmware-vmafd/bin/vecs-cli store list
    

    これで保有しているストアの一覧が表示されますので、それぞれのストアにある証明書を確認します。

  3. 各ストア内にある証明書の一覧を取得します

    /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store ストア名 --text | less
    

    例)

    /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store TRUSTED_ROOTS --text | less
    

これで各ストア内の証明書の一覧が確認できます。

ちなみにBACKUP_STORE内にある証明書の一覧を取得する場合は以下のコマンドになります。

/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store BACKUP_STORE --text | egrep "Alias|Not After"

なお、BACKUP_STORE内の証明書は文字通りバックアップなので、必要なければ削除しても動作に影響はありません。

コメント