Jakiś czas temu zakupiłem klucz FIDO U2F firmy Yubico. Służy on do weryfikacji naszej tożsamości podczas dwuskładnikowego logowania na wielu portalach: github, google, facebook itp. Metoda ta jest o wiele szybsza od wysyłania smsa lub maila. Musimy tylko umieścić klucz w porcie USB, a następnie dotknąć podświetloną ikonę klucza. O tym dlaczego zaleca się używanie tego klucza można poczytać między innymi na niebezpieczniku.
Osobiście również zachęcam do tej metody logowania dwuskładnikowego. Klucz jest na tyle mały, że możemy go mieć cały czas przy sobie. Zabezpiecza nas przed wyciekiem haseł czy phishingiem, więc na pewno warto rozważyć zakup. Sam zaopatrzyłem się w niego na amazon.de.
Okazuje się, że w dosyć łatwy sposób możemy wykorzystać klucz jako metodę logowania do Maca. Poniżej kroki jakie należy wykonać. Dodaje, że wykonujesz je na własne ryzyko.
Co potrzebujemy?
- Oczywiście Klucz Fido U2F
- Homebrew – do instalacji modułu U2F
- Wykonanie backupu, np. przy pomocy Time Machine. Niestety podczas konfiguracji możemy wykonać błąd i stracić dostęp do systemu. Innym sposobem jest utworzenie nowego konta użytkownika z prawami administratora.
Konfiguracja
Na początku należy zainstalować moduł U2F za pomocą homebrew:
brew install pam-u2f
Moduł powinien zostać zainstalowany w:
/usr/local/Cellar/pam-u2f/1.0.4/lib/pam/pam_u2f.so
Dlatego warto wykonać link, aby za każdym razem nie trzeba było wskazywać całej ścieżki:
ln -s /usr/local/Cellar/pam-u2f/1.0.4/lib/pam/pam_u2f.so /usr/lib/pam/
Następnym krokiem jest zapisanie danych uwierzytelniających klucza w katalogu ~/.config/Yubico/u2f_keys . Jest to domyślne miejsce w którym moduł U2F będzie szukać naszych danych podczas logowania. Możemy to zrobić wykonując po koleji:
mkdir -p ~/.config/Yubico/ # utworzenie katalogu pamu2fcfg > ~/.config/Yubico/u2f_keys # w tym momencie należy dotknąc klucz
Po pomyślnym zapisaniu danych, możemy przystąpić do konfiguracji metody logowania. Należy w tym celu edytować plik /etc/pam.d/authorization i dodać na początku auth sufficient pam_u2f.so . Plik powinien wyglądać następująco.
# authorization: auth account auth sufficient pam_u2f.so auth optional pam_krb5.so use_first_pass use_kcminit auth optional pam_ntlm.so use_first_pass auth required pam_opendirectory.so use_first_pass nullok account required pam_opendirectory.so
Dzięki temu będziemy mogli zalogować się do systemu za pomocą hasła lub klucza. Warto przetestować to przed następnym krokiem. Podczas logowania należy wcisnąć Enter i dotknąć klucz. Powinniśmy zostać zalogowani do systemu. Jeśli coś będzie nie tak, trzeba sprawdzić czy nie popełniliśmy żadnego błędu (np. czy dane z klucza zostały poprawnie zapisane).
Ostatnim krokiem jest użycie klucza jako typowego U2F zmieniając auth sufficient pam_u2f.so na auth required pam_u2f.so . Aby się zalogować należy wtedy podać hasło oraz klucz.
Klucz U2F to doskonała metoda do dodatkowego zabezpieczenia dostępu do naszego laptopa. Nie powinniśmy już się obawiać utracenia danych po jego kradzieży. Oczywiście pod warunkiem, że naszego dane są zaszyfrowane np. za pomocą FileVault.