Konfiguracja hasła Firmware z Terminala

11/08/2016, 23:22 · · · 1

Jakieś trzy lata temu Wojtek opisał sposób, jak ustawić hasło Firmware przy pomocy Firmware Password Utility. Sposób ten wymaga jednak zrestartowania Maca do trybu Recovery. Z pomocą Terminala można jednak to obejść.

Terminal to potężne narzędzie w rękach kogoś, kto wie, jak go wykorzystać. Z pewnością sami niejednokrotnie się o tym przekonaliście. Wracając jednak do tematu. Cały trik polega na wykorzystaniu wspomnianej na wstępie aplikacji Firmware Password Utility w wersji tekstowej. Ponieważ jednak program ten dostępny jest tylko na partycji Recovery, która dodatkowo jest normalnie niewidoczna z poziomu Narzędzia dyskowego, musimy posłużyć się linią poleceń, by zamontować tę partycję:

diskutil mount Recovery\ HD & wait

Teraz musimy zamontować plik BaseSystem.dmg, w którym znajduje się aplikacja FPU:

hdiutil attach -quiet -nobrowse /Volumes/Recovery\ HD/com.apple.recovery.boot/BaseSystem.dmg & wait

Te dwa polecenia możemy zresztą połączyć w jedno długie:

diskutil mount Recovery\ HD & wait && hdiutil attach -quiet -nobrowse /Volumes/Recovery\ HD/com.apple.recovery.boot/BaseSystem.dmg & wait

Tekstowe narzędzie FPU – setregproptool – znajduje się pod poniższą ścieżką:

/Volumes/OS\ X\ Base\ System/Applications/Utilities/Firmware\ Password\ Utility.app/Contents/Resources/setregproptool

Żeby jednak korzystanie z niego nie wymagało wpisywania tak długiej ścieżki, możemy je skopiować, na przykład na Biurko przy pomocy narzędzia cp ze znacznikiem -p, który zachowa niezbędne prawa dostępu:

cp -p /Volumes/OS\ X\ Base\ System/Applications/Utilities/Firmware\ Password\ Utility.app/Contents/Resources/setregproptool ~/Desktop/

Korzystanie z narzędzia setregproptool

Uruchomienie setregproptool wymaga skorzystania z praw administratora, dlatego wywołujemy je poprzez sudo i podanie hasła administratora:

sudo ~/Desktop/setregproptool

Pokażą się nam wtedy informacje, jak korzystać z tego narzędzia:

Usage: setregproptool [-c] [-d [-o ]] [[-m  -p ] -o ]

    -c              Check whether password is enabled. 
                            Sets return status of 0 if set, 1 otherwise.
    -d              Delete current password/mode.
                            Requires current password on some machines.
    -p              Set password.
                            Requires current password on some machines.
    -m              Set security mode.
                            Requires current password on some machines.
                            Mode can be either "full" or "command".
                            Full mode requires entry of the password on
                            every boot, command mode only requires entry
                            of the password if the boot picker is invoked
                            to select a different boot device.

                    When enabling the Firmware Password for the first
                    time, both the password and mode must be provided.
                    Once the firmware password has been enabled, providing
                    the mode or password alone will change that parameter
                    only.

    -o              Old password.
                            Only required on certain machines to disable
                            or change password or mode. Optional, if not
                            provided the tool will prompt for the password.

A jak to wygląda w przykładach?

Ustawienie hasła Firmware

Aby utworzyć hasło Firmware, nasze polecenie powinno wyglądać tak:

sudo ~/Desktop/setregproptool -m command|full -p "hasłozabezpieczające"

Po znaczniku -m podajemy jedną z dwóch opcji:

  • command – monit o podanie hasła Firmware będzie pojawiał się tylko wtedy, gdy wywołamy ekran bootowania (czyli ten, który pokaże się zaraz po sygnale uruchamiania komputera, kiedy przytrzymamy klawisz Alt);
  • full – monit o podanie hasła Firmware będzie się pojawiał za każdym razem, gdy Mac będzie restartowany lub uruchamiany.

UWAGA: Hasło Firmware podajemy w tym przypadku tylko raz, bez potwierdzenia. Dlatego upewnijcie się, że wpisaliście je dobrze. W przeciwnym wypadku stracicie dostęp do komputera, bo hasło Firmware Was nie przepuści dalej.

Modyfikacja hasła Firmware

Aby zmienić hasło Firmware, musimy posłużyć się poniższym poleceniem:

sudo ~/Desktop/setregproptool -p "NOWE_hasłozabezpieczające" -o "STARE_hasłozabezpieczające"

Opcjonalnie możemy dodać znacznik -m.

Usunięcie hasła Firmware

Aby usunąć hasło Firmware, skorzystamy z tej komendy:

sudo ~/Desktop/setregproptool -d -o "hasłozabezpieczające"

Sprawdzenie stanu hasła Firmware

Jeśli zastanawiacie się, czy na Waszym komputerze jest założone hasło Firmware, to można to sprawdzić w poniższy sposób:

sudo ~/Desktop/setregproptool -c; echo $?

W odpowiedzi otrzymamy jedną z dwóch liczb:

  • 0 – oznacza, że hasło Firmware jest aktywne;
  • 1 – oznacza, że hasło Firmware nie jest aktywne.

UWAGA: Jeśli utworzymy lub usuniemy hasło Firmware, to powyższe polecenie nie pokaże prawidłowej wartości dopóki nie zrestartujemy Maca.



1

Maciej Skrzypczak

Użytkownik sprzętu z nadgryzionym jabłkiem, grafik komputerowy, nałogowy gracz ARK: Survival Evolved. Redaktor iMagazine.pl.