こんにちは!谷口です!
vCenter Server Appliance(vCSA)を運用していると、普段あまり意識しないものの、定期的に確認しておきたいのが証明書の有効期限です。
とくに vCenter は基盤として使われることが多いため、証明書の期限切れが起きると、管理画面や内部サービスに思わぬ影響が出ることがあります。
今回は、vCenter のソリューションユーザ証明書を実際に更新してみました。
手順そのものは難しそうに見えますが、流れを押さえれば対応できます。
本記事では、証明書の概要から更新手順、更新後の確認方法までをまとめています。
「証明書の更新をやってみたいけど、どこから手を付ければいいかわからない」という方の参考になれば幸いです。
本記事でわかること
- vCenter ソリューションユーザ証明書 の基本的な役割
- 証明書の期限が切れた場合の影響
- vSphere Certificate Manager を使ったvCenter ソリューションユーザ証明書 の更新手順
- 更新後に有効期限がどう変わるか
vCenter証明書(ソリューションユーザ証明書)の概要
ソリューションユーザ証明書は、vCenter 内部のサービス同士が認証するために使われる証明書です。
たとえば、vpxd や vsphere-webclient などのコンポーネントが、この証明書を利用します。
普段の運用ではあまり目にしませんが、vCenter の内部通信を支える重要な証明書のひとつです。
証明書の有効期限が切れた場合の影響
ソリューションユーザ証明書 の有効期限が切れた場合、主に次のような影響が考えられます。
- vCenter の内部認証に失敗する
- 証明書期限切れの警告が表示される
- 一部の vCenter サービスが正常に動作しなくなる
- 管理画面や連携機能に影響が出る
証明書切れは、見た目の警告だけで済むとは限りません。
環境によっては vCenter の安定稼働に関わるため、期限管理は重要です。
デフォルトの有効期限と手動更新後の延長期限
vCSA 8.0 環境での証明書の有効期限は以下の通りです。
- デフォルト:10年(3650日)
- 手動更新後:2年(730日)
証明書の有効期限は定期的に確認し、期限切れ直前ではなく、余裕を持って更新することをお勧めします。
vCenter証明書(ソリューションユーザ証明書)の更新方法
前提条件
- vCenter に SSH でログインできること
- 証明書更新は管理インターフェースに影響するため、メンテナンス時間帯に実施することをお勧めします
- 本記事は vCSA 8.0 で検証しています。画面表示や文言はバージョンによって異なる場合があります
更新手順
- vCenter に SSH 接続でログイン
vCenter Server Appliance にSSH接続し、rootユーザでログインします。 - PNIDを確認
以下のコマンドを実行し、PNIDを確認します。# /usr/lib/vmware-vmafd/bin/vmafd-cli get-pnid --server-name localhost
ここで表示された PNID は、この後の入力で使用します。 - vSphere Certificate Manager を起動
以下のコマンドを実行して、vSphere Certificate Manager を起動します。# /usr/lib/vmware-vmca/bin/certificate-manager
vSphere Certificate Manager が起動すると、証明書管理メニューが表示されます。 - ソリューションユーザ証明書 の更新
ソリューションユーザ証明書を更新するため、Optionに「6」 を入力します。
- ソリューションユーザ証明書のすべての証明書ストアを更新するかの確認が表示されるため、「Y」を入力して実行します。

- 認証情報を入力
ログイン情報が求められるため、vCenter Single Sign-on の Administrator権限 の認証情報を入力します。
・username:administrator@vsphere.local を入力します。
・password:administrator@vsphere.local のパスワードを入力します。
- (2回目以降の場合のみ表示)
前回の証明書発行時に入力した情報を継続利用するか、変更するかを確認するメッセージが表示されます。前回の設定をそのまま使う場合は N、前回の設定を使わず再入力する場合は Y を入力します。
・N:前回の設定を継続利用する
・Y:証明書情報を再入力する
- (初回もしくは手順7で Y を入力した場合のみ実施)
証明書発行に必要な情報を入力します。
| 項目 | 入力値 | デフォルト |
| Country | 「JP」を入力します。 | US |
| Name | 手順2で確認したPNIDを入力します。 | CA |
| Organization | VMware vCenter Server Applianceを使用する組織名を入力します。 | VMware |
| OrgUnit | VMware vCenter Server Applianceを使用する部署名を入力します。 | VMware Engineering |
| State | VMware vCenter Server Applianceを使用する組織の所在地情報(都道府県名)を入力します。 | California |
| Locality | VMware vCenter Server Applianceを使用する組織の所在地情報(市区町村名)を入力します。 | Palo Alto |
| IPAddress | VMware vCenter Server ApplianceのIPアドレスを入力することができます。本項目はオプション項目です。 | - |
| 任意のメールアドレスを入力します。本項目はオプション項目です。 | email@acme.com | |
| Hostname | 手順2で確認したPNIDを入力します。 | - |
| VMCA Name | 手順2で確認したPNIDを入力します。 | - |
- ソリューションユーザ証明書を再生成
証明書更新を行うために「Y」を入力して実行します。
Y を入力すると、VMCA によりソリューションユーザ証明書の再生成処理が開始されます。
- ソリューションユーザ証明書の再生成完了
Statusが100%になり「All tasks completed successfully」と出力されることを確認します。
- vCSA管理インターフェース再起動
VMware vCenter Server Appliance 管理インターフェースを再起動します。# systemctl restart cap-lighttpd.service - 有効期限の確認
以下のコマンドを実行し、証明書の有効期限を確認します。(1行で入力してください。)# for i in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list); do echo STORE $i; /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $i --text | egrep "Alias|Not After"; done
表示された実行結果から、証明書の有効期限が更新されていることを確認してください。
確認対象は以下です。
・STORE machine
・STORE vsphere-webclient
・STORE vpxd
・STORE vpxd-extensionNot Afterの日付が更新されていれば、ソリューションユーザ証明書の更新は成功です。
まとめ
今回は、vCenter のソリューションユーザ証明書を vSphere Certificate Manager で更新する手順を紹介しました。ポイントを振り返ると、以下の通りです。
- ソリューションユーザ証明書は、vCenter の内部サービス認証に使われる重要な証明書
- 期限切れになると、vCenter の動作に影響が出る可能性がある
- vCSA 8.0 では、デフォルトの有効期限は約10年
- 手動更新すると、更新日からさらに約2年延長される
- 更新後は
vecs-cliでNot Afterを確認しておくと安心
vCenter は基盤として使われることが多いので、証明書の期限管理は定期的に実施するのがおすすめです。
vCenter Server は VMware, Inc.(a Broadcom company)の商標であり、この記事は VMware, Inc. または Broadcom によって承認されたり、いずれとも提携したりするものではありません。


コメント