Linux VMをAzureで1年以上実行しています。アカウントのパスワードを忘れました。ただし、sshキーがあるため、vmにsshできます。注意してください。 rootアカウントにはsshキーがないため、sshでrootにアクセスできません。また、sshを実行すると、パスワードの入力を求められるため、Sudoを実行できません。
具体的には、Azure cliを使用してみました http://Azure.Microsoft.com/blog/2014/08/25/using-vmaccess-extension-to-reset-login-credentials-for-linux-vm/ 。私のwaagentバージョンはWALinuxAgent-1.3.2であり、最小必要量は2+であるため、これは機能しません。
このvmでrootパスワードをリセットできる他の方法はありますか?
Azureについてはよくわかりませんが、管理者アクセスでパスワードを変更できると思います。 Linuxの場合:
Sudo passwd root
ウィンドウの場合:
(管理者cmdで)
net users root *
この特定の問題は、おそらく(うまくいけば)今では解決されています。リモートアクセスアカウントにログインできない場合は、PowerShellではなくAzureCLIをお勧めします。手順は実際に機能し、はるかに簡単です。
注:この例は、新しいResourceManagerタイプのVMでテストされています。
AzureCLIがインストールされていることを確認します。ターミナルを開く
$ Azure login
注:指示に従って、一時アクセスコードをブラウザに入力してください
アクティブなサブスクリプションを確認します。
$ Azure account list
まだの場合は、必要なサブスクリプションを設定します。サブスクリプションリソースにアクセスして、AzureポータルでそのIDを確認できます
$ Azure account set <SubName or SubId>
リソースマネージャーモードを設定する
$ Azure config mode arm
パスワードを再設定する。このコマンドは、必要な拡張機能もインストールします。時間がかかりますので、お飲み物をどうぞ!
$ Azure vm reset-access -g <res-group-name> -n <vm-name> -u <username> -p <new-pwd>
ニックの回答がAzureCLI2.0用に更新されました。
ログインする:
az login
アカウントの設定:
az account set -s <accountname>
パスワードを再設定する:
az vm user update --resource-group <res-group-name> --name <vmname> --username <username> --password <newpassword>
Azure固有の経験はありませんが、コンソールアクセスを取得できる場合は、VMをシングルユーザーモードで起動し、そこからパスワードをリセットできます。
特定のシナリオで役立つ情報は見つかりませんでしたが、回避策は、ディスクをダウンロードし、このディスクを使用してローカルハイパーVにVMを作成することです。そうすれば、コンソールにアクセスでき、パスワードをリセットするためにリカバリモードに入ることができます。次に、vhdをアップロードして戻し、VMを再デプロイします。