PAM

Jak nastavit přihlášení

Máte dvě možnosti: pam_p11 nebo PAM Poldi.

Řešení s pam_p11 je obtížnější a je založeno na certifikátech S/MIME. Více informací naleznete v dokumentaci.

Poldi 0.4.1 funguje bezchybně s Nitrokey pro ověřování PAM s klíči RSA (informace o klíčích ECC najdete v části Řešení problémů). Kromě instalace poldi (např. ‚sudo apt-get install libpam-poldi‘ v Ubuntu) je pro zprovoznění potřeba provést následující kroky.

Je nutné mít již vygenerované klíče na Nitrokey, protože autentizační klíč používá PAM.

  1. Nejprve je třeba zjistit ID aplikace Nitrokey. Vypadá to jako D00600012401020000000000xxxxxxxx nebo podobně.

    gpg --card-status | grep Application
    
  2. Nyní je třeba přidat řádek /etc/poldi/localdb/users, který obsahuje následující informace <YourApplicationID> <YourUsername>.

    Mohlo by to vypadat jako ‚D00600012401020000000000xxxxxxxx nitrokeyuser‘. Nyní vypište veřejný klíč z Nitrokey do lokální db poldi:

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

    Uvědomte si, že do řádku výše musíte vložit své ID žádosti s ID vaší hole!

    Pak je třeba nakonfigurovat PAM. Stačí přidat „auth sufficient pam_poldi.so“ do konfiguračních souborů pam podle vašich potřeb:

    • /etc/pam.d/common-auth pro grafické přihlášení uživatele

    • /etc/pam.d/login pro přihlášení do konzole

    • /etc/pam.d/sudo pro ověření sudo

    • /etc/pam.d/gnome-screensaver pro přihlášení zpět ze zamčené obrazovky

    • a další soubory na /etc/pam.d

    Poznámka

    Poznámka: Pam je nebezpečný, proto se ujistěte, že máte možnost se k němu dostat, pokud autentizaci zcela porušíte. Nezapomeňte, že spuštění do záchranného režimu z Grubu vyžaduje heslo roota, takže jej nebo live CD, které umí číst souborové systémy, mějte po ruce.

Zde najdete další pokyny (v němčině, částečně zastaralé).

Řešení problémů

Pokud se zobrazí chyba podobná chybě ‚ERR 100663414 Invalid ID <SCD>‘, měli byste zkusit místo toho.

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

Uvědomte si, že do řádku výše musíte vložit své ID žádosti s ID vaší hole!

Klíče ECC

Poldi bohužel zatím nepodporuje klíče ECC. Existuje však patch pro klíče ECC používané s Nitrokey Start. Ten je již obsažen v hlavní větvi vývojového repozitáře Poldi, a proto bude časem vydán v novější verzi. Do té doby je jedinou možností sestavit Poldi ze zdrojových kódů.