Ako sa prihlásiť na pracovnú plochu Linuxu pomocou aplikácie Google Authenticator
Pre dodatočnú bezpečnosť môžete požiadať o token autentifikácie založenú na čase a heslo na prihlásenie do počítača Linux. Toto riešenie používa aplikáciu Google Authenticator a ďalšie aplikácie TOTP.
Tento proces bol vykonaný na Ubuntu 14.04 so štandardným prihlasovacím manažérom Unity desktop a LightDM, ale princípy sú rovnaké na väčšine linuxových distribúcií a desktopov.
Predtým sme vám ukázali, ako vyžadovať službu Google Authenticator pre vzdialený prístup cez službu SSH a tento proces je podobný. To nevyžaduje aplikáciu Google Authenticator, ale pracuje so všetkými kompatibilnými aplikáciami, ktoré implementujú schému autentifikácie TOTP vrátane Authy.
Nainštalujte PAM aplikácie Google Authenticator
Rovnako ako pri nastavovaní prístupu SSH budeme musieť najskôr nainštalovať príslušný softvér PAM (modul plug-in-authentication module). PAM je systém, ktorý nám umožňuje pripojiť rôzne typy autentifikačných metód do systému Linux a vyžadovať ich.
V systéme Ubuntu nasledujúci príkaz nainštaluje PAM aplikácie Google Authenticator. Otvorte okno Terminál, zadajte nasledujúci príkaz, stlačte kláves Enter a zadajte svoje heslo. Systém stiahne PAM z repozitárov softvéru distribúcie systému Linux a nainštaluje ho:
sudo apt-get nainštalujte libpam-google-authenticator
Ostatné distribúcie Linuxu by mali mať tento balík k dispozícii aj pre ľahkú inštaláciu - otvorte softvérové archívy distribúcie Linuxu a vyhľadajte ich. V najhoršom prípade môžete nájsť zdrojový kód modulu PAM na GitHub a zostaviť ho sami.
Ako sme už uviedli, toto riešenie nezávisí od "telefonovania domov" na servery spoločnosti Google. Implementuje štandardný algoritmus TOTP a môže byť použitý aj v prípade, že váš počítač nemá prístup na Internet.
Vytvorte svoje overovacie kľúče
Teraz budete musieť vytvoriť tajný overovací kľúč a vložiť ho do aplikácie aplikácie Google Authenticator (alebo podobnej) v telefóne. Najskôr sa prihláste ako svoj používateľský účet na systéme Linux. Otvorte okno terminálu a spustite okno google-authenticator Príkaz. typ y a postupujte podľa pokynov tu. Tým sa vytvorí špeciálny súbor v adresári aktuálneho používateľského účtu s informáciami služby Google Authenticator.
Budete tiež prejsť procesom získania tohto dvojfaktorového overovacieho kódu do aplikácie Google Authenticator alebo podobnej aplikácie TOTP na vašom smartfóne. Váš systém môže vygenerovať kód QR, ktorý môžete skenovať, alebo ho môžete zadávať ručne.
Uistite sa, že si všimnete núdzové škrabacie kódy, ktoré môžete použiť na prihlásenie sa, ak stratíte telefón.
Prejdite týmto procesom pre každý používateľský účet, ktorý používa váš počítač. Napríklad, ak ste jedinou osobou, ktorá používa váš počítač, môžete to urobiť len raz v bežnom používateľskom účte. Ak máte niekoho iného, kto používa váš počítač, budete chcieť, aby sa prihlásil na svoj vlastný účet a vytvoril vhodný dvojfaktorový kód pre svoj vlastný účet, aby sa mohli prihlásiť.
Aktivujte autentifikáciu
Tu je miesto, kde sa trochu dicy. Keď sme vysvetlili, ako povoliť dvojfaktorové prihlásenie SSH, vyžadovali sme ho len pre prihlásenia SSH. To vám zaručilo, že by ste sa mohli naďalej prihlásiť lokálne, ak ste stratili svoju autentizačnú aplikáciu alebo ak sa niečo pokazilo.
Keďže budeme umožňovať dvojfaktorovú autentifikáciu pre miestne prihlásenia, tu sú potenciálne problémy. Ak sa niečo pokazí, pravdepodobne sa nebudete môcť prihlásiť. S ohľadom na to budeme prechádzať tým, že to povolíme iba pre grafické prihlasovanie. To vám dáva únikový poklop, ak ho potrebujete.
Aktivujte aplikáciu Google Authenticator na grafické prihlasovanie na Ubuntu
Vždy môžete povoliť dvojstupňové overenie iba pre grafické prihlasovacie údaje, preskočenie požiadaviek pri prihlásení sa z textového výzvy. To znamená, že by ste mohli ľahko prejsť na virtuálny terminál, prihlásiť sa tam a vrátiť zmeny tak, aby sa Gogole Authenciator nevyžadoval, ak sa vyskytne problém.
Samozrejme, toto otvára dieru vo vašom autentifikačnom systéme, ale útočník, ktorý má fyzický prístup k vášmu systému, ho už môže využiť. To je dôvod, prečo je dvojfaktorová autentifikácia obzvlášť efektívna pre vzdialené prihlásenia cez SSH.
Tu je postup, ako to urobiť pre Ubuntu, ktorý používa správcu prihlásenia LightDM. Otvorte súbor LightDM na úpravu pomocou príkazu, ako je nasledujúci:
sudo gedit /etc/pam.d/lightdm
(Nezabudnite, že tieto konkrétne kroky budú fungovať iba vtedy, ak vaša distribúcia a pracovná plocha v Linuxe používajú správcu prihlásenia LightDM.)
Pridajte nasledujúci riadok na koniec súboru a uložte ho:
auth required pam_google_authenticator.so nullok
Bit "nullok" na konci informuje systém, aby nechal prihlásiť používateľa aj v prípade, že nespustil príkaz google-authenticator a nastavil dvojfaktorovú autentifikáciu. Ak to nastavia, budú musieť zadať časový kód - inak to nebudú. Odstráňte položku "nullok" a používateľské kontá, ktoré si nenastavili kód služby Google Authenticator, sa nebudú môcť graficky prihlásiť.
Pri ďalšom prihlásení sa graficky používateľom sa zobrazí výzva na zadanie hesla a potom sa zobrazí výzva na zobrazenie aktuálneho verifikačného kódu v telefóne. Ak nezadajú overovací kód, nebudú sa môcť prihlásiť.
Proces by mal byť pomerne podobný pre ostatné linuxové distribúcie a desktopy, pretože väčšina bežných manažérov Linuxu na pracovnej ploche používa PAM. Pravdepodobne budete musieť upraviť iný súbor s niečím podobným ako aktivovať príslušný modul PAM.
Ak používate šifrovanie domovského adresára
Staršie vydania Ubuntu ponúkajú jednoduchú možnosť "šifrovania domovského priečinka", ktorá zašifruje celý váš domovský adresár, kým nezadáte svoje heslo. Konkrétne to používa ecryptfs. Keďže softvér PAM závisí od súboru aplikácie Google Authenticator, ktorý je uložený vo vašom domovskom adresári predvolene, šifrovanie zasahuje do čítania súboru PAM, pokiaľ sa pred prihlásením do systému neozvete, že je k dispozícii v nezašifrovanej forme. Skôr ako sa prihlásite, pozrite sa na README. informácie o predchádzaní tomuto problému, ak stále používate možnosti šifrovania domáceho adresára.
Moderné verzie programu Ubuntu ponúkajú namiesto toho šifrovanie s úplným diskom, ktoré bude fungovať v súlade s vyššie uvedenými možnosťami. Nemusíte robiť nič zvláštneho
Nápoveda, to zlomilo!
Pretože sme to povolili iba pre grafické prihlasovanie, malo by byť jednoduché zakázať, ak spôsobí problém. Stlačením kombinácie klávesov, ako sú klávesy Ctrl + Alt + F2, získate prístup k virtuálnemu terminálu a prihláste sa pomocou svojho používateľského mena a hesla. Potom môžete použiť príkaz sudo nano /etc/pam.d/lightdm na otvorenie súboru na úpravu v terminálovom textovom editore. Pomocou nášho sprievodcu pre Nano môžete odstrániť riadok a uložiť súbor a budete sa môcť znova prihlásiť.
Môžete tiež vynútiť, aby bol Google Authenticator vyžadovaný pre iné typy prihlásení - potenciálne aj pre všetky prihlasovacie údaje systému - pridaním riadka "auth required pam_google_authenticator.so" do iných konfiguračných súborov PAM. Buďte opatrní, ak to urobíte. A nezabudnite, môžete pridať "nullok" tak, aby sa používatelia, ktorí neprešli procesom nastavenia, mohli naďalej prihlásiť.
Ďalšiu dokumentáciu o používaní a nastavení tohto modulu PAM môžete nájsť v súbore README softvéru na GitHub.