#!/bin/bash # # Remove RDP Authentication # The script removes: # One User's auth - ok to enter dummy value # Sets the VRDE Auth to null # Ok to run multiple times to remove multiple users # if [ "$UID" -eq 0 ] then echo "This script should NOT be run as root." exit 1 fi # if [ $# -ne 1 ]; then echo "Usage for $0 : VM Name required as argument." exit 1 fi # # Virtual Machine Name VB_VM_NAME=$1 # Check if VM is powered-off VM_POWERED_ON=`VBoxManage list runningvms|grep -c '^"'${VB_VM_NAME}'"'` if [ $VM_POWERED_ON -eq 1 ]; then echo "VM needs to be powered off or saved" exit 1 fi # CNT_AUTH_SIMPLE=`VBoxManage getextradata ${VB_VM_NAME} enumerate | \ grep -c "VBoxAuthSimple/users/"` if [ $CNT_AUTH_SIMPLE -gt 0 ]; then echo "List of VBoxAuthSimple users:" VBoxManage getextradata ${VB_VM_NAME} enumerate | \ grep "VBoxAuthSimple/users/" | cut -d"," -f1 echo echo -n "RDP User:" read VB_VM_VRDP_USER echo # VB_VM_AUTH_VALUE=`VBoxManage getextradata ${VB_VM_NAME} \ "VBoxAuthSimple/users/${VB_VM_VRDP_USER}" | \ grep -c "No value set"` if [ $VB_VM_AUTH_VALUE -eq 1 ]; then echo "No auth for user: $VB_VM_VRDP_USER - Nothing to delete" echo fi # Delete user password hash VBoxManage setextradata ${VB_VM_NAME} \ "VBoxAuthSimple/users/${VB_VM_VRDP_USER}" else echo "No VBoxAuthSimple users found to delete" fi # Remove authentication echo "Setting VRDE Auth type to null" VBoxManage modifyvm ${VB_VM_NAME} --vrdeauthtype null # if [ $CNT_AUTH_SIMPLE -gt 1 ]; then echo "Rerun to delete other users. However authtype is already set to null" fi exit