vCLI で ESXCLI コマンドを実行すると、サムプリントのエラーが発生する
search cancel

vCLI で ESXCLI コマンドを実行すると、サムプリントのエラーが発生する

book

Article ID: 327778

calendar_today

Updated On:

Products

VMware vCenter Server VMware vSphere ESXi

Issue/Introduction

 


    Symptoms:
    サポートされている Windows または Linux 上に vCLI をインストールしているにもかかわらず、その vCLI で ESXi ホストまたは vCenter Server システムに対して ESXCLI コマンドを実行すると、次のようなエラーが表示されます:

    Connect to w2-server42.mydomain.com failed. Server SHA-1 thumbprint 5D:01:06:63:55:9D:DF:FE:38:81:6E:2C:FA:71:BC:63:82:C5:16:51 <not trusted>

    このエラーは、vSphere 6.0 の ESXCLI が以前の vSphere バージョンよりもセキュリティが強固になっており、ESXCLI コマンドを実行するシステムと送信先の vCenter Server システムまたは ESXi ホスト間とで信頼関係が結ばれていないために発生します。
    免責事項:これは英文の記事「Thumbprint error when running ESXCLI command as a vCLI command (2108416)」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

    Environment

    VMware vCenter Server 8.0.x
    VMware vSphere ESXi 7.x
    VMware vSphere ESXi 8.0.x
    VMware vCenter Server 7.0.x

    Resolution

    vCLI コマンドを実行するクライアントマシンと --server オプションで指定するサーバ (ESXi ホストまたは vCenter Server) 間の信頼関係を結ぶには、次のいずれかの方法を使用します。

    vCenter Server 証明書をダウンロードおよびインストールする

    vCenter Server を接続先とし、ESXi ホストは --vihost オプションを使用して vCenter Server 経由で指定する場合は、Web ブラウザでを使用して vCenter Server の証明書をダウンロードし、ESXCLI を実行するマシンにインストールしてください。詳細は、How to download and install vCenter Server root certificates to avoid Web Browser certificate warnings (2108294) に記載の手順を参照してください。

    --cacertsfile オプションを使用する

    vCenter Server 証明書をインストールする代わりに、実行するコマンドで --cacertsfile オプションまたは VI_CACERTFILE 変数を使用して証明書を指定することができます。ESXi ホストに直接接続する場合にもこのオプションを使用できます。

    --thumbprint オプションを使用する

    実行するコマンドで --thumbprint オプション (VI_THUMBPRINT 変数) を使用して接続先サーバ (ESXi ホストまたは vCenter Server) にサムプリントを指定することができます。

    コマンドを実行すると、ESXCLI は最初に証明書ファイルが利用できるかどうかを確認し利用できない場合接続先サーバのサムプリントが利用できるかどうかを確認するようになります。これも利用できない場合は、次のエラーが表示されます:

    Connect to w2-server42.mydomain.com failed. Server SHA-1 thumbprint 5D:01:06:63:55:9D:DF:FE:38:81:6E:2C:FA:71:BC:63:82:C5:16:51 <not trusted>

    信頼関係を確立するには、このエラーメッセージ内に表示されたサムプリントを --thumbprint オプションで指定するか、VI_THUMBPRINT 変数にこのサムプリントを追加してコマンドを再実行してください。例えば、先のエラーメッセージが表示された ESXi ホストの場合、次のようにサムプリントを指定してコマンドを再実行します:

    esxcli --server myESXi --username user1 --password 'my_password' --thumbprint 5D:01:06:63:55:9D:DF:FE:38:81:6E:2C:FA:71:BC:63:82:C5:16:51 storage nfs list

    認証情報ストアを使用する

    vCLI には認証情報ストアがあります。この認証情報ストアは VMware vSphere CLI インストールディレクトリの /Perl/apps/general にある credstore-admin ユーティリティで管理できます。

    注意: 認証情報ストアの更新には 2 段階の作業が必要です。次のように、まず第 1 段階として接続先サーバのユーザーおよびパスワードを登録し、第 2 段階として接続先サーバのサムプリントを追加します:
    1. 次のコマンドで、接続先の ESXi ホストに対するユーザーおよびパスワードをローカルの認証情報ストアに登録します。

      credstore_admin.pl add --server <ESXi ホスト名または IP> --username <ユーザー名> --password <パスワード>
       
    2. 次のコマンドで、先ほどホストに接続しようとした際に表示されたエラーメッセージに記載されていたサムプリントを追加します:

      credstore_admin.pl add --server <接続先サーバ> --thumbprint <サムプリント>

      これで、認証情報ストアファイルがデフォルトの場所に配置されている場合、手順 1 で指定したユーザーは接続先サーバに対して認証を必要とすることなく vCLI コマンドを実行できるようになります。
       
    3. (オプション) 認証情報ストアがデフォルトではない場所に配置されている場合、コマンドで --credstore オプションを使用して認証情報ストアの場所を指定する必要があります。


    Additional Information