FIDO/U8.2F екі факторлы аутентификация токендерін қолдауымен OpenSSH 2 шығарылымы

Төрт айлық дамудан кейін ұсынылды босату OpenSSH 8.2, SSH 2.0 және SFTP протоколдары арқылы жұмыс істеуге арналған ашық клиент пен серверді іске асыру.

OpenSSH 8.2 шығарылымындағы маңызды жақсарту протоколды қолдайтын құрылғылармен екі факторлы аутентификацияны пайдалану мүмкіндігі болды. U2F, альянс әзірлеген FIDOU2F пайдаланушының физикалық қатысуын тексеру үшін, олармен USB, Bluetooth немесе NFC арқылы өзара әрекеттесу үшін арзан аппараттық таңбалауыштарды жасауға мүмкіндік береді. Бұл құрылғылар веб-сайттарда екі факторлы аутентификация құралы ретінде алға жылжытылады, олар қазірдің өзінде негізгі браузерлерде қолдау көрсетеді және әртүрлі өндірушілер, соның ішінде Yubico, Feitian, Thetis және Kensington шығарған.

Пайдаланушының қатысуын растайтын құрылғылармен өзара әрекеттесу үшін OpenSSH жаңа кілт түрлерін, «ecdsa-sk» және «ed25519-sk» қосты, олар ECDSA және Ed25519 цифрлық қолтаңба алгоритмдерін SHA-256 хэшімен үйлестіре пайдаланады. Токендермен әрекеттесу процедуралары PKCS#11 қолдау кітапханасына ұқсас жүктелетін және кітапхана айналасында орауыш ретінде әрекет ететін аралық кітапханаға жылжытылды. libfido2, ол USB арқылы таңбалауыштармен байланысу құралдарын қамтамасыз етеді (FIDO U2F/CTAP 1 және FIDO 2.0/CTAP 2 протоколдарына қолдау көрсетіледі). OpenSSH әзірлеушілері дайындаған libsk-libfido2 аралық кітапханасы, енгізілген libfido2 негізгі құрамына, сондай-ақ HID драйвері OpenBSD үшін.

Кілтті аутентификациялау және генерациялау үшін параметрлерде "SecurityKeyProvider" параметрін көрсету керек немесе libsk-libfido2.so сыртқы кітапханасына жолды көрсете отырып, SSH_SK_PROVIDER ортасының айнымалы мәнін орнату керек (SSH_SK_PROVIDER=/path/to/libsk-libfido2.so экспорттау). OpenSSH делдал кітапханасының кірістірілген қолдауымен құрастырылуы мүмкін (--қауіпсіздік кілті-кіріктірілген); бұл жағдайда "SecurityKeyProvider=internal" параметрін орнату керек.
Содан кейін «ssh-keygen -t ecdsa-sk» іске қосыңыз немесе кілттер әлдеқашан жасалып, конфигурацияланған болса, «ssh» арқылы серверге қосылыңыз. ssh-keygen іске қосқан кезде, жасалған кілттер жұбы "~/.ssh/id_ecdsa_sk" ішінде сақталады және оны басқа кілттер сияқты пайдалануға болады.

Ашық кілт (id_ecdsa_sk.pub) сервердегі авторизацияланған_кілттер файлына көшірілуі керек. Сервер тек цифрлық қолтаңбаны тексереді, бұл ретте таңбалауыш өзара әрекеттесу клиентте орын алады (libsk-libfido2 серверде орнатылуы қажет емес, бірақ сервер «ecdsa-sk» кілт түрін қолдауы керек). Жасалған жеке кілт (id_ecdsa_sk) негізінен U2F таңбалауышында сақталған құпия реттілікпен біріктірілгенде ғана нақты кілтті құрайтын негізгі дескриптор болып табылады. Егер шабуылдаушы id_ecdsa_sk кілтін алса, оларға аутентификация үшін аппараттық таңбалауышқа рұқсат қажет болады, онсыз id_ecdsa_sk файлында сақталған жеке кілт пайдасыз болады.

