Как да конфигурирам двуфакторно удостоверяване в SSH в Ubuntu?

Двуфакторно удостоверяване

La Двуфакторното удостоверяване (2FA) не е нещо уникално, което може да се използва в социалните медии или на който и да е друг уебсайт. Е, тази мярка за сигурност може да бъде приложена и в рамките на операционна система.

Ето защо Днес ще видим как да приложим двуфакторно удостоверяване в SSH в Ubuntu и деривати, използващи добре познатия Google Authenticator, което значително ще повиши сигурността на вашия OpenSSH сървър.

Обикновено просто трябва да въведете парола или да използвате SSH ключа, за да влезете дистанционно в системата си.

Двуфакторното удостоверяване (2FA) изисква да бъдат въведени две части информация, за да влезете.

Следователно ще трябва да въведете еднократна парола, базирана на времето, за да влезете във вашия SSH сървър.

Тази еднократна парола се изчислява с помощта на алгоритъма TOTP, който е стандарт на IETF.

Инсталиране и конфигуриране на Google Authenticator в Ubuntu и деривати

Първата стъпка, която ще извършим, е инсталирането на Google Authenticator в нашата система, така че ще отворим терминал в системата (това може да стане с комбинацията от клавиши "Ctrl + Alt + T) и в него ще напишем следната команда:

sudo apt install libpam-google-authenticator

Инсталацията приключи ще стартираме новоинсталираното приложение със следната команда:

google-authenticator

Когато изпълняваме тази команда, това, което ще направим, е да присвоим таен ключ и това ще ни попита дали искаме да използваме жетоните въз основа на времето, на което ще отговорим да.

След това, те ще видят QR код, който могат да сканират с помощта на приложението TOTP на телефона си.

тук Препоръчваме да използвате приложението Google Authenticator на мобилния си телефон.il, така че можете да инсталирате приложението чрез Google Play или Apple App Store на мобилния си телефон.

Вече имате приложението на телефона си, трябва да сканирате QR кода с него. Имайте предвид, че трябва да увеличите прозореца на терминала, за да сканирате целия QR код.

QR кодът представлява тайният ключ, което е известно само на неговия SSH сървър и неговото приложение Google Authenticator.

След като QR кодът бъде сканиран, те могат да видят уникален шестцифрен маркер на телефона си. По подразбиране този маркер трае 30 секунди и трябва да бъде въведен, за да влезете в Ubuntu чрез SSH.

Google-удостоверител-таен ключ

В терминала ще можете да видите и секретния код, както и кода за проверка и кода за аварийно стартиране.

От което препоръчваме да съхранявате тази информация на сигурно място за по-нататъшна употреба. От другите въпроси, които ни задават, ние просто ще отговорим да, като напишем буквата y.

Настройване на SSH за използване с Google Authenticator

Вече разчита на горното, Сега ще направим необходимата конфигурация, за да можем да използваме SSH връзката в нашата система с Google Authenticator.

В терминал vЩе въведем следната команда

sudo nano /etc/ssh/sshd_config

Вътре във файла ще потърсим следните редове и ще ги сменим на "да", като сме както следва:

UsePAM yes

ChallengeResponseAuthentication yes

След като промените бъдат направени, запазете направените промени с Ctrl + O и затворете файла с Ctrl + X.

В същия терминал ще рестартираме SSH с:

sudo systemctl restart ssh

По подразбиране за удостоверяване се изисква те да въведат потребителската парола за влизане.

Така че нека редактираме файла с правила за PAM за демона SSH.

sudo nano /etc/pam.d/sshd

В началото на този файл можете да видите следния ред, който позволява удостоверяване с парола

ChallengeResponseAuthentication

Което трябва да зададем на да.

За да активирате и еднократно удостоверяване с парола, добавете следните два реда.

@include common-auth

#One-time password authentication via Google Authenticator

auth required pam_google_authenticator.so

Запазете и затворете файла.

Отсега нататък всеки път, когато влязат във вашата система чрез SSH връзка, ще бъдат подканени да въведат потребителската парола и кода за потвърждение (еднократната парола, генерирана от Google Authenticator).


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

  1.   Мигел каза той

    Здравейте, доста прост урок, обаче, след като направя всички стъпки, които вече не мога да въведа чрез ssh, той ми извежда грешна грешка в паролата, дори не мога да поискам 2FA.

    Имам Ubuntu Server 20.04