ESXi の root パスワードの変更。
正攻法だとコンソールなり ssh なりで乗り込み、passwd
で変更が多そう。
強者だと PowerCLI のSet-VMHostAccount
辺り?
これを Web UI から変更を行うお話。
Managed Object Browser
と言ってもお馴染みの vSphere Client / vSphere Web Client ではなく、
Managed Object Browser(MOB) からの操作となる。
MOB が何たるかは公式 Doc 。
vCenter の一連の管理オブジェクト構造を UI を化しているもので、
そのオブジェクトに応じたメソッドを実行することもできる。
vSphere API (*vmomi) 系の開発やっていると無くてはならないもの。
(PowerCLI 系の開発でも見る?)
Managed ESXi Host from vCenter
と言うわけで MOB から変更ができるので試す。
vCenter TOP の↓のリンクから。
URL 直で開く場合はhttps://[vCenter FQDN or IP]/mob
。
URL を開くとベーシック認証にて ID/Pass が求められるので、
然るべき vCenter のアカウントでログイン。
ひとまずはadministrator@vsphere.local
で。
細かい話は割愛。
以下の NAME の項目の VALUE がリンクになっているので、
それを辿っていき対象のホストを開く。
[content] → [rootFolder] → [childEntity] → [hostFolder] → [childEntity] → [host] → [configManager] → [accountManager]
childEntity
やhost
はデータセンタやクラスタ、ホストでリンクが分かれているので、変更対象のホストがいるオブジェクトを選んで辿っていく。
accountManagerを開くと Properties は無く、Methods のみになっているので、
Methods の中からUpdateUser
を開くと別窓が立ち上がる。
VALUE がテキストボックスで、XML っぽいタグが入っている。
ここの値を書き換えて実行することでパスワードを変更できる。
root
のパスワードをvhogehoge
にする場合だと以下。
<user> <id>root</id> <!-- optional --> <password>vhogehoge</password> <!-- optional --> <description></description> </user>
これで最後にInvoke Method
をクリックすれば変更が反映される。
Standalone ESXi Host
スタンドアロン ESXi でも基本的には同じ方法でいけるが、
ESXi の場合、デフォルトでは MOB が有効化されていない。
ESXi の詳細設定でConfig.HostAgent.plugins.solo.enableMob
をenable
にしておく必要がある。
https://kb.vmware.com/s/article/2108405
ベーシック認証は ESXi のアカウントで。
ホストが 1 台しか無い分、パスはシンプルで
[content] → [accountManager] → [UpdateUser] にて
開いたウインドウで VALUE 設定。
同じようにInvoke Method
をクリックすればいける。
お気づきでしょうか?
vCenter 下の ESXi の root パスワードを変更する際、
現在の root パスワードを求められないことを…
なので、vCenter 下にはいるけど root パスワードは忘れた…
とかでも再インストールとかすることなく、容赦なくリセットできる。