Mae’r gwall hwn yn cyrraedd cyn yr anogwr cyfrinair, a dyna’r rhan ddefnyddiol: nid oes dim wedi dilysu eto, felly nid yr enw defnyddiwr a’r cyfrinair yw’r broblem. Ar Linux gall yr un dialog AnyConnect ddod o hen fersiwn protocol, grŵp cyfnewid allweddi 1024-bit, neu gyfuniad seiffr y mae polisi crypto’r system yn ei wrthod. Rwyf wedi ei glirio mewn tair ffordd wahanol ar dair peiriant, a’r hyn sy’n gwahanu’r atebion hynny yw cwmpas yr effaith, nid cyfrwystra. Mae pob un yn amddiffynadwy yn y lle iawn ac yn ddewis diofyn drwg ym mhobman arall.

Darllenwch y neges cyn cyffwrdd y polisi

Cadwch yr union linyn o’r dialog. Mae cwyn fersiwn yn cyfeirio at haen y protocol, mae cwyn tystysgrif yn cyfeirio at ymddiriedaeth neu enwi, ac mae methiant mewngofnodi yn cyfeirio at enw defnyddiwr a chyfrinair. Gall porth sy’n cynnig TLS 1.0 gyda grŵp DHE 1024-bit, AES-256-CBC a llofnod SHA-1 fod â thystysgrif berffaith ddilys ac eto cael ei wrthod gan bolisi modern cyn i’ch manylion gael eu hanfon o gwbl.

Archwiliwch y pwynt terfyn gyda OpenSSL y system, gan ddefnyddio’r gwir enw gwesteiwr a’r porth y mae’r cleient yn ei ddefnyddio.

Mae openssl s_client -connect vpn.example.com:443 -servername vpn.example.com yn methu tra mae -tls1 -cipher DEFAULT@SECLEVEL=0 yn llwyddo yn dweud wrthych mai’r ffin yw’r fersiwn a maint yr allwedd gyda’i gilydd. Os yw’r gorchymyn cyntaf yn adrodd allwedd DH fach yn hytrach na rhybudd protocol, mae’r fersiwn yn iawn a dim ond y grŵp sydd angen sylw. Peidiwch byth â rhoi allwedd breifat na chyfrinair yn yr archwiliad.

Opsiwn 1: llacio’r gwesteiwr cyfan gyda’r polisi crypto

Ar Fedora a RHEL 8 a 9, mae update-crypto-policies --set LEGACY yn gostwng polisi system OpenSSL, ac mae update-crypto-policies --show yn cadarnhau beth sy’n weithredol. Fel arfer mae hyn yn adfer y twnnel, ond mae’r polisi’n cael ei ddarllen pan fydd proses yn dechrau, felly ailgychwynnwch y cleient ac unrhyw gymorth a grëodd cyn ailbrofi. Mae hefyd yn caniatáu protocolau hŷn a grwpiau gwannach i bob cleient TLS ar y peiriant, o’r porwr yn y ffenestr nesaf i’r rheolwr pecynnau sy’n diweddaru’r cnewyllyn.

Mae’r lled hwnnw’n bwrpas cyfan ac yn broblem gyfan. Mae LEGACY yn gwesteiwr-gyfan, yn barhaus ac yn hawdd ei anghofio, felly dylai fod yn gam diagnostig neu’n eithriad wedi’i ddogfennu ar adeiladwaith a reolir, byth yn gyflwr gorffwys gweithfan. Rwyf wedi gweld un a arhosodd ar LEGACY am ddwy flynedd oherwydd bod un porth mewnol yn ei angen, ac ni allai neb ddweud pryd y dechreuodd.

Nid oes gan Debian ac Ubuntu un switsh ar gyfer hyn. Y cyfatebol yw golygiad i /etc/ssl/openssl.cnf sy’n gosod MinProtocol is a CipherString = DEFAULT@SECLEVEL=0 yn adran diofynion y system. Yr un cwmpas, ffeil wahanol, ychydig yn haws ei cholli o olwg yn ystod uwchraddio rhyddhau.

Opsiwn 2: un ffeil ffurfweddu ar gyfer un cleient

