Mae'r manylion mewngofnodi yn gywir, mae'r proffil yn mewnforio'n lân, ac mae'r cysylltiad yn dal i fethu cyn i'r dilysiad gwblhau. Ar Windows gall y neges fod yn wall 798, am dystysgrif na ellid ei chanfod ar gyfer y dull EAP. Ar OpenVPN mae log y cleient yn dangos handshake TLS nad yw byth yn bodloni'r gweinydd. Mae'r ddau yn disgrifio'r un gwrthrych coll: tystysgrif cleient y dylai'r cleient fod wedi'i chyflwyno.

Mae cyfrinair yn profi gwybod am gyfrinach; mae tystysgrif yn profi meddu ar allwedd, ac nid yw'r naill yn cymryd lle'r llall.

Nid y cyfrinair oedd y broblem erioed

Methiant chwilio tystysgrif yw gwall 798. Gofynnwyd i'r cleient am dystysgrif sy'n cyfateb i'r dull dilysu a ffurfweddwyd, chwiliodd ei storfa, ac ni chafodd ddim defnyddiadwy. Gall hynny olygu bod y dystysgrif yn absennol, yn bresennol heb ei hallwedd breifat, wedi dod i ben, neu wedi'i storio lle nad yw'r chwiliad yn cyrraedd. Ni all ailgynnig y cyfrinair newid unrhyw un o'r amodau hynny, a dyna pam mae'r gwall yn dychwelyd gyda manylion cywir.

Darllenwch y neges cyn gweithredu arni. Mae gwrthod manylion mewngofnodi, methiant chwilio tystysgrif a methiant handshake TLS yn dri chanfyddiad gwahanol, a dim ond un sy'n ymwneud â'r cyfrinair.

Beth sy'n rhaid i storfa'r cleient ei chynnwys

Mae dau wrthrych dan sylw. Rhaid gosod tystysgrif y cleient ar gyfer y defnyddiwr sy'n rhedeg y cleient VPN, gyda'i hallwedd breifat, a rhaid ymddiried yn y gwraidd sy'n ei dyroddi. Dim ond y dystysgrif gyhoeddus sydd mewn ffeil .cer, felly ni all ddilysu dim ar ei phen ei hun. Yn rheolwr tystysgrifau Windows, mae hunaniaeth y cleient yn perthyn i storfa bersonol y defnyddiwr cyfredol, a'r gwraidd yn perthyn i storfa'r gwraidd ymddiriedol.

Nid yw gosod yr hunaniaeth yn storfa'r peiriant, na dim ond yn storfa'r gwraidd, yn bodloni chwiliad sy'n anelu at storfa bersonol y defnyddiwr. Gwiriwch y storfa, y fflag allwedd breifat a'r dyddiadau dilysrwydd gyda'i gilydd, yna ailgychwynnwch y cleient fel ei fod yn ail-ddarllen y storfa.

Dau gynnyrch, yr un manylyn coll

Mae gweinyddion OpenVPN yn gofyn am dystysgrif cleient yn ddiofyn. Mae ychwanegu auth-user-pass at gleient yn anfon enw defnyddiwr a chyfrinair, ac mae'r handshake TLS yn dal i ofyn am dystysgrif, felly ni all cyfrinair yn unig gwblhau'r cysylltiad o dan verify-client-cert require. Gellir gosod y gweinydd i beidio â gofyn am ddim, sy'n gwneud y cyfrinair yn unig fanylyn y cleient ac yn ostyngiad gwirioneddol mewn cryfder. Gall sgript shell y tu ôl i auth-user-pass-verify ddilysu manylion, ac mae'n gofyn bod gweithredu sgriptiau wedi'i alluogi, sy'n ei gwneud yn gynllun mwy peryglus na backend dilysu priodol.

Mae proffil sy'n dibynnu ar gyfrinair yn unig hefyd yn dibynnu ar opsiynau a wthir, sydd yn eu tro yn dibynnu ar fod y mecanwaith tynnu wedi'i alluogi.

Peidiwch â chywiro tystysgrif sydd ar goll drwy analluogi gwiriadau

Y temtasiwn yw llacio'r dilysiad fel bod y neges yn diflannu. Mae hynny'n dileu'r rheolaeth a oedd yn gwneud ei gwaith ac yn gadael cysylltiad nad yw bellach yn profi'r hyn y mae'n ei honni. Os yw'r porth yn ddiweddar wedi newid ei wraidd, lawrlwythwch becyn y cleient eto yn lle golygu'r proffil, oherwydd efallai bod y pecyn hen yn dal i gynnwys y gwraidd blaenorol. Os yw'r opsiwn dilysu tystysgrif ar goll o olygydd y proffil, efallai nad yw'r fersiwn Windows sydd wedi'i osod yn cysylltu'r dull hwnnw; diweddarwch y system yn lle golygu XML â llaw.

Cofnodwch pa storfa oedd yn dal y dystysgrif, pa ddefnyddiwr redodd y cleient, ac a oedd yr allwedd breifat yn bresennol. Mae'r tri hynny'n esbonio bron bob achos o'r methiant hwn.

Roedd y cyfrinair yn iawn. Roedd y manylyn roedd y dull ei angen mewn gwirionedd yn rhywle arall.

Erthyglau cysylltiedig