31 lines
1.1 KiB
Bash
31 lines
1.1 KiB
Bash
#!/bin/bash
|
|
|
|
##########################################################################
|
|
# Shellscript : Change Efi Password
|
|
# Autor : Jobst Heinermann, macenterprise gmbh
|
|
# Copyright : macenterprise 2019
|
|
##########################################################################
|
|
|
|
#Funktion
|
|
DecryptString() {
|
|
echo "${1}" | /usr/bin/openssl enc -aes256 -d -a -A -S "${2}" -k "${3}"
|
|
}
|
|
|
|
#Variabeln
|
|
EFI_ALT=$(DecryptString "$4" "$5" "$6")
|
|
EFI_NEU=$(DecryptString "$7" "$8" "$9")
|
|
EFI_STATUS=$(firmwarepasswd -check)
|
|
EFI_AKT=$(/usr/bin/expect -c "spawn /usr/sbin/firmwarepasswd -verify ; expect ":" ; send "$EFI_NEU\\n" ; interact" | grep Correct)
|
|
|
|
#Passwort ändern
|
|
if [ "$EFI_STATUS" = "Password Enabled: Yes" ]
|
|
then
|
|
#EFI Passwort ändern
|
|
/usr/bin/expect -c "spawn /usr/sbin/firmwarepasswd -setpasswd ; expect ":" ; send "$EFI_ALT\\n" ; expect ":" ; send "$EFI_NEU\\n" ; expect ":" ; send "$EFI_NEU\\n" ; interact"
|
|
else
|
|
#EFI neu setzen
|
|
/usr/bin/expect -c "spawn /usr/sbin/firmwarepasswd -setpasswd ; expect ":" ; send "$EFI_NEU\\n" ; expect ":" ; send "$EFI_NEU\\n" ; interact"
|
|
fi
|
|
|
|
|