Azure VM 上でローカルの Linux パスワードをリセットする方法
この記事では、ローカル Linux Virtual Machine (VM) パスワードをリセットする 3 つの方法について説明します。 ユーザー アカウントが期限切れになっている場合や、新しいアカウントを作成したい場合は、以下の方法で新しいローカル管理者アカウントを作成し、VM へのアクセスを再取得することができます。
Azure Linux エージェントを使用してパスワードをリセットする
OS ディスクを別の VM にアタッチせずにパスワードをリセットできます。 この方法では、影響を受ける VM に Azure Linux エージェントをインストールする必要があります。
影響を受ける VM で Azure Linux エージェント (waagent) サービスが実行されており、Azure portalの準備完了状態であることを確認します。
環境変数を設定し、Azure CLI または Azure Cloud Shell を使用してパスワードをリセットします。
AZ_RESOURCE_GROUP="YourResourceGroupName" AZ_VM_NAME="VMname" AZ_ADMIN_USER="adminName" AZ_MSADMIN_PASS="newPassword" az vm user update -u $AZ_ADMIN_USER -p $AZ_MSADMIN_PASS -g $AZ_RESOURCE_GROUP -n $AZ_VM_NAME
VM にアクセスしてみます。
SSH キーを更新するには、「Azure CLI で VMAccess 拡張機能を使用して、管理ユーザーの SSH を管理する」を参照してください。
Azure portal のパスワードのリセット機能を使用して、パスワードまたは SSH キーをリセットすることもできます。
詳細については、「 Linux 用 vmaccess 拡張機能」を参照してください。
シングル ユーザー モードでシリアル コンソールを使用してパスワードをリセットする
シリアル コンソールを使用して、VM アクセスのadmin user
シングル ユーザー モードを使用してまたはroot
アカウントをリセットできます。
シングル ユーザー モードプロセスに従って、パスワードをリセットまたは追加します。
SSH とパスワード認証を使用してサーバーにログインしようとすると、OpenSSH サーバーでパスワード認証が有効になっていることを確認します。
次のコマンドを実行して、
PasswordAuthentitcation
値が に/etc/ssh/sshd_config
yes
no
設定されているかどうかを確認します。egrep "^PasswordAuthentication" /etc/ssh/sshd_config
値が
PasswordAuthentication
にno
設定されている場合は、 などのvi
nano
テキスト エディターを使用して、値を にyes
変更します。
コマンドを実行して、 または
root
アカウントのadmin user
新しいパスワードをpasswd
作成します。passwd <admin_user>
次のコマンドを
enforcing
実行して、/etc/sysconfig/selinux
モードであるかどうかをSElinux
確認します。cat /etc/sysconfig/selinux
がモードの
enforcing
場合SElinux
は、コマンドでpasswd
行われたファイルの変更がSElinux
許可されていることを確認します。 パスワードを変更した後、次のコマンドを実行してファイル システムにラベルを付け直して、変更の読み込みを容易にすることができます。touch /.autorelabel
次のコマンドを実行して VM を再起動します。
/usr/sbin/reboot -f
VM にアクセスしてみます。
修復 VM を使用してパスワードをリセットする
この方法は、サポートされている Linux ディストリビューションとバージョンを使用してテストされています。
注:
Azure ネットワーク仮想アプライアンスに影響する問題が発生している場合、この方法は状況には適用されません。 代わりに、ネットワーク仮想アプライアンスのベンダーに連絡して、パスワードを安全にリセットする方法について説明する必要があります。
vm 修復コマンドを実行して、影響を受ける VM の OS ディスクのコピーがアタッチされている修復 VM を作成できます。 次に、 chroot 環境を使用して、修復 VM に OS ファイル システムのコピーをマウントします。
注:
または、Azure portalを使用して手動でレスキュー VM を作成します。 詳細については、「Azure portalを使用して OS ディスクを復旧 VM に接続して Linux VM のトラブルシューティングを行う」を参照してください。
次の az vm repair create コマンドを実行して、OS ディスクのコピーを作成します。 その後、ディスクは自動的に復旧 VM に接続されます。
AZ_RESOURCE_GROUP="YourResourceGroupName" AZ_VM_NAME="VMname" AZ_ADMIN_USER="userName" AZ_MSADMIN_PASS="newPassword" az vm repair create -g $AZ_RESOURCE_GROUP -n $AZ_VM_NAME --repair-username $AZ_ADMIN_USER --repair-password "$AZ_MSADMIN_PASS" --verbose
修復 VM にログインし、 chroot 環境のトラブルシューティングを行います。
SSH とパスワード認証を使用してサーバーにログインしようとすると、OpenSSH サーバーでパスワード認証が有効になっていることを確認します。
次のコマンドを実行して、
PasswordAuthentitcation
値が に/etc/ssh/sshd_config
yes
no
設定されているかどうかを確認します。egrep "^PasswordAuthentication" /etc/ssh/sshd_config
値が
PasswordAuthentication
にno
設定されている場合は、 などのvi
nano
テキスト エディターを使用して、値を にyes
変更します。
コマンドを実行して、 または
root
アカウントのadmin user
新しいパスワードをpasswd
作成します。passwd <admin_user>
次のコマンドを
enforcing
実行して、/etc/sysconfig/selinux
モードであるかどうかをSElinux
確認します。cat /etc/sysconfig/selinux
がモードの
enforcing
場合SElinux
は、コマンドでpasswd
行われたファイルの変更がSElinux
許可されていることを確認します。 パスワードを変更した後、次のコマンドを実行してファイル システムにラベルを付け直して、変更の読み込みを容易にすることができます。touch /.autorelabel
chroot 環境を終了します。
次のコマンドを使用して OS ディスクをスワップして、OS ディスクを影響を受ける VM に再マウントします。
az vm repair restore -g $AZ_RESOURCE_GROUP -n $AZ_VM_NAME --verbose
VM にアクセスしてみます。
次の手順
お問い合わせはこちらから
質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示