pam_usb je modul PAM, který poskytuje hardwarové ověřování pro Linux s běžnými USB flash disky, SD kartami, MMC atd.
To vám umožní přihlásit se bez hesla pouhým připojením USB klíče nebo paměťové karty k počítači. Toto ověřování USB funguje také při provádění příkazů terminálu, které vyžadují superuživatele – například při použití sudo nebudete požádáni o heslo.
pam_usb funguje s jakoukoli aplikací, která podporuje PAM, jako je B. Login manager (GDM, Lightdm atd.) a su / sudo.
Pro ověření používá pam_usb sériové číslo USB flash disku / paměťové karty, model a výrobce a volitelné jednorázové podložky (OTP). Když jsou povoleny One Time Pads (toto je ve výchozím nastavení povoleno, ale můžete to zakázat), soubor veřejných uživatelských pads na USB / paměťové kartě bude ve skryté složce s názvem. uloženo .pamusb
zatímco soukromý klíč je uložen ve skryté složce se stejným názvem, která je uložena v domovském adresáři uživatele.
Zdá se, že původní vývojář tohoto nástroje to vzdal, žádné nové commity od dubna 2016 a žádná nová vydání od roku 2011. Od té doby byla v různých repozitářích provedena určitá vylepšení. Pro další vylepšení pam_usb, nástroj rozvětvený, také s ohledem na práci, která byla dříve provedena v jiných úložištích (které zahrnují vylepšení, jako je port UDisk2).
funkce pam_usb:
- Ověřování bez hesla (paměťová karta / USB). Jednoduše připojte USB klíč / paměťovou kartu, kterou jste nakonfigurovali pomocí pam_usb a přihlaste se
- Podporuje USB klíče, SD karty, MMC atd.
- Automatické snímání zařízení. pam_usb nevyžaduje připojení USB flash disku; umí vyhledat zařízení USB a přistupovat k jeho datům přímo pomocí UDiska
- Není třeba přeformátovat jednotku USB flash
- Sériové číslo USB, ověření modelu a výrobce
- Podporuje ověřování One Time Pads (OTP)
- Lze použít jako dvoufaktorové ověření a k přihlášení do systému Linux vyžaduje USB klíčenku i heslo
- Stejnou paměťovou kartu / jednotku USB můžete používat na více počítačích
S pam_usb jsou dodávány 3 nástroje:pamusb-agent
který lze použít k zahájení akcí, když je zařízení ověřeno nebo odebráno (například můžete použít příkaz k uzamčení obrazovky, když je zařízení odebráno), pamusb-conf
což usnadňuje nastavení pam_usb a pamusb-check
který se používá k integraci autentizačního jádra pam_usb do skriptů nebo aplikací.
pam_usb aktuálně nepodporuje přidání více než jednoho zařízení na uživatele. Prozatím pamusb-conf
nepřidává zařízení pro již nakonfigurované uživatele. Tento problém můžete sledovat zde.
To stojí za zmínku pam_usb se používá pouze k přihlášení a nikoli k odemykání svazku klíčů GNOME nebo dešifrování soukromých složek . Zdá se, že klíčenka GNOME nepodporuje odemykání ničím jiným než pomocí hesla. I když jste automaticky přihlášeni při používání pam_usb a je připojen spárovaný USB flash disk, zobrazí se dialogové okno GNOME Keychain Unlock, které vás vyzve k zadání hesla pro odemknutí. totéž se stane například, pokud používáte ověřování otisků prstů.
Zkoušel jsem to s GDM a LightDM. V obou případech jsem musel kliknout na své uživatelské jméno na přihlašovací obrazovce a stisknout enter, abych se přihlásil, aniž bych musel zadávat heslo k účtu.
[[Edit]]V níže uvedeném komentáři vývojář poznamenal, že se snaží najít pomoc s bezpečnostní kontrolou kódu. Pokud můžete pomoci, kontaktujte je prosím prostřednictvím github.
Související s USB:Vytvořte spouštěcí USB disk jednoduchým zkopírováním ISO na USB flash disk pomocí Ventoy (Linux a Windows)
Nainstalujte a nastavte pam_usb (fork)
tento pam_usb-fork nebyl zabalen do oficiálních repozitářů žádné distribuce Linuxu. Stará verze 0.5.0 (která používá Python2 a Udisks1) je k dispozici pro několik distribucí Linuxu, ale ve většině chybí.
Vývojář pam_usb fork zabalil tuto verzi pam_usb pro aktuální verze Debianu a Ubuntu (stejně jako Linux Mint, Pop! _OS a další distribuce Linuxu založené na Debianu nebo Ubuntu) a můžete si ji stáhnout zde (Odtud potřebujete pouze balíček libpam-usb).
Fork repozitář pam_usb má také k dispozici Arch Linux / Manjaro PKGBUILD .
U ostatních distribucí Linuxu je budete muset sestavit ze zdroje .
Pokud instalujete pam_usb (fork) z balíčku Debian poskytnutého vývojářem, budete během instalace vyzváni k výběru zařízení a uživatele:
Pokud to není váš případ nebo to chcete provést později ručně, můžete pam_usb nastavit takto. Vložte USB flash disk nebo paměťovou kartu a spusťte následující příkaz pro přidání nového zařízení jako metody ověřování:
sudo pamusb-conf --add-device DEVICE_NAME
Kde DEVICE_NAME
může být cokoli chcete
Dále musíte přidat svého uživatele do konfigurace pam_usb pomocí:
sudo pamusb-conf --add-user USERNAME
Kde USERNAME
je uživatel, pro kterého chcete povolit ověřování založené na USB / paměťové kartě.
Uživatelské jméno a informace o zařízení jsou uloženy v /etc/security/pam_usb.conf
Soubor.
Nyní můžete zkontrolovat konfiguraci a zjistit, zda je vše v pořádku, pomocí:
pamusb-check USERNAME
Je důležité si uvědomit, že pokud používáte balíčky DEB poskytnuté vývojářem, nemusíte nic dalšího konfigurovat. Ale pokud jste nainstalovali pam_usb ze zdroje, musíte pam_usb přidat do procesu ověřování systému, jak je vysvětleno zde.
Další možnosti konfigurace pam_usb najdete na jeho konfigurační wiki stránce.
Nakonfigurujte pam_usb tak, aby uzamkl obrazovku, když je vyjmut klíč USB / paměťová karta (a odemkne se po opětovném vložení)
pam_usb může spouštět příkazy pomocí pamusb-agent, když je USB klíč / paměťová karta vložena nebo vyjmuta.
Pam_usb wiki má příklad konfigurace pro uzamčení obrazovky při vyjmutí USB flash disku / paměťové karty a odemknutí při opětovném vložení. Tento příklad již nefunguje v Gnome (ale měl by fungovat v jiných desktopových prostředích tím, že jej nahradí) gnome-screensaver-command
s cinnamon-screensaver-command
pro Cinnamon desktop, mate-screensaver-command
pro plochu MATE atd.). [[Edit]]Můžete nahradit xdg-screensaver
(Část xdg-utils
Balík; např. xdg-screensaver lock
pro uzamčení obrazovky a xdg-screensaver reset
odemknout).
Chcete-li, aby pam_usb uzamkl obrazovku, když je vyjmut USB klíč/paměťová karta, a jakmile je zařízení znovu připojeno, odemkne se na distribucích Linuxu se systémem (tuto konfiguraci jsem testoval pouze na Gnome s GDM3, používám následující konfiguraci (/etc/security/pam_usb.conf
):
...................................
<user id="USERNAME">
<device>DEVICE_NAME</device>
<!-- When the user "USERNAME" removes the usb device, lock the screen -->
<agent event="lock">
<cmd>/usr/local/bin/screensaver-lock</cmd>
</agent>
<!-- Resume operations when the usb device is plugged back and authenticated -->
<agent event="unlock">
<cmd>/usr/local/bin/screensaver-unlock</cmd>
</agent>
</user>
...................................
K tomu se používají dva skripty. /usr/local/bin/screensaver-lock
se používá k uzamčení obrazovky a /usr/local/bin/screensaver-unlock
pro odemknutí obrazovky. Zde je jejich obsah.
/usr/local/bin/screensaver-lock
:
#!/bin/sh
SESSION=`loginctl list-sessions | grep USERNAME | awk '{print $1}'`
if [ -n $SESSION ]; then
loginctl lock-session $SESSION
fi
/usr/local/bin/screensaver-unlock
:
#!/bin/sh
SESSION=`loginctl list-sessions | grep USERNAME | awk '{print $1}'`
if [ -n $SESSION ]; then
loginctl unlock-session $SESSION
fi
Nahraďte v obou USERNAME
s vaším uživatelským jménem.
Mohlo by se vám také líbit:KDE Connect / GSConnect:Jak zamknout / odemknout plochu Linuxu pomocí zařízení Android
výše wiki.ubuntuusers.de