Rhyddhau OpenSSH 8.2 gyda chefnogaeth ar gyfer tocynnau dilysu dau ffactor FIDO/U2F

Ar ôl pedwar mis o ddatblygiad wedi'i gyflwyno rhyddhau OpenSSH 8.2, cleient agored a gweithrediad gweinydd ar gyfer gweithio trwy'r protocolau SSH 2.0 a SFTP.

Gwelliant allweddol yn y datganiad OpenSSH 8.2 oedd y gallu i ddefnyddio dilysiad dau ffactor gyda dyfeisiau sy'n cefnogi'r protocol. U2F, a ddatblygwyd gan y gynghrair FIDO. Mae U2F yn caniatáu creu tocynnau caledwedd cost isel i wirio presenoldeb corfforol y defnyddiwr, gan ryngweithio â nhw trwy USB, Bluetooth neu NFC. Mae dyfeisiau o'r fath yn cael eu hyrwyddo fel ffordd o ddilysu dau ffactor ar wefannau, maent eisoes yn cael eu cefnogi gan borwyr mawr ac yn cael eu cynhyrchu gan wneuthurwyr amrywiol, gan gynnwys Yubico, Feitian, Thetis a Kensington.

Er mwyn rhyngweithio â dyfeisiau sy'n cadarnhau presenoldeb y defnyddiwr, mae OpenSSH wedi ychwanegu mathau newydd o allweddi, "ecdsa-sk" ac "ed25519-sk," sy'n defnyddio algorithmau llofnod digidol ECDSA ac Ed25519 ar y cyd â'r hash SHA-256. Mae gweithdrefnau ar gyfer rhyngweithio â thocynnau wedi'u symud i lyfrgell ganolradd, sy'n cael ei llwytho'n debyg i lyfrgell gymorth PKCS#11 ac yn gweithredu fel lapio o amgylch y llyfrgell. libfido2, sy'n darparu offer ar gyfer cyfathrebu â thocynnau dros USB (cefnogir protocolau FIDO U2F/CTAP 1 a FIDO 2.0/CTAP 2). Llyfrgell ganolraddol libsk-libfido2 wedi'i baratoi gan ddatblygwyr OpenSSH wedi'i gynnwys i mewn i'r libfido2 craidd, yn ogystal â gyrrwr HID ar gyfer OpenBSD.

I ddilysu a chynhyrchu allwedd, rhaid i chi nodi'r paramedr "SecurityKeyProvider" yn y gosodiadau neu osod y newidyn amgylcheddol SSH_SK_PROVIDER, gan nodi'r llwybr i'r llyfrgell allanol libsk-libfido2.so (allforio SSH_SK_PROVIDER=/path/to/libsk-libfido2.so). Gellir adeiladu OpenSSH gyda chefnogaeth adeiledig ar gyfer y llyfrgell ganolradd (--with-security-key-builtin); yn yr achos hwn, rhaid i chi osod y paramedr "SecurityKeyProvider=internal".
Nesaf, rhedwch "ssh-keygen -t ecdsa-sk" neu, os yw'r allweddi eisoes wedi'u creu a'u ffurfweddu, cysylltwch â'r gweinydd gan ddefnyddio "ssh." Pan fyddwch chi'n rhedeg ssh-keygen, bydd y pâr allweddi a gynhyrchwyd yn cael ei gadw yn "~/.ssh/id_ecdsa_sk" a gellir ei ddefnyddio fel allweddi eraill.

Dylid copïo'r allwedd gyhoeddus (id_ecdsa_sk.pub) i'r ffeil authorized_keys ar y gweinydd. Dim ond y llofnod digidol y mae'r gweinydd yn ei wirio, tra bod rhyngweithio tocyn yn digwydd ar y cleient (nid oes angen gosod libsk-libfido2 ar y gweinydd, ond rhaid i'r gweinydd gefnogi'r math allwedd "ecdsa-sk"). Yn ei hanfod, mae'r allwedd breifat a gynhyrchir (id_ecdsa_sk) yn ddisgrifiwr allwedd sy'n ffurfio allwedd go iawn dim ond pan gaiff ei chyfuno â'r dilyniant cyfrinachol sydd wedi'i storio ar y tocyn U2F. Os bydd ymosodwr yn cael yr allwedd id_ecdsa_sk, bydd angen mynediad iddynt hefyd i'r tocyn caledwedd i ddilysu, a heb hynny mae'r allwedd breifat sydd wedi'i storio yn y ffeil id_ecdsa_sk yn ddiwerth.

Ar ben hynny, yn ddiofyn, mae angen cadarnhad lleol o bresenoldeb corfforol y defnyddiwr ar bob gweithrediad allweddol (cynhyrchu a dilysu), fel cyffwrdd â synhwyrydd ar y tocyn, gan ei gwneud hi'n anodd cynnal ymosodiadau o bell ar systemau sydd â thocyn cysylltiedig. Fel haen ychwanegol o ddiogelwch, gellir gosod cyfrinair ar gyfer cyrchu'r ffeil allweddol hefyd yn ystod cychwyn ssh-keygen.

Cyhoeddodd y fersiwn newydd o OpenSSH hefyd y bydd algorithmau sy'n defnyddio hashes SHA-1 yn cael eu diddymu oherwydd dyrchafiad effeithiolrwydd ymosodiadau gwrthdrawiad gyda rhagddodiad penodol (amcangyfrifir y gost o ddewis gwrthdrawiad tua 45 mil o ddoleri). Yn un o'r datganiadau sydd i ddod, maent yn bwriadu analluogi yn ddiofyn y gallu i ddefnyddio'r algorithm llofnod digidol allweddol cyhoeddus “ssh-rsa”, a grybwyllir yn y RFC gwreiddiol ar gyfer y protocol SSH ac sy'n parhau i fod yn eang yn ymarferol (i brofi'r defnydd o ssh-rsa yn eich systemau, gallwch geisio cysylltu trwy ssh gyda'r opsiwn “-oHostKeyAlgorithms= -ssh-rsa”).

Er mwyn llyfnhau'r newid i algorithmau newydd yn OpenSSH, mewn datganiad yn y dyfodol bydd y gosodiad UpdateHostKeys yn cael ei alluogi yn ddiofyn, a fydd yn mudo cleientiaid yn awtomatig i algorithmau mwy dibynadwy. Mae'r algorithmau a argymhellir ar gyfer mudo yn cynnwys rsa-sha2-256/512 yn seiliedig ar RFC8332 RSA SHA-2 (a gefnogir ers OpenSSH 7.2 ac a ddefnyddir yn ddiofyn), ssh-ed25519 (a gefnogir ers OpenSSH 6.5) ac ecdsa-sha2-nistp256/384/521 seiliedig ar RFC5656 ECDSA (a gefnogir ers OpenSSH 5.7).

Mae OpenSSH 8.2 yn dal i gefnogi cysylltu gan ddefnyddio "ssh-rsa," ond mae'r algorithm hwn wedi'i dynnu o'r rhestr CASignatureAlgorithms, sy'n diffinio'r algorithmau a ganiateir ar gyfer llofnodi tystysgrifau newydd yn ddigidol. Yn yr un modd, mae'r algorithm diffie-hellman-group14-sha1 wedi'i dynnu o'r algorithmau cyfnewid allweddi diofyn a gefnogir. Nodir bod defnyddio SHA-1 mewn tystysgrifau yn cario risg ychwanegol, gan fod gan ymosodwr amser diderfyn i ddod o hyd i wrthdrawiad ar gyfer tystysgrif sy'n bodoli eisoes, tra bod ymosodiadau ar allweddi gwesteiwr yn gyfyngedig gan yr amser terfyn cysylltiad (LoginGraceTime).

Wrth redeg ssh-keygen, mae'r algorithm rsa-sha2-512, a gefnogir ers OpenSSH 7.2, bellach yn cael ei ddefnyddio yn ddiofyn, a all greu problemau cydnawsedd wrth geisio prosesu tystysgrifau wedi'u llofnodi gan OpenSSH 8.2 ar systemau sy'n rhedeg fersiynau hŷn o OpenSSH (i osgoi'r broblem hon, gallwch nodi "ssh-keygen -t ssh-rsa" yn benodol wrth gynhyrchu'r llofnod, neu ddefnyddio'r algorithmau ecdsa-sha2-nistp256/384/521 a gefnogir ers OpenSSH 5.7).