Сонымен қатар, әдепкі бойынша барлық негізгі әрекеттер (генерациялау және аутентификация) пайдаланушының физикалық қатысуын жергілікті растауды талап етеді, мысалы, токендегі сенсорды түрту, бұл қосылған токені бар жүйелерге қашықтан шабуыл жасауды қиындатады. Қауіпсіздіктің қосымша деңгейі ретінде ssh-keygen іске қосу кезінде негізгі файлға кіру құпия сөзін орнатуға болады.

OpenSSH жаңа нұсқасы сонымен бірге SHA-1 хэштерін пайдаланатын алгоритмдердің ескіруі туралы хабарлады. жылжыту берілген префикспен соқтығысқан шабуылдардың тиімділігі (соқтығысты таңдау құны шамамен 45 мың долларға бағаланады). Алдағы шығарылымдардың бірінде олар SSH хаттамасы үшін бастапқы RFC-де айтылған және практикада кеңінен таралған (пайдалануды тексеру үшін) «ssh-rsa» сандық қолтаңбасының ашық кілтін пайдалану мүмкіндігін әдепкі бойынша өшіруді жоспарлап отыр. Жүйелеріңізде ssh-rsa файлын пайдалансаңыз, «-oHostKeyAlgorithms=-ssh-rsa» опциясымен ssh арқылы қосылуға болады).

OpenSSH жүйесінде жаңа алгоритмдерге ауысуды тегістеу үшін болашақ шығарылымда UpdateHostKeys параметрі әдепкі бойынша қосылады, ол клиенттерді сенімдірек алгоритмдерге автоматты түрде көшіреді. Тасымалдау үшін ұсынылған алгоритмдерге RFC2 RSA SHA-256 негізіндегі rsa-sha512-8332/2 (OpenSSH 7.2 нұсқасынан бері қолдау көрсетіледі және әдепкі бойынша пайдаланылады), ssh-ed25519 (OpenSSH 6.5 нұсқасынан бері қолдау көрсетіледі) және ecdsa-sha2-nistp256/384 негізіндегі алгоритмдер кіреді. RFC521 ECDSA (OpenSSH 5656 нұсқасынан бері қолдау көрсетіледі).

OpenSSH 8.2 әлі де "ssh-rsa" арқылы қосылуды қолдайды, бірақ бұл алгоритм жаңа сертификаттарға сандық қол қоюға рұқсат етілген алгоритмдерді анықтайтын CASignatureAlgorithms тізімінен жойылды. Сол сияқты, diffie-hellman-group14-sha1 алгоритмі қолдау көрсетілетін әдепкі кілт алмасу алгоритмдерінен жойылды. Сертификатта SHA-1-ді пайдалану қосымша қауіп төндіретіні атап өтіледі, өйткені шабуылдаушыда бар сертификат үшін коллизияны табу үшін шексіз уақыт бар, ал хост кілттеріне шабуылдар қосылым күту уақытымен шектеледі (LoginGraceTime).

ssh-keygen іске қосқан кезде, OpenSSH 7.2 нұсқасынан бері қолдау көрсетілетін rsa-sha2-512 алгоритмі енді әдепкі бойынша пайдаланылады, ол OpenSSH 8.2 қол қойылған сертификаттарды ескі OpenSSH шығарылымдарымен жұмыс істейтін жүйелерде өңдеуге әрекет жасағанда үйлесімділік мәселелерін тудыруы мүмкін (осы мәселені шешу үшін "ssh-keygen - generating - generating sign -" белгісін нақты көрсетуге болады. ecdsa-sha2-nistp256/384/521 алгоритмдеріне OpenSSH 5.7 нұсқасынан бері қолдау көрсетіледі).

