Ако смятате, че удостоверяването, базирано на парола и двуфакторното удостоверяване, е ненадеждно, помислете за настройка на базирано на хардуер удостоверяване на Linux с помощта на YubiKey.

Не сте сами, ако се тревожите за непрекъснато нарастващата заплаха от хакване. Въпреки че подканите за удостоверяване и 2FA са достатъчни, за да предотвратят повечето потенциални хакери, хиляди пробиви все още успяват всеки ден.

Едно от най-често рекламираните решения на проблема с удостоверяването е YubiKey. Но какво е YubiKey и как работи хардуерното удостоверяване? Можете ли да защитите своя Linux компютър с YubiKey?

Защо да използвате YubiKey за хардуерно удостоверяване?

Съществуват много различни видове удостоверяване, включително пароли, SMS удостоверяване и дори приложения за удостоверяване, които можете да използвате с телефона си. Един по-рядко срещан тип е хардуерното удостоверяване, което включва използването на малко устройство с приставка за изпращане на токен за удостоверяване, когато бъдете подканени.

instagram viewer

YubiKeys и други хардуерни устройства за удостоверяване имат няколко предимства пред други удостоверители. Те са по-лесни за използване, много по-сигурни и е почти невъзможно да бъдат компрометирани без достъп до самия физически YubiKey.

Първи стъпки с Yubikey

Можете да започнете с YubiKey само с няколко прости стъпки. Като първа стъпка трябва да използвате теста, направен от Юбико за да пазарувате най-добрия YubiKey за спецификациите на вашето устройство. След като имате своя YubiKey под ръка, можете да го използвате като устройство за удостоверяване на уебсайтове и приложения.

Можете дори да го използвате за удостоверяване на sudo и SSH на вашия Linux компютър. Ще ви обясним всичко, което трябва да знаете за избора на съвместим със sudo/SSH YubiKey и конфигурирането му за удостоверяване.

Кредит за изображение: Тони Уебстър/Flickr

Избор на правилния YubiKey за вашата система

Ако искате да използвате вашия YubiKey за удостоверяване на вашия компютър с Linux, има няколко YubiKey, които се открояват като превъзходни опции. YubiKey 5 и YubiKey 5 NFC са класически, които работят добре със системи съответно с USB-A и USB-C.

Ако искате да използвате своя YubiKey с вашия компютър с Linux и телефон с Android, трябва да помислите за YubiKey 5c NFC. Ако имате компютър с Linux и iPhone, трябва да помислите за YubiKey 5ci, защото поддържа USB-C и светкавица.

Важно е да се отбележи, че серията YubiHSM не е съвместима със sudo удостоверяване. Наследените YubiKeys може или не могат да бъдат съвместими със sudo/SSH удостоверяване в зависимост от техните специфични характеристики.

Преди да започнете със sudo или SSH удостоверяване, трябва да инсталирате YubiKey PPA. Отворете терминала и въведете следните команди, за да актуализирате вашите пакети и да инсталирате YubiKey Authenticator и YubiKey Manager:

sudo add-apt-repository ppa: yubico/стабилен
sudo apt-get актуализация
sudo apt инсталирайте yubikey-мениджър libpam-yubico libpam-u2f

След това ще трябва да проверите дали вашата система е готова да работи с вашия YubiKey. Изпълнете следната команда в терминала, за да проверите вашата udev версия:

sudo udevadm --версия

Терминалът ще върне номер. Ако числото е 244 или по-високо, вашата система е съвместима с YubiKey. В този случай можете да пропуснете следващата стъпка.

В противен случай ще трябва да конфигурирате вашата система. Трябва да използвате следните команди, за да проверите дали udev е инсталиран на вашия компютър и да го инсталирате, ако не е:

dpkg -s libu2f-udev
sudo apt инсталирайте libu2f-udev

След това проверете дали U2F интерфейсът на вашия YubiKey е отключен. Ако имате YubiKey NEO или YubiKey NEO-n, поставете вашия YubiKey, отворете YubiKey Manager и отидете до Интерфейси. Активирайте U2F интерфейс и натиснете Запазване.

Настройте YubiKey за sudo Authentication на Linux

sudo е една от най-опасните команди в средата на Linux. В правилните ръце той осигурява впечатляващо ниво на достъп, което е достатъчно за извършване на повечето задачи. В неподходящи ръце достъпът на ниво root, който sudo предоставя, може да позволи на злонамерени потребители да експлоатират или унищожат система.

YubiKeys са отлични за sudo удостоверяване, тъй като тяхното удостоверяване е почти невъзможно да се репликира без достъп до самия YubiKey. Повечето YubiKeys са съвместими със sudo удостоверяване, включително серията 5 FIP, серия ключове, серия 4 FIP, серия Bio, серия 5 и серия 4.

Според Юбико, първата стъпка, която трябва да предприемете, за да конфигурирате sudo удостоверяване, е създаването на файл с правила. Ако вашата udev версия е 188 или по-нова, инсталирайте новите U2F правила от GitHub и копирайте 70-u2f.правила файл към /etc/udev/rules.d.

Ако вашата udev версия е под 188, инсталирайте наследените U2F правила от GitHub и копирайте 70-old-u2f.rules файл към /etc/udev/rules.d.

Ако вашата udev версия е 244 или по-висока или сте направили необходимите файлове с правила, вие сте готови да свържете вашия YubiKey с вашия акаунт.

Поставете YubiKey във вашия компютър, отворете терминала и въведете следните команди, за да свържете вашия YubiKey с вашия акаунт:

