Usermanagement
Password Management
Unlock Useraccount
allssh sudo faillock --user admin --reset
Find Source of Prism Account Lockout
Repeated failed Prism logins (e.g. a misconfigured 3rd-party integration) lock the local "admin" account. PE shows "Account locked due to too many failed attempts"; PC only shows "bad username or password" with no lockout hint. (Nutanix KB kA00e000000CrM0CAK)
1. Find the Prism leader
allssh 'curl localhost:2019/prism/leader ; echo'
2. SSH to that leader CVM/PCVM
ssh PRISM_LEADER_IP
3. Grep prism_gateway.log for failed logins (username + source IP)
grep -a "An unsuccessful login attempt was made with username" /home/nutanix/data/logs/prism_gateway.log
4. Alternative: HTTP 401 login attempts in the Apache proxy logs
allssh 'for i in `sudo ls /home/apache/ikat_access_logs/ | grep prism_proxy`; do sudo xzgrep -i login /home/apache/ikat_access_logs/$i | grep " 401 ";done'
5. Resolve the offending IP to a hostname if possible
nslookup x.x.x.10
Reset Password
read -p "Username: " NCLI_USER; read -s -p "Password: " NCLI_PASS; echo; ncli user reset-password user-name="$NCLI_USER" password="$NCLI_PASS"
Password Expiry
Show aging information
sudo chage -l <USER>
Change Password expiry:
hostssh 'sudo chage -I -1 -m 1 -M 99999 -E -1 root'
Change AHV Passwords
root
echo -e "CHANGING ALL AHV HOST ROOT PASSWORDS.\nPlease input new password: "; read -rs password1; echo "Confirm new password: "; read -rs password2; if [ "$password1" == "$password2" ]; then for host in $(hostips); do echo Host $host; echo $password1 | ssh root@$host "passwd --stdin root"; done; else echo "The passwords do not match"; fi
admin
echo -e "CHANGING ALL AHV HOST ADMIN PASSWORDS.\nPlease input new password: "; read -rs password1; echo "Confirm new password: "; read -rs password2; if [ "$password1" == "$password2" ]; then for host in $(hostips); do echo Host $host; echo $password1 | ssh root@$host "passwd --stdin admin"; done; else echo "The passwords do not match"; fi
nutanix
echo -e "CHANGING ALL AHV HOST NUTANIX PASSWORDS.\nPlease input new password: "; read -rs password1; echo "Confirm new password: "; read -rs password2; if [ "$password1" == "$password2" ]; then for host in $(hostips); do echo Host $host; echo $password1 | ssh root@$host "passwd --stdin nutanix"; done; else echo "The passwords do not match"; fi