OpenSSH-ում ավելացվել է համընդհանուր երկբարձրաքանակAuthenticator-ի աջակցություն

OpenSSH-ի կոդային բազա աշխարհագրական կախվածությունների դինամիկ հավաքման աջակցություն, որոնք ներառվել են src.rpm-ում։ Spec ֆոլդերում ավելացրել են «%generate_buildrequires» բաժնի աջակցություն, որի բովանդակությունը մշակվում է որպես կախվածությունների ցանկ (BuildRequires), որը պետք է ստուգվի (եթե կախվածությունը բացակայում է, ցուցակվում է սխալ): եքսպերիմենտալ աջակցության երկֆակտորային հեղինակություն օգտագործելով սարքեր, որոնք աջակցում են արձանագրությանը U2F, որը մշակվում է FIDO-ի կողմից։ U2F-ն ապահովում է ծախսերատու硬件 տոկենների ստեղծում, որոնք հաստատում են օգտվողի ֆիզիկական առկայությունը, և նրանց հետ փոխազդելու գործընթացը կատարվում է USB, Bluetooth կամ NFC-ի միջոցով։ Այդպիսի սարքերը առաջարկվում են որպես մարդիկ ֆակտորային ինքնազրույցի միջոցներ կայքերում, արդեն աջակցվում են հիմնական զննարկիչների կողմից և թողարկվում են տարբեր արտադրողների կողմից, այդ թվում՝ Yubico, Feitian, Thetis և Kensington:

Օգտագործողի ներկայությունը հաստատող սարքերի հետ փոխազդելու համար OpenSSH-ում ավելացել է «sk-ecdsa-sha2-nistp256@openssh.com» («ecdsa-sk») նոր տեսակի բանալիների տեսակ, որը օգտագործում է ECDSA (Elliptic Curve Digital Signature Algorithm) թվային ստորագրության ալգորիթմը NIST P-256 էկլիպտիկական կորով և SHA-256 հեշով։ Սքանավորման ընթացակարգերը տեղափոխված են միջանկյալ գրադարան, որը ներբեռնվում է PKCS#11 աջակցության գրադարանի հետագծման նմանությամբ և հանդիսանում է գրադարանային գծապատկեր。 libfido2, որը տրամադրում է հաղորդակցման միջոցներ USB-ի վրա տոկենների հետ (դրանք աջակցում են FIDO U2F/CTAP 1 և FIDO 2.0/CTAP 2 պրոտոկոլները)։ OpenSSH-ի մշակողներն այս միջանկյալ գրադարանը ընդգրկել են libfido2-ի հիմնական կազմի մեջ, ինչպես նաև մտցված է HID-դրայվեր OpenBSD-ի համար։ Ինքնազրույցի և բանալի ստեղծելու համար անհրաժեշտ է կարգաբերել «SecurityKeyProvider» պարամետրը կամ կարգավորումային միջավայրի SSH_SK_PROVIDER փոփոխականը նշելով արտաքին libsk-libfido2.so գրադարանի ճանապարհը (export SSH_SK_PROVIDER=/path/to/libsk-libfido2.so)։ Հնարավոր է նաև openssh-ի կառուցում, որն ունի ինտեգրված միջոցների աջակցություն (—with-security-key-builtin), այս դեպքում անհրաժեշտ է կարգաբերել «SecurityKeyProvider=internal» պարամետրը:

U2F-ը հնարավոր է ակտիվացնել նորագույն կոդային բազայի կտրող օգտագործելով ռեպոզիտարը OpenSSH և HEAD-հետ branch գրադարան libfido2, որը ներառում է OpenSSH-ի համար անհրաժեշտ շերտը։
Libfido2-ն աջակցում է աշխատանքին OpenBSD, Linux, macOS և Windows-ում։

Հեղինակության և բանալիի սերսումը անհրաժեշտ է սահմանել SSH_SK_PROVIDER միջավայրի փոփոխականը, նշելով դրա մեջ libsk-libfido2.so-ին հասցեն (export SSH_SK_PROVIDER=\/path\/to\/libsk-libfido2.so), կամ որոշել գրադարանը SecurityKeyProvider-ի վերականգնմամբ, հետո գործարկել «ssh-keygen -t ecdsa-sk» կամ, եթե բանալիները արդեն ստեղծված և կարգավորվել են, կապվել սերվերին «ssh» միջոցով։ ssh-keygen գործարկելու դեպքում ստեղծված բանալիների զույգը պահպանվելու է «~\/ .ssh\/id_ecdsa_sk» մեջ և կարող է օգտագործվել այնպես, ինչպես otras բանալիները։

Բաժանված բանալին (id_ecdsa_sk.pub) պետք է կրկնօրինակվի սերվերում සඳහා authorized_keys ֆայլում։ Սերվերի կողմից միայն ստուգվում է թվային ստորագրությունը, իսկ թոկենների հետ փոխազդումը կատարվում է հաճախորդի կողմից (սերվերում պետք չէ տեղադրել libsk-libfido2, բայց սերվերը պետք է աջակցի «ecdsa-sk» բանալիների տեսակին)։ Գերիշխան փակ բանալին (id_ecdsa_sk) իրականում այն բանալիի դեսկրիպտորն է, որը կազմում է իրական բանալին միայն U2F-ի կողմից պահվող գաղտնի հաջորդականությանը զուգակցված։

Եթե key id_ecdsa_sk-ը ընկնի մի հանցագործի ձեռքերի, ապա նրա համար ավտորիզացումը իրականացնելու համար անհրաժեշտ է նաև մուտք գործել սարքային տոկեն, առանց որի ֆայլում պահպանված id_ecdsa_sk փակ բանալին անօգտակար է: Բացի այդ, ցանկացած բանալիով գործողություններ կատարելիս (ինչպես արտադրության, այնպես էլ ավտորիզացման ժամանակ) անհրաժեշտ է տեղական հաստատման ֆիզիկական ներկայություն, օրինակ, առաջարկվում է ճզմել տոկենի սենսորը, ինչը դժվարացնում է հեռահար հարձակումները token-ով առկա համակարգերի վրա: Այլ պաշտպանական շեմը ssh-keygen-ի գործարկման փուլում կարող է նաև սահմանվել գաղտապահևի հասանելիության գաղտնաբառը:

U2F բանալին կարող է ավելացվել ssh-agent-ի մեջ՝ «ssh-add ~/ .ssh /id_ecdsa_sk» միջոցով, բայց ssh-agent-ը պետք է հավաքված լինի «ecdsa-sk» բանալիների աջակցությամբ, անհրաժեշտ է libsk-libfido2 միջանկյալ շերտ և գործակալը պետք է գործի համակարգում, որի հետ միանում է տոկենը:
Նոր «ecdsa-sk» բանալիների տեսակը ավելացված է, քանի որ OpenSSH ecdsa-բանակային ձևաչափը տարբերվում է U2F-ի ECDSA թվային ստորագրությունների ձևաչափից՝ լրացուցիչ դաշտերի առկայությամբ:

Ընտանիք: opennet.ru

Գնել հուսալի հյուրընկալում DDoS պաշտպանությամբ, VPS VDS սերվերներով 🔥 Գնել հուսալի հյուրընկալում DDoS պաշտպանությամբ, VPS VDS սերվերներով | ProHoster