Newidiadau eraill:

  • Mae'r gyfarwyddeb Include wedi'i hychwanegu at sshd_config, gan ganiatáu i gynnwys ffeiliau eraill gael eu cynnwys yn safle presennol y ffeil ffurfweddu (gellir defnyddio masgiau glob wrth nodi enw'r ffeil);
  • Mae'r opsiwn "dim angen cyffwrdd" wedi'i ychwanegu at ssh-keygen, sy'n analluogi'r angen am gadarnhad corfforol o fynediad i'r tocyn wrth gynhyrchu allwedd;
  • Mae'r gyfarwyddeb PubkeyAuthOptions wedi'i hychwanegu at sshd_config, gan gydgrynhoi amrywiol opsiynau sy'n gysylltiedig â dilysu allweddi cyhoeddus. Ar hyn o bryd, dim ond y faner "dim-cyffyrddiad-required" sy'n cael ei chefnogi, gan ganiatáu hepgor y gwiriad presenoldeb corfforol yn ystod dilysu tocynnau. Yn yr un modd, mae'r opsiwn "dim-cyffyrddiad-required" wedi'i ychwanegu at y ffeil authorized_keys.
  • Mae'r opsiwn "-O write-attestation=/path" wedi'i ychwanegu at ssh-keygen, gan ganiatáu i dystysgrifau ardystio FIDO ychwanegol gael eu hysgrifennu wrth gynhyrchu allweddi. Nid yw OpenSSH yn defnyddio'r tystysgrifau hyn ar hyn o bryd, ond gellir eu defnyddio yn y dyfodol i wirio bod yr allwedd wedi'i storio mewn storfa caledwedd ddibynadwy.
  • Yn y gosodiadau ssh ac sshd, mae bellach yn bosibl gosod y modd blaenoriaethu traffig trwy'r gyfarwyddeb IPQoS. LE DSCP (Ymddygiad Ymdrech Isel Fesul Naid);
  • Yn ssh, wrth osod y gwerth "AddKeysToAgent=yes", os nad yw'r allwedd yn cynnwys maes sylwadau, caiff ei hychwanegu at yr ssh-agent gyda'r llwybr i'r allwedd wedi'i nodi fel sylw.
    Mae ssh-keygen ac ssh-agent bellach hefyd yn defnyddio labeli PKCS#11 ac enw pwnc X.509 fel sylwadau yn yr allwedd yn lle llwybr y llyfrgell;
  • Ychwanegwyd y gallu i allforio PEM ar gyfer allweddi DSA ac ECDSA i ssh-keygen;
  • Ychwanegwyd ffeil weithredadwy newydd ssh-sk-helper, a ddefnyddir i ynysu mynediad y llyfrgell i docynnau FIDO/U2F;
  • Ychwanegwyd opsiwn adeiladu "--with-zlib" i ssh ac sshd ar gyfer llunio gyda chefnogaeth llyfrgell zlib;
  • Yn unol ag RFC 4253, mae rhybudd am fynediad yn cael ei rwystro oherwydd mynd y tu hwnt i'r terfyn MaxStartups bellach yn cael ei arddangos yn y faner cysylltiad. Er mwyn symleiddio diagnosteg, mae pennawd y broses sshd, sy'n weladwy gan ddefnyddio'r cyfleustodau ps, bellach yn arddangos nifer y cysylltiadau sydd wedi'u dilysu ar hyn o bryd a statws y terfyn MaxStartups.
  • Yn ssh ac ssh-agent, wrth alw rhaglen i arddangos gwahoddiad ar y sgrin, a bennir trwy $SSH_ASKPASS, mae baner gyda'r math o wahoddiad bellach yn cael ei basio hefyd: “confirm” — deialog cadarnhau (ie/na), “dim” — neges wybodaeth, “blank” — cais am gyfrinair;
  • Mae gweithrediad llofnod digidol newydd "find-principals" wedi'i ychwanegu at ssh-keygen i chwilio'r ffeil allowed-signers am y defnyddiwr sy'n gysylltiedig â'r llofnod digidol penodedig;
  • Улучшена поддержка изоляции процесса sshd в Linux при помощи механизма seccomp: запрещены системные вызовы IPC, разрешены clock_gettime64(), clock_nanosleep_time64 и clock_nanosleep().

Ffynhonnell: opennet.ru

Prynu gwesteio dibynadwy ar gyfer gwefannau sydd â diogelwch DDoS, gweinyddwyr VPS VDS 🔥 Prynu cynnal gwefannau dibynadwy gyda diogelwch DDoS, gweinyddion VPS VDS | ProHoster