Jak zresetować lokalne hasło systemu Linux na maszynach wirtualnych platformy Azure
Dotyczy: ✔️ maszyny wirtualne z systemem Linux
Ten artykuł zawiera trzy metody resetowania lokalnych haseł maszyn wirtualnych z systemem Linux. Jeśli konto użytkownika wygasło lub chcesz utworzyć nowe konto, możesz użyć następujących metod, aby utworzyć nowe konto administratora lokalnego i odzyskać dostęp do maszyny wirtualnej.
Resetowanie hasła przy użyciu agenta systemu Linux platformy Azure
Hasło można zresetować bez dołączania dysku systemu operacyjnego do innej maszyny wirtualnej. Ta metoda wymaga zainstalowania agenta systemu Linux platformy Azure na maszynie wirtualnej, której dotyczy problem.
Upewnij się, że usługa Azure Linux Agent (waagent) jest uruchomiona na maszynie wirtualnej, której dotyczy problem, i jest w stanie gotowości w witrynie Azure Portal.
Skonfiguruj zmienne środowiskowe i użyj interfejsu wiersza polecenia platformy Azure lub usługi Azure Cloud Shell, aby zresetować hasło:
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
Spróbuj uzyskać dostęp do maszyny wirtualnej.
Aby zaktualizować klucz SSH, zobacz Zarządzanie użytkownikami administracyjnymi, SSH przy użyciu rozszerzenia VMAccess za pomocą interfejsu wiersza polecenia platformy Azure.
Możesz również zresetować hasło lub klucz SSH przy użyciu funkcji Resetowanie hasła w witrynie Azure Portal.
Aby uzyskać więcej informacji, zobacz rozszerzenie vmaccess dla systemu Linux.
Resetowanie hasła przy użyciu konsoli szeregowej z trybem pojedynczego użytkownika
Za pomocą konsoli szeregowej można zresetować admin user
konto lub root
za pomocą trybu pojedynczego użytkownika na potrzeby dostępu do maszyny wirtualnej.
Postępuj zgodnie z procesem trybu pojedynczego użytkownika, aby zresetować lub dodać hasło.
Upewnij się, że na serwerze OpenSSH jest włączone uwierzytelnianie haseł, jeśli spróbujesz zalogować się na serwerze przy użyciu protokołu SSH i uwierzytelniania hasłem.
Sprawdź, czy wartość jest ustawiona
PasswordAuthentitcation
nayes
wartość , czyno
in/etc/ssh/sshd_config
, uruchamiając następujące polecenie:egrep "^PasswordAuthentication" /etc/ssh/sshd_config
Jeśli wartość jest ustawiona
PasswordAuthentication
nano
, użyj edytora tekstów, takiego jakvi
lubnano
, aby zmienić wartość nayes
.
Utwórz nowe hasło dla konta
admin user
lubroot
, uruchamiającpasswd
polecenie :passwd <admin_user>
Sprawdź, czy
SElinux
jest wenforcing
trybie,/etc/sysconfig/selinux
uruchamiając następujące polecenie:cat /etc/sysconfig/selinux
Jeśli
SElinux
jest wenforcing
trybie, upewnij się, żeSElinux
zezwala na zmiany w pliku wprowadzone zapasswd
pomocą polecenia . Po zmianie hasła można uruchomić następujące polecenie, aby ponownie opracować etykietę systemu plików, aby ułatwić ładowanie zmian.touch /.autorelabel
Uruchom ponownie maszynę wirtualną, uruchamiając następujące polecenie:
/usr/sbin/reboot -f
Spróbuj uzyskać dostęp do maszyny wirtualnej.
Resetowanie hasła przy użyciu naprawy maszyny wirtualnej
Ta metoda została przetestowana przy użyciu obsługiwanych dystrybucji i wersji systemu Linux.
Uwaga
Jeśli występują problemy wpływające na wirtualne urządzenie sieciowe platformy Azure, ta metoda nie ma zastosowania do Twojej sytuacji. Zamiast tego należy skontaktować się z dostawcą wirtualnego urządzenia sieciowego, aby uzyskać instrukcje dotyczące bezpiecznego resetowania hasła.
Możesz uruchomić polecenia naprawy maszyny wirtualnej, aby utworzyć maszynę wirtualną naprawy , która ma kopię dołączonego dysku systemu operacyjnego maszyny wirtualnej, której dotyczy problem. Następnie zainstaluj kopię systemów plików systemu operacyjnego na maszynie wirtualnej naprawy za pośrednictwem środowiska chroot.
Uwaga
Alternatywnie utwórz maszynę wirtualną ratunkową ręcznie przy użyciu witryny Azure Portal. Aby uzyskać więcej informacji, zobacz Rozwiązywanie problemów z maszyną wirtualną z systemem Linux przez dołączenie dysku systemu operacyjnego do maszyny wirtualnej odzyskiwania przy użyciu witryny Azure Portal.
Uruchom następujące polecenia az vm repair create , aby utworzyć kopię dysku systemu operacyjnego. Następnie dysk jest automatycznie dołączony do maszyny wirtualnej odzyskiwania.
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
Zaloguj się do maszyny wirtualnej naprawy i rozwiąż problemy ze środowiskiem chroot.
Upewnij się, że na serwerze OpenSSH jest włączone uwierzytelnianie haseł, jeśli spróbujesz zalogować się na serwerze przy użyciu protokołu SSH i uwierzytelniania hasłem.
Sprawdź, czy wartość jest ustawiona
PasswordAuthentitcation
nayes
wartość , czyno
in/etc/ssh/sshd_config
, uruchamiając następujące polecenie:egrep "^PasswordAuthentication" /etc/ssh/sshd_config
Jeśli wartość jest ustawiona
PasswordAuthentication
nano
, użyj edytora tekstów, takiego jakvi
lubnano
, aby zmienić wartość nayes
.
Utwórz nowe hasło dla konta
admin user
lubroot
, uruchamiającpasswd
polecenie :passwd <admin_user>
Sprawdź, czy
SElinux
jest wenforcing
trybie,/etc/sysconfig/selinux
uruchamiając następujące polecenie:cat /etc/sysconfig/selinux
Jeśli
SElinux
jest wenforcing
trybie, upewnij się, żeSElinux
zezwala na zmiany w pliku wprowadzone zapasswd
pomocą polecenia . Po zmianie hasła można uruchomić następujące polecenie, aby ponownie opracować etykietę systemu plików, aby ułatwić ładowanie zmian.touch /.autorelabel
Zamknij środowisko chroot.
Ponownie odinstaluj dysk systemu operacyjnego na maszynie wirtualnej, której dotyczy problem, zamieniając dysk systemu operacyjnego za pomocą następującego polecenia:
az vm repair restore -g $AZ_RESOURCE_GROUP -n $AZ_VM_NAME --verbose
Spróbuj uzyskać dostęp do maszyny wirtualnej.
Następne kroki
Skontaktuj się z nami, aby uzyskać pomoc
Jeśli masz pytania lub potrzebujesz pomocy, utwórz wniosek o pomoc techniczną lub zadaj pomoc techniczną społeczności platformy Azure. Możesz również przesłać opinię o produkcie do społeczności opinii na temat platformy Azure.