Logowanie przy użyciu PAM#

(Nitrokey Start - Linux)

Jak skonfigurować logowanie#

Masz dwie opcje: pam_p11 lub Poldi.

Rozwiązanie z pam_p11 jest trudniejsze do osiągnięcia i opiera się na certyfikatach S/MIME. Więcej informacji można znaleźć w dokumentacji.

Poldi 0.4.1 działa bezbłędnie z Nitrokey do uwierzytelniania PAM z kluczami RSA (zobacz Rozwiązywanie problemów, aby uzyskać informacje o kluczach ECC). Poza instalacją poldi (np. sudo apt-get install libpam-poldi na Ubuntu), aby działał, należy wykonać następujące kroki.

Konieczne jest posiadanie już wygenerowanych kluczy na Nitrokey, ponieważ klucz uwierzytelniający jest używany przez PAM.

  1. Na początku musisz poznać „ID aplikacji” Twojego Nitrokey. Możesz użyć gpg --card-status | grep Application, aby dowiedzieć się, co’należy do Ciebie. Wygląda to jak D00600012401020000000000xxxxxxxx lub coś podobnego.

  2. Teraz należy dodać do pliku /etc/poldi/localdb/users wiersz zawierający następujące informacje

    <YourApplicationID> <YourUsername>

    Może to wyglądać jak «D0060001240102000000000000xxxxxxxx nitrokeyuser». Teraz zrzuć klucz publiczny z Nitrokey do lokalnej bazy danych poldi:

sudo sh -c 'gpg-connect-agent "/datafile /etc/poldi/localdb/keys/<YourApplicationID>" "SCD READKEY --advanced OPENPGP.3" /bye'

Pamiętaj, że w powyższym wierszu musisz wpisać swój identyfikator wniosku wraz z identyfikatorem swojego patyczka!

Następnie musisz skonfigurować PAM. Wystarczy dodać „auth sufficient pam_poldi.so” do plików konfiguracyjnych pam, zgodnie z potrzebami:

  • /etc/pam.d/common-auth dla graficznego logowania użytkowników

  • /etc/pam.d/login dla logowania do konsoli

  • /etc/pam.d/sudo dla uwierzytelniania sudo

  • /etc/pam.d/gnome-screensaver umożliwiający ponowne zalogowanie się z zablokowanego ekranu,

  • itd.

Informacja

Zabawa z Pam jest niebezpieczna, więc upewnij się, że masz sposób na uzyskanie dostępu do komputera, jeśli całkowicie złamiesz uwierzytelnianie. Pamiętaj, że uruchomienie trybu ratunkowego z Grub wymaga podania hasła roota, więc miej go pod ręką lub płytę live CD, na której można odczytać system plików.

Tutaj znajdziesz ` dalsze instrukcje <http://wiki.ubuntuusers.de/Archiv/Authentifizierung_OpenPGP_SmartCard>`_ (w języku niemieckim, częściowo nieaktualne).

Rozwiązywanie problemów#

Jeśli pojawi się błąd podobny do «ERR 100663414 Invalid ID <SCD>», powinieneś spróbować zamiast tego

poldi-ctrl -k > <YourApplicationID>; sudo mv <YourApplicationID> /etc/poldi/localdb/keys

Pamiętaj, że w powyższym wierszu musisz wpisać swój identyfikator wniosku wraz z identyfikatorem swojego patyczka!

Klucze ECC#

Niestety, poldi nie ma jeszcze wsparcia dla kluczy ECC. Istnieje jednak patch dla kluczy ECC używanych z Nitrokey Start. Jest on już zawarty w głównej gałęzi repozytorium rozwojowego poldi, a zatem zostanie wydany w nowszej wersji w końcu. W międzyczasie jedyną opcją jest zbudowanie poldi ze źródeł.