Този процес бе извършен на Ubuntu 14.04 със стандартния Unity desktop и LightDM мениджър за вход, но принципите са едни и същи за повечето Linux дистрибуции и настолни компютри.
По-рано ви показахме как да изисквате Google Authenticator за отдалечен достъп през SSH и този процес е подобен. Това не изисква приложението Google Удостоверител, но работи с всяко съвместимо приложение, което изпълнява схемата за удостоверяване на TOTP, включително Authy.
Инсталирайте PAM на Google Удостоверител
Както при настройката за SSH достъп, първо трябва да инсталираме съответния софтуер PAM ("pluggable-authentication module"). PAM е система, която ни позволява да свързваме различни видове методи за удостоверяване в система Linux и да ги изискваме.
В Ubuntu следната команда ще инсталира PAM на Google Удостоверител. Отворете прозорец Терминал, въведете следната команда, натиснете Enter и въведете паролата си. Системата ще изтегли PAM от софтуерните хранилища на Linux и ще го инсталира:
sudo apt-get install libpam-google-authenticator
Както посочихме преди, това решение не зависи от "обаждането в дома" на сървърите на Google. Той изпълнява стандартния алгоритъм на TOTP и може да се използва дори когато компютърът ви няма достъп до Интернет.
Създайте вашите ключове за удостоверяване
Сега ще трябва да създадете таен ключ за удостоверяване и да го въведете в приложението Google Удостоверител (или подобно приложение) на телефона си. Първо, влезте като потребителски акаунт във вашата Linux система. Отворете терминален прозорец и го пуснете Google Удостоверител команда. Тип ш и следвайте указанията тук. Това ще създаде специален файл в директорията на текущия потребителски акаунт с информацията от Google Удостоверител.
Не забравяйте да отбележите кодовете за спешни драскотини, които можете да използвате, за да влезете в профила си, ако загубите телефона си.
Активирайте удостоверяването
Ето какво нещата стават малко подвижни. Когато обяснихме как да активираме два фактора за влизания в SSH, ние го изисквахме само за влизания в SSH. Това гарантира, че все още можете да влезете локално, ако сте загубили приложението си за удостоверяване или ако нещо се е объркало.
Тъй като ще позволим двуфакторно удостоверяване за локални влизания, има потенциални проблеми тук. Ако нещо се обърка, може да не успеете да влезете в системата. Като имате предвид това, ние ще ви позволим да разрешите това само за графични влизания. Това ви дава авариен люк, ако имате нужда от него.
Активирайте Google Удостоверител за графични влизания в Ubuntu
Винаги можете да активирате удостоверяване в две стъпки само за графични влизания, като прескочите изискването, когато влезете от текстовия промпт. Това означава, че можете лесно да превключите към виртуален терминал, да влезете в него и да върнете промените си, така че Gogole Authenciator няма да се изисква, ако имате проблем.
Разбира се, това отваря дупка в системата ви за удостоверяване, но нападателят с физически достъп до вашата система вече може да я използва. Ето защо двуфакторното удостоверяване е особено ефективно за отдалечено влизане чрез SSH.
Ето как да направите това за Ubuntu, който използва мениджъра за вход в LightDM. Отворете файла LightDM за редактиране с команда като следното:
sudo gedit /etc/pam.d/lightdm
(Не забравяйте, че тези конкретни стъпки ще работят само ако дистрибуцията и работният плот на Линукс използват мениджъра за вход в LightDM.)
auth required pam_google_authenticator.so nullok
Bit "nullok" в края казва на системата да позволи на потребителя да влезе, дори ако не са изпълнили командата google-authenticator, за да настроят двуфакторна идентификация. Ако са го настроили, ще трябва да въведат кода за време - baesd - в противен случай няма да го направят. Премахнете "nullok" и потребителските профили, които не са настроили код на Google Удостоверител, просто няма да могат да се регистрират графично.
Ако използвате началната криптиране на директорията
По-старите версии на Ubuntu предлагат лесна опция за "криптиране на началната папка", която шифрова цялата ви домашна директория, докато не въведете паролата си. По-конкретно, това използва ecryptfs. Тъй като обаче софтуерът PAM зависи от файла на Google Authenticator, който е запазен в домашната ви директория по подразбиране, криптирането пречи на PAM да чете файла, освен ако не сте сигурни, че е налице в некриптирана форма на системата, преди да влезете в системата. информация за избягване на този проблем, ако все още използвате опциите за скрито криптиране на домашната директория.
Съвременните версии на Ubuntu предлагат криптиране на цял диск, което ще работи добре с горните опции. Не е нужно да правите нищо специално
Помощ, тя се счупи!
Тъй като ние просто позволихме това за графични влизания, трябва да бъде лесно да го забраните, ако причинява проблем. Натиснете клавишна комбинация като Ctrl + Alt + F2, за да осъществите достъп до виртуален терминал и да влезете там с вашето потребителско име и парола. След това можете да използвате команда като sudo nano /etc/pam.d/lightdm, за да отворите файла за редактиране в терминален текстов редактор. Използвайте нашето ръководство за Nano, за да премахнете линията и да запазите файла, и ще можете отново да влезете нормално.
Допълнителна документация за това как да използвате и настройвате този PAM модул може да се намери в README файла на софтуера на GitHub.