Microsoft Azure Cloud: resettare la password di una Virtual Machine Linux da linea di comando

Se ci si dimentica le credenziali di accesso di una Virtual Machine Linux su Azure, la piattaforma cloud di Microsoft, è un bel problema. Dal portale di amministrazione di Azure infatti, non è al momento disponibile la funzionalità di reset della password della macchina, ma c’è scritto che lo sarà “presto”. Per ovviare al problema e poter riavere l’accesso alla VM occorre utilizzare i comandi per la gestione delle risorse relativi alla modalità con cui essa era stata creata: Azure Resource Manager (ARM, ovvero il “portale nuovo”) oppure Azure Service Management, cioè la modalità Classic o “portale vecchio”.

La prima cosa da fare quindi è scaricare l’installer della Command Line Interface Azure e seguire la procedura di installazione.

Una volta fatto, occorre collegarsi alla sottoscrizione Azure tramite il proprio account Microsoft, in caso di sottoscrizione personale, o il proprio account Azure aziendale. Per farlo bisogna aprire il prompt dei comandi e eseguire il comando:

azure login

Il risultato dell’invocazione di questo comando è una stringa che contiene un url e un codice necessario per l’autenticazione, come illustrato nella figura seguente:
CLI prompt azure login commando

A questo punto occorre aprire il browser all’indirizzo fornito, dove verrà mostrata una pagina con un apposito campo, in alto a destra, per l’inserimento del codice generato dal comando “azure login”. La pagina è quella mostrata nella figura seguente:
Portale inserimento codice autenticazione Azure

Una volta inserito il codice si otterrà la conferma dell’avvenuta abilitazione all’accesso da parte del dispositivo in uso:
Codice autenticazione Azure inserito

Nel prompt dei comandi si vedrà quindi la conferma che il login all’account Azure è andato a buon fine (“login command OK”) e saranno elencate le sottoscrizioni attive per l’utente, con anche l’indicazione di quale viene settata come subscription di default:

Azure CLI azure login command OK

A questo punto per modificare le credenziali di accesso occorre eseguire il comando azure vm reset-access con le seguenti opzioni:

  • -g NOME_GRUPPO_RISORSE
  • -n NOME_VM
  • -u NOME_UTENTE
  • -p NUOVA_PASSWD

Quindi:
azure vm reset-access -g NOME_GRUPPO_RISORSE -n NOME_VM -u NOME_UTENTE -p NUOVA_PASSWD

Se tutto va a buon fine il comando ritorna esito OK e la password è stata cambiata:
Azure CLI VM reset access command OK

In alcuni casi il comando restituisce un errore di timeout. Per evitarlo è stato sufficiente restartare la VM ed eseguire il comando “azure vm reset-access” subito dopo il riavvio.

EDIT 19/07/2016: La funzionalità di reset password per le Virtual Machine Linux è ora disponibile anche dal portale web di Azure (non so di preciso da quando, ma oggi l’ho vista).

Leave a Reply

Your email address will not be published. Required fields are marked *