„Сигурна шкољка“ ССХ је мрежни протокол за успостављање безбедне везе између хостова, стандардно преко порта 22 (који је боље променити). ССХ клијенти и ССХ сервери су доступни за већину оперативних система. Скоро сваки други мрежни протокол ради унутар ССХ-а, односно можете радити на даљину на другом рачунару, преносити аудио или видео ток преко шифрованог канала итд. Осим тога,
Потврда аутентичности се дешава помоћу лозинке, али програмери и системски администратори традиционално користе ССХ кључеве. Проблем је што приватни кључ може бити украден. Додавање приступне фразе теоретски штити од крађе приватног кључа, али у пракси, приликом прослеђивања и кеширања кључева,
Како имплементирати двофакторску аутентификацију
Програмери из Хонеицомб-а су недавно објавили
Упутства претпостављају да имате одређени основни хост отворен за Интернет (бастион). Желите да се повежете са овим хостом са лаптопа или рачунара преко Интернета и приступите свим другим уређајима који се налазе иза њега. 2ФА осигурава да нападач не може учинити исто чак и ако добије приступ вашем лаптопу, на пример инсталирањем малвера.
Прва опција је ОТП
ОТП - једнократне дигиталне лозинке, које ће се у овом случају користити за ССХ аутентификацију заједно са кључем. Програмери пишу да ово није идеална опција, јер би нападач могао да подигне лажни бастион, пресретне ваш ОТП и искористи га. Али то је боље него ништа.
У овом случају, на страни сервера, следеће линије су уписане у Цхеф конфигурацију:
metadata.rb
attributes/default.rb
(одattributes.rb
)files/sshd
recipes/default.rb
(копија изrecipe.rb
)templates/default/users.oath.erb
Било која ОТП апликација је инсталирана на страни клијента: Гоогле Аутхентицатор, Аутхи, Дуо, Ластпасс, инсталиран brew install oath-toolkit
или apt install oathtool openssl
, онда се генерише насумични низ (кључ) басе16. Конвертује се у Басе32 формат који мобилни аутентификатори користе и увози директно у апликацију.
Као резултат тога, можете се повезати са Бастионом и видети да сада захтева не само приступну фразу, већ и ОТП код за аутентификацију:
➜ ssh -A bastion
Enter passphrase for key '[snip]':
One-time password (OATH) for '[user]':
Welcome to Ubuntu 18.04.1 LTS...
Друга опција је хардверска аутентификација
У овом случају, корисник не мора сваки пут да уноси ОТП код, пошто други фактор постаје хардверски уређај или биометрија.
Овде је конфигурација Цхеф-а мало компликованија, а конфигурација клијента зависи од ОС-а. Али након што заврше све кораке, клијенти на МацОС-у могу да потврде аутентификацију у ССХ користећи приступну фразу и стављајући прст на сензор (други фактор).
Власници иОС-а и Андроид-а потврђују пријаву
На Линук/ЦхромеОС-у постоји опција за рад са ИубиКеи УСБ токенима. Наравно, нападач може украсти ваш токен, али још увек не зна приступну фразу.
Извор: ввв.хабр.цом