Басқа өзгерістер:

  • Include директивасы sshd_config файлына қосылды, бұл басқа файлдардың мазмұнын конфигурация файлының ағымдағы орнына қосуға мүмкіндік береді (файл атауын көрсету кезінде глоб маскаларын пайдалануға болады);
  • ssh-keygen-ге «жоқ тию қажет емес» опциясы қосылды, ол кілтті жасау кезінде таңбалауышқа қол жеткізуді физикалық растау қажеттілігін өшіреді;
  • PubkeyAuthOptions директивасы sshd_config файлына қосылып, ашық кілт аутентификациясына қатысты әртүрлі опцияларды біріктіреді. Қазіргі уақытта таңбалауыштың аутентификациясы кезінде физикалық қатысуды тексеруді өткізіп жіберуге мүмкіндік беретін «қол тигізу қажет емес» жалаушасына ғана қолдау көрсетіледі. Сол сияқты, авторизацияланған_кілттер файлына "сенсу қажет емес" опциясы қосылды.
  • "-O write-attestation=/path" опциясы ssh-keygen файлына қосылды, бұл кілттерді жасау кезінде қосымша FIDO аттестаттау сертификаттарын жазуға мүмкіндік береді. OpenSSH бұл сертификаттарды қазір пайдаланбайды, бірақ олар болашақта кілттің сенімді аппараттық жадта сақталғанын тексеру үшін пайдаланылуы мүмкін.
  • Ssh және sshd параметрлерінде енді IPQoS директивасы арқылы трафикті басымдық режимін орнатуға болады. LE DSCP (Төменгі күш-қуат пер-хоп мінез-құлқы);
  • ssh ішінде "AddKeysToAgent=yes" мәнін орнату кезінде кілтте түсініктеме өрісі болмаса, ол ssh-агентке түсініктеме ретінде көрсетілген кілт жолы арқылы қосылады.
    ssh-keygen және ssh-agent енді кітапхана жолының орнына PKCS#11 белгілерін және X.509 тақырып атауын кілтте түсініктеме ретінде пайдаланады;
  • DSA және ECDSA кілттеріне арналған PEM-ді ssh-keygen-ге экспорттау мүмкіндігі қосылды;
  • FIDO/U2F таңбалауыштарына кітапханаға кіруді оқшаулау үшін пайдаланылатын ssh-sk-helper жаңа орындалатын файлы қосылды;
  • Zlib кітапханасының қолдауымен компиляциялау үшін ssh және sshd-ге "--with-zlib" құрастыру опциясы қосылды;
  • RFC 4253 стандартына сәйкес, енді қосылым баннерінде MaxStartups шегінен асып кетуіне байланысты кіруге тыйым салынғаны туралы ескерту көрсетіледі. Диагностиканы жеңілдету үшін ps қызметтік бағдарламасы арқылы көрінетін sshd процесінің тақырыбы қазір аутентификацияланған қосылымдардың санын және MaxStartups шектеу күйін көрсетеді.
  • ssh және ssh-агентте $SSH_ASKPASS арқылы көрсетілген шақыруды экранда көрсету үшін бағдарламаны шақырған кезде шақыру түрі бар жалауша енді қосымша беріледі: «растау» — растау диалогы (иә/жоқ), «жоқ» — ақпараттық хабарлама, «бос» — құпия сөзді сұрау;
  • Көрсетілген сандық қолтаңбамен байланыстырылған пайдаланушы үшін рұқсат етілген қол қоюшылар файлын іздеу үшін ssh-keygen жүйесіне жаңа цифрлық қолтаңба операциясы, "негіздерді табу" қосылды;
  • Улучшена поддержка изоляции процесса sshd в Linux при помощи механизма seccomp: запрещены системные вызовы IPC, разрешены clock_gettime64(), clock_nanosleep_time64 и clock_nanosleep().

Ақпарат көзі: opennet.ru

DDoS қорғауы бар сайттар үшін сенімді хостинг, VPS VDS серверлерін сатып алыңыз 🔥 DDoS қорғанысы, VPS VDS серверлері бар сенімді веб-сайт хостингін сатып алыңыз | ProHoster