mkdir -p ~/.config/Yubicopamu2fcfg > ~/.config/Yubico/u2f_keys

Изчакайте няколко минути, докато светлинният индикатор на вашия YubiKey започне да мига. Докоснете бутона на вашия YubiKey, за да потвърдите връзката към устройството.

Ако имате друг YubiKey под ръка, трябва да го добавите като резервно устройство, като въведете следната команда и завършите същия процес:

pamu2fcfg -n >> ~/.config/Yubico/u2f_keys

И накрая, ще трябва да конфигурирате командата sudo да изисква удостоверяване на YubiKey. Трябва да започнете, като въведете следната команда, за да отворите конфигурационния файл на sudo:

sudo vi /etc/pam.d/sudo

След като конфигурационният файл е отворен, поставете следния ред точно под @include common-auth ред за конфигуриране на sudo да изисква удостоверяване на YubiKey:

изисква се удостоверяване pam_u2f.so

Запазете и излезте от файла, като натиснете бягство, пишете :wq, и натискане Въведете, но дръжте терминала отворен. Няма да можете да отмените промените, които сте направили в sudo удостоверяването, ако терминалът се затвори.

Отворете втори терминал и изпълнете следната команда с изключен YubiKey, след което въведете паролата си:

sudo ехо тестване

Процесът на удостоверяване ще бъде неуспешен. Поставете вашия YubiKey и въведете отново командата и паролата си. Когато индикаторът на YubiKey започне да мига, докоснете бутона на вашия YubiKey. Трябва да удостовери командата. Ако го направи, вашият YubiKey е напълно настроен за sudo удостоверяване.

Кредит за изображение: Håkan Dahlström/Flickr

Как да настроите YubiKey за SSH удостоверяване

Можете да използвате вашия YubiKey и за SSH удостоверяване! Няколко серии YubiKey са съвместими с SSH, включително серия 5 FIPS, серия 5, серия 4 FIPS и серия 4. Използването на YubiKey за удостоверяване на вашите връзки ще ви позволи направете всяко влизане в SSH много по-сигурно.

Най-добрият метод за настройка на YubiKey беше очертан от опитен потребител на GitHub. Ще ви е необходим SSH 8.2 или по-нов и YubiKey с фърмуер 5.2.3 или по-нов. Можете да проверите вашата версия на OpenSSH - и да я актуализирате, ако е необходимо - със следните команди:

ssh -V
sudo apt актуализация && sudo apt надграждане

След това ще трябва да конфигурирате SSH да приема вашия YubiKey. Въведете следната команда за отворете редактора vi и редактирайте конфигурационния файл:

sudo vi /etc/ssh/sshd_config

Добавете следния ред към конфигурационния файл, така че вашият YubiKey да бъде приет:

PubkeyAcceptedKeyTypes [email protected], [email protected]

Запазете и излезте от файла, като натиснете бягство, пишете :wq, и удряне Въведете. И накрая, рестартирайте услугата SSH със следната команда, така че новата ви конфигурация да стане активна:

sudo service ssh рестартиране

И накрая, вие сте готови да създадете двойката ключове, които ще използвате за SSH удостоверяване. Отидете до SSH директорията и създайте своя нов SSH ключ със следните команди:

cd home/потребителско име/.ssh
ssh-keygen -t ed25519-sk

Два файла ще бъдат създадени в ~/.ssh/ указател. Имайте предвид, че може да се наложи да използвате ecdsa-ск вместо ed25519-ск ако вашата система е несъвместима и терминалът ви подсказва, че записването на ключ е неуспешно.

След това ще трябва да добавите публичния ключ към вашия сървър със следната команда:

ssh-copy-id -i ~/.ssh/id_ed25519_sk.pub потребителско име@сървър

Трябва също да добавите себе си към файла sudoers, така че да поддържате разрешения след деактивиране на root влизане. Достъп до файла и го отворете с visudo.

Не отваряйте файла sudoers с нормален текстов редактор.

Под реда, който гласи корен ВСИЧКИ=(ВСИЧКИ: ВСИЧКИ) ВСИЧКИ, добавете следния ред:

потребителско име ВСИЧКИ=(ВСИЧКИ: ВСИЧКИ) ВСИЧКИ

Отвори /etc/ssh/ssd_config файл и добавете следните редове, за да деактивирате root влизане и базирано на парола влизане:

ChallengeResponseAuthentication noPermitRootLogin no

Накрая въведете следната команда, за да заредите вашия ключ във вашия SSH агент за продължителността на сесията:

ssh-добавяне ~/.ssh/id_ed25519_sk

Вече можете да използвате вашия YubiKey за SSH удостоверяване. Ще трябва да поставите своя YubiKey във вашия компютър, когато бъдете подканени, и да докоснете бутона, когато индикаторът мига. С този нов метод за удостоверяване SSH достъпът до вашия отдалечен сървър ще бъде значително по-сигурен.

Други потенциални употреби на YubiKey

Няма реално ограничение за това как можете да използвате YubiKey на вашата Linux система. Ако искате да направите своя компютър допълнително защитен, обмислете използването на вашия YubiKey за криптиране на диск или без парола. Можете дори да го използвате за подписване на имейли и файлове, ако искате.

Защитете вашата Linux система с YubiKey

Не е нужно да спирате само с използването на вашия YubiKey за SSH и sudo удостоверяване. Можете също така да използвате вашия YubiKey за удостоверяване на достъпа до много от вашите акаунти в мрежата. Най-добрата част е, че да започнете с YubiKey 2FA е лесен процес.