Si lors de la connexion à votre NSX-T Manager préféré en utilisant le compte admin , vous obtenez le message d’erreur suivant : Your Login attempt was not successful, The username/password combination is incorrect or the account specified has been locked.

Ce n’est potentiellement pas une erreur dans votre gestionnaire de mot de passe préféré… mais simplement que votre compte a expiré!

En effet, depuis la version 2.5 de NSX-T manager, les comptes locaux (root / admin / audit) expire au bout de 90 jours.

Vous êtes informé via des « popup » directement dans l’interface

ou encore dans la partie Alarms

mais pour cela, il faut d’être connecté avant… ou avoir une connexion via une source externe (LDAP, vIDM, WOA)….

De plus, vous avez bien sécurisé la solution et désactivé le SSH sur vos NSX-T manager, il vous reste juste une méthode pour changer le mot de passe, la console de votre NSX-T Manager, et pour complexifier la chose. Par défaut, le mot de passe est de minimum 12 caractères avec une majuscule, une minuscule, un chiffre et un caractère spécial (type #[email protected]…). et de plus  la console est en qwerty… . Il faut surtout ne pas réutiliser un mot de passe déjà utilisé avant (retour en arrière sur les 5 derniers mots de passe)

Utilisation de Set-VMKeyStrokes

Pour cela, nous avons l’excellent Set-VMKeyStrokes de notre ami William Lam. Cela permet de simuler un clavier directement dans une VM (il faut disposer de vSphere 6.5 minimum !). C’est une cmdlet très utile… par exemple pour automatiser l’installation d’outil non prévu pour cela (qui attends une ligne de commande…) ca sera l’occasion d’autres articles sur le sujet !

Il faut au préalable se connecter au vCenter en utilisant Connect-VIServer

Il suffit de charger le fichier VMKeyStrokes.ps1 disponible sur Github.

. .\VMKeyStrokes.ps1

Pour mon cas, j’ai stocké les mots de passes dans les variables $mysuperpassword (et $mynewsuperpassword attention ce n’est pas possible d’avoir le même mot de passe et il doit respecter la même complexité)

On envoie maintenant a la VM le login via le paramètre StringInput

Set-VMKeystrokes -VM NSXT-MGR1 -StringInput "admin" -ReturnCarriage $true

on utilise -ReturnCarriage $true pour envoyer un retour chariot (Entré) après la chaine de caractères.

On répète l’action avec notre mot de passe

Set-VMKeystrokes -VM BDX-SR-NSXT-MGR1 -StringInput $mysuperpassword -ReturnCarriage $true

on recommence car il faut retaper le mot de passe avant de changer le mot de passe (il propose automatiquement le changement du mot de passe )

Set-VMKeystrokes -VM BDX-SR-NSXT-MGR1 -StringInput $mysuperpassword -ReturnCarriage $true

Puis on met notre nouveau mot de passe (2 fois !)

Set-VMKeystrokes -VM BDX-SR-NSXT-MGR1 -StringInput $mynewsuperpassword -ReturnCarriage $true

Set-VMKeystrokes -VM BDX-SR-NSXT-MGR1 -StringInput $mynewsuperpassword -ReturnCarriage $true

C’est validé, le mot de passe est bien changé !

on peux vérifier l’expiration avec la commande get user admin password-expiration

Il reste à modifier le compte root !

Vous pouvez pour cela, utiliser directement la commande set user root password

Allons plus loin…

Pour monitorer (et aussi potentiellement changer…), vous pouvez utiliser l’excellent module psNSXT (on aura l’occasion d’en reparler !).

(Invoke-NSXTRestMethod "api/v1/node/users").results

Si vous ne disposez pas de VCF (VMware Cloud Foundation) qui permet la rotation de l’ensemble des mots de passe, et bon pour éviter d’avoir à changer les mots de passe tous les 90 jours… vous pouvez utiliser en console/SSH :

set user admin password-expiration 9999

il faut réaliser la même opération avec le compte audit & root.

Maintenant que j’ai récupéré la main sur mon NSX-T Manager, je vais pouvoir lancer la mise à jour en version 3.1 ! on verra une prochaine fois comment aussi mettre en place l’interconnexion via LDAP du NSX-T Manager afin de pouvoir utiliser directement les comptes AD (sans vIDM ou WOA)

Bonnes fêtes de fin d’année !

 

Alexis La Goutte

Rédigé par

Alexis La Goutte

Alexis La Goutte est depuis 6 ans consultant Réseau & Sécurité chez Cheops Technology. Il intervient chez des ETI de l’ouest et quelques grands comptes nationaux. Spécialisé dans le réseau, et plus particulièrement sur les produits Aruba, et dans la virtualisation & sécurisation du réseau VMware NSX. Alexis est certifié Aruba Certified Mobility eXpert (ACMX) et Aruba Certified ClearPass Professional (ACCP) également membre des programmes Aruba Ambassador Partner et MVP Airheads depuis 2017.
Lors qu’il lui reste du temps, il est Core dev pour Wireshark (contributeur au dissector WiFi, TLS, QUIC…) depuis 2011. Il contribue aussi au module PowerNSX qui permet l’automatisation NSX via PowerShell. il y a aussi crée en 2018, PowerAruba qui regroupe différents modules concernant l’automatisation (utilisation des API REST) des produits Aruba/HPE (PowerArubSW), pour ArubaCX (PowerArubaCX) et enfin pour ClearPass (PowerArubaCP).
Depuis 2020, Alexis est devenu vExpert, et reconnu aussi dans la catégorie vExpert NSX.