OpenSSH-sse on lisatud universaalse kahefaasilise autentimise tugi.

OpenSSH koodibaasi on lisatud eksperimentaalne tugi kahefaktoriaalse autentimise jaoks seadmetega, mis toetavad protokolli U2F, mida arendab ühendus FIDO. U2F võimaldab luua odavaid riistvaralisi tokeneid, et kinnitada kasutaja füüsilist kohalolekut, millega suhtlemine toimub läbi USB, Bluetooth või NFC. Selliseid seadmeid propageeritakse kahefaktorilise autentimise meetodina veebisaitidel, need on juba toetatud peamistes brauserites ning neid toodavad erinevad tootjad, sealhulgas Yubico, Feitian, Thetis ja Kensington.

Kasutajate kohalolu kinnitavate seadmetega suhtlemiseks on OpenSSH-sse lisatud uus võtme tüüp „sk-ecdsa-sha2-nistp256@openssh.com“ („ecdsa-sk“), mis kasutab ECDSA (Elliptic Curve Digital Signature Algorithm) digitaalallkirjastamise algoritmi NIST P-256 elliptilise kõvera ja SHA-256 räsimisega. Suhtlemisprotseduurid tokenitega on eraldi teeki viidud, mis laaditakse sisse sarnaselt PKCS#11 toe teegiga ja on teegi wrapper. libfido2, mis kommunikatsioonivahendeid USB-ülese tokenite jaoks (tugineb protokollidele FIDO U2F/CTAP 1 ja FIDO 2.0/CTAP 2). OpenSSH arendajate poolt ette valmistatud vahemoodul libsk-libfido2 lisatud libfido2 põhikomponentidesse, nagu ka HID-drivers OpenBSD jaoks.

U2F-i lubamiseks saab kasutada värsket koodibaasi lõiget reposiitiumist OpenSSH ja HEAD-haru teegi libfido2, kuhu on juba lisatud vajalik OpenSSH jaoks vajalik kiht.
Libfido2 toetab OpenBSD, Linuxi, macOSi ja Windowsi.

Autentiseerimiseks ja võtme genereerimiseks tuleb seada keskkonnamuutuj SSH_SK_PROVIDER, määrates selle väärtuseks tee libsk-libfido2.so failile (export SSH_SK_PROVIDER=/path/to/libsk-libfido2.so), või määrata teek läbi SecurityKeyProvider seadistuse, seejärel käivitada „ssh-keygen -t ecdsa-sk” või, kui võtmed on juba loodud ja seadistatud, ühenduda serveriga kasutades „ssh”. Käivitamisel ssh-keygen salvestatakse loodud võtmepaar „~/.ssh/id_ecdsa_sk” ja seda saab kasutada nagu teisi võtmeid.

Avalik võti (id_ecdsa_sk.pub) tuleb serverisse kopeerida faili authorized_keys. Serveri küljel kontrollitakse ainult digitaalset allkirja, samas kui suhtlemine tokenitega toimub kliendi küljel (serveris ei ole vaja installida libsk-libfido2, kuid server peab toetama võtme tüüpe „ecdsa-sk”). Genereeritud privaatsõlm (id_ecdsa_sk) on põhimõtteliselt võtme descriptor, mis moodustab reaalse võtme ainult koos U2F tokeni peidetud järjestusega.

Kui ründaja pääseb käsipidi id_ecdsa_sk võtmele, vajab ta autentimiseks ka juurdepääsu riistvara tokenile, ilma milleta on id_ecdsa_sk failis salvestatud privaatvõti kasutuks. Lisaks on vaikimisi võtmete kasutamisel (nii genereerimise kui ka autentimise ajal) vajalik kohaliku kasutaja füüsilise kohaloleku kinnitus, näiteks palutakse puudutada tokenil andurit, mis muudab eemalt rünnakute teostamise süsteemidesse, kus token on ühendatud, keerulisemaks. Veel üheks kaitsekihiks ssh-keygen käivitamisel võib olla parool, mis on määratud võtmefaili juurdepääsuks.

U2F võti saab lisada ssh-agent'i käsuga «ssh-add ~/.ssh/id_ecdsa_sk», kuid ssh-agent tuleb koostada toega «ecdsa-sk» võtmete jaoks, peab olema olemas libsk-libfido2 kiht ja agent peab töötama süsteemis, kuhu token on ühendatud.
Uus võtme tüüp «ecdsa-sk» on lisatud, kuna OpenSSH ecdsa võtmete formaat erineb U2F digitaalsete allkirjade ECDSA formaadist, sisaldades täiendavaid välju.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster