Предуслови
Корак 1: Инсталирање библиотеке Гоогле Аутхентицатор
Корак 2: Конфигуришите Гоогле Аутхентицатор за сваког корисника
Корак 3: Конфигуришите ССХ да користи Гоогле Аутхентицатор
Белешка
Закључак
Постоји неколико начина да се пријавите на сервер преко ССХ-а. Методе укључују пријаву лозинком, пријаву засновану на кључу и двофакторску аутентификацију.
Двофакторска аутентификација је много боља врста заштите. У случају да ваш рачунар буде компромитован, нападачу ће и даље бити потребан приступни код за пријаву.
У овом водичу ћете научити како да подесите двофакторску аутентификацију на Дебиан 9 користећи Гоогле Аутхентицатор и ССХ.
Предуслови
- Дебиан 9 сервер (или новији).
- Нероот корисник са судо приступом.
- Паметни телефон (Андроид или иОС) са инсталираном апликацијом Гоогле Аутхентицатор. Такође можете да користите Аутхи или било коју другу апликацију која подржава једнократну пријаву засновану на времену (ТОТП).
Корак 1: Инсталирање библиотеке Гоогле Аутхентицатор
Морамо да инсталирамо модул библиотеке Гоогле Аутхентицатор доступан за Дебиан, који ће омогућити серверу да чита и проверава кодове.
sudo apt update
sudo apt install libpam-google-authenticator -y
Конфигуришите модул.
google-authenticator
Када покренете команду, биће вам постављена одређена питања. Прво питање ће битиDo you want authentication tokens to be time-based (y/n)
Притисните Yи добићете КР код, тајни кључ, верификациони код и резервне кодове за хитне случајеве.
Извадите телефон и отворите апликацију Гоогле Аутхентицатор. Можете или скенирати КР код или додати тајни кључ да бисте додали нови унос. Када то урадите, забележите резервне кодове и чувајте их негде на сигурном. У случају да се ваш телефон изгуби или оштети, можете користити те кодове за пријаву.
За преостала питања притисните Yкада се од вас затражи да ажурирате .google_authenticatorдатотеку, да Yбисте онемогућили вишеструку употребу истог токена, да Nбисте повећали временски оквир и Yомогућили ограничавање брзине.
Мораћете да поновите овај корак за све кориснике на вашој машини, иначе неће моћи да се пријаве када завршите са овим водичем.
Сада када су сви корисници на вашој машини подесили своју апликацију Гоогле аутентификатор, време је да конфигуришете ССХ да користи овај метод аутентикације у односу на тренутни.
Унесите следећу команду да бисте уредили sshdдатотеку.
sudo nano /etc/pam.d/sshd
Пронађите линију @include common-authи коментаришите је, као што је приказано испод.
# Standard Un*x authentication.
#@include common-auth
Додајте следећи ред на дно ове датотеке.
auth required pam_google_authenticator.so
Притисните CTRL+ Xда бисте сачували и изашли.
Затим унесите следећу команду да бисте уредили sshd_configдатотеку.
sudo nano /etc/ssh/sshd_config
Пронађите термин ChallengeResponseAuthenticationи поставите његову вредност на yes. Такође пронађите термин PasswordAuthentication, уклоните га из коментара и промените његову вредност у no.
# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no
Следећи корак је додавање следећег реда на дно датотеке.
AuthenticationMethods publickey,keyboard-interactive
Сачувајте и затворите датотеку притиском на CTRL+ X. Сада када смо конфигурисали ССХ сервер да користи Гоогле Аутхентицатор, време је да га поново покренемо.
sudo service ssh restart
Покушајте поново да се пријавите на сервер. Овог пута од вас ће бити затражено да унесете код за аутентификацију.
ssh user@serverip
Authenticated with partial success.
Verification code:
Унесите код који ваша апликација генерише и бићете успешно пријављени.
Белешка
У случају да изгубите телефон, користите резервне кодове из корака 2. Ако сте изгубили резервне кодове, увек их можете пронаћи у .google_authenticatorдатотеци у кућном директоријуму корисника након што се пријавите преко Вултр конзоле.
Закључак
Двофакторска аутентикација у великој мери побољшава безбедност вашег сервера и омогућава вам да спречите уобичајене нападе грубе силе.