Mae ffurfweddiad OpenSSL fesul proses yn cadw’r newid o fewn un goeden broses, ond dim ond os yw’r ffeil wedi’i chysylltu fel y mae’r llyfrgell yn disgwyl. Nid yw enwi adran ssl_conf yn ddigon: mae OpenSSL yn darllen allwedd lefel uchaf openssl_conf, yn ei dilyn i adran gychwynnol, a dim ond wedyn yn cyrraedd diofynion SSL.

openssl_conf = openssl_init

[openssl_init]
ssl_conf = ssl_sect

[ssl_sect]
system_default = system_default_sect

[system_default_sect]
MinProtocol = TLSv1.0
CipherString = DEFAULT@SECLEVEL=0

Pwyntiwch OPENSSL_CONF at y ffeil honno a lansiwch y cleient VPN trwy lapio sy’n ei allforio. Mae popeth arall ar y gwesteiwr yn cadw’r polisi diofyn, a dyna’r nodwedd sy’n bwysig pan ddaw’r cwestiwn cydymffurfio. Cadarnhewch fod y ffeil mewn gwirionedd yn weithredol cyn beio’r porth: dylai OPENSSL_CONF=/path/to/file openssl ciphers -s -tls1 restru seiffrau TLS 1.0, ac mae canlyniad gwag yn golygu bod y gadwyn wedi torri a bod y cleient wedi cadw diofynion y system yn dawel.

Mae’r ffeil yn sensitif i fersiwn. Mae OpenSSL 1.1.1 a 3.x yn derbyn yr un enwau adrannau, ond newidiodd trin cyfarwyddiadau o amgylch darparwyr yn 3.x, felly gwiriwch â log y cleient a chydgysylltiad prawf yn hytrach na thybio bod y ffeil wedi’i darllen. Mae teipnam yn enw’r adran yn methu’n agored, ac mae’r cleient yn defnyddio diofynion y system yn dawel.

Y terfyn yw sylw. Mae unrhyw beth sydd wedi’i gysylltu â GnuTLS neu NSS yn anwybyddu OPENSSL_CONF, ac felly hefyd unrhyw broses gymorth y mae’r cleient yn ei chychwyn heb etifeddu’r amgylchedd. Gwiriwch gyda ldd pa lyfrgell TLS y mae’r deuaidd mewn gwirionedd yn cysylltu â hi cyn adeiladu’r lapio, oherwydd mae’r ateb yn penderfynu a yw’r opsiwn hwn yn bodoli o gwbl.

Opsiwn 3: VM neu gynhwysydd tafladwy

I gontractwr sy’n taro un porth hen am bythefnos, mae VM bwrpasol gyda’r polisi llac yn ffin lanach na’r weithfan. Mae’r wyneb hen a’r proffil pori bob dydd yn peidio â rhannu polisi’r cnewyllyn, ac mae gwaredu yn ddilead yn hytrach na chanfyddiad archwilio.

Mae’n dal yn beiriant rhwydwaith, felly cyfyngwch ei fynediad a’i gadw allan o bori cyffredinol. Y gost gynnal a chadw yw delwedd arall i’w chlytio, sy’n real ond yn gyfyngedig ac yn weladwy, yn wahanol i faner LEGACY a anghofiwyd ar liniadur.

Beth mae’r gymhariaeth yn ei adael i chi

Dewiswch ar dri chwestiwn: pwy sydd angen yr hen brotocol, am ba hyd, a phwy fydd yn sylwi os bydd yr eithriad yn goroesi ei reswm. Un ap, un person, ychydig ddyddiau, yn cyfeirio at y ffurfweddiad fesul proses. Fflot gyfan y tu ôl i un teclyn yn cyfeirio at y porth ei hun. Mae unrhyw beth sydd angen polisi LEGACY parhaol ar y gwesteiwr yn benderfyniad caffael mewn gwisg dechnegol.

Mae’r ateb gwydn yn perthyn i’r teclyn: TLS 1.2 neu ddiweddarach, grŵp o leiaf 2048 bit, seiffr AEAD, a thystysgrif â llofnod modern. Gofynnwch i berchennog y teclyn am y newid hwnnw, yna cadarnhewch y fersiwn a’r seiffr a drafodwyd yn log y cleient. Ysgrifennwch yr eithriad gyda’r gwesteiwr, y porth, y protocol a drafodwyd, y cymeradwywr a dyddiad dod i ben, oherwydd y nodyn sy’n atal ateb dros dro rhag dod yn ddiofyn.

Erthyglau cysylltiedig