Ka taapirihia e OpenSSH te tautoko mo te motuhēhēnga-rua-rua

Ki te turanga waehere OpenSSH tāpirihia tautoko whakamatautau mo te whakamotuhēhēnga-rua ma te whakamahi i nga taputapu e tautoko ana i te kawa U2F, i whakawhanakehia e te hononga FIDO. Ka taea e U2F te hanga tohu taputapu iti-utu ki te manatoko i te noho tinana o te kaiwhakamahi, te taunekeneke ki a raatau ma te USB, Nihokikorangi, NFC ranei. Ko enei taputapu e whakatairangahia ana hei huarahi mo te whakamotuhēhēnga-rua i runga i nga paetukutuku, kua tautokohia e nga kaitirotiro nui, ka hangaia e nga momo kaihanga, tae atu ki a Yubico, Feitian, Thetis me Kensington.

Hei taunekeneke me nga taputapu e whakaū ana i te noho mai o te kaiwhakamahi, kua taapirihia he momo taviri hou ki OpenSSH "[email tiakina]"("ecdsa-sk"), e whakamahi ana i te ECDSA (Elliptic Curve Digital Signature Algorithm) waitohu tohu algorithm me te NIST P-256 elliptic curve me SHA-256 hash. Ko nga tikanga mo te taunekeneke me nga tohu ka tukuna ki roto i te whare pukapuka takawaenga, he rite te utaina ki te whare pukapuka mo te tautoko PKCS#11, he takai kei runga ake o te whare pukapuka. libfido2, e whakarato ana i nga taputapu mo te whakawhitiwhiti me nga tohu i runga i te USB (FIDO U2F / CTAP 1 me FIDO 2.0 / CTAP 2 kawa e tautokohia ana). Ko te whare pukapuka takawaenga libsk-libfido2 i whakaritea e nga kaihanga OpenSSH whakauru ki te libfido2 matua, me taraiwa HID mo OpenBSD.

Kia taea ai te U2F, ka taea e koe te whakamahi i tetahi waahanga hou o te turanga waehere mai putunga OpenSSH me te peka HEAD o te whare pukapuka libfido2, kei roto kē te paparanga e tika ana mo OpenSSH.
Kei te tautoko a Libfido2 i te OpenBSD, Linux, macOS me Windows.

Hei whakamotuhēhē me te whakaputa i tētahi kī, me tautuhi koe i te taurangi taiao SSH_SK_PROVIDER, ka tohu i roto i te ara ki te libsk-libfido2.so (kaweake SSH_SK_PROVIDER=/path/to/libsk-libfido2.so), tautuhia ranei te whare pukapuka ma te SecurityKeyProvider tautuhinga, ka rere "ssh- keygen -t ecdsa-sk" ranei, ki te mea kua oti te hanga me te whirihora nga taviri, hono atu ki te tūmau ma te whakamahi "ssh". Ina whakahaere koe i te ssh-keygen, ka tiakina te takirua matua i hangaia ki "~/.ssh/id_ecdsa_sk" ka taea te whakamahi rite ki etahi atu taviri.

Me tārua te kī tūmatanui (id_ecdsa_sk.pub) ki te tūmau i roto i te kōnae authorized_keys. I te taha tūmau, ko te waitohu mamati anake ka whakamanahia, ka mahihia te taunekeneke me nga tohu ki te taha o te kiritaki (kaore koe e hiahia ki te whakauru i te libsk-libfido2 ki runga i te tūmau, engari me tautoko te tūmau i te momo matua "ecdsa-sk") . Ko te taviri motuhake i hangaia (id_ecdsa_sk) he kakau matua, ka hanga he matua mau anake me te raupapa huna e rongoa ana ki te taha tohu U2F.

Mēnā ka taka te kī id_ecdsa_sk ki te ringa o te kaitukino, ki te tuku motuhēhēnga me uru atu ano ia ki te tohu taputapu, me te kore e whai hua te kī tūmataiti kei roto i te konae id_ecdsa_sk. I tua atu, ma te taunoa, i te wa e mahi ana i nga mahi me nga taviri (i te wa o te whakatipuranga me te wa whakamotuhēhēnga), ka hiahiatia te whakapumautanga a-rohe o te noho tinana o te kaiwhakamahi, hei tauira, ka whakaarohia kia pa atu ki te puoro i runga i te tohu, he uaua ki te mahi. kawe i nga whakaeke mamao ki nga punaha me te tohu hono. Hei rarangi whakamarumaru ano, ka taea hoki te tautuhi i tetahi kupuhipa i te wa o te timatanga o te ssh-keygen ki te uru atu ki te konae matua.

Ka taea te taapiri U2F ki te ssh-agent ma te "ssh-add ~/.ssh/id_ecdsa_sk", engari me hanga ssh-agent me te tautoko mo nga taviri "ecdsa-sk", me noho te paparanga libsk-libfido2 me te Me whakahaere te kaihoko i runga i te punaha, e hono ana te tohu.
He momo matua hou "ecdsa-sk" kua taapirihia mai i te mea he rereke te whakatakotoranga o nga taviri ecdsa OpenSSH i te whakatakotoranga U2F mo nga hainatanga mamati ECDSA i te aroaro o etahi atu mara.

Source: opennet.ru

Tāpiri i te kōrero