Prihlasovacie údaje sú správne, profil sa naimportuje čisto a pripojenie napriek tomu zlyhá pred dokončením autentifikácie. V Windows môže byť hlásenie chyba 798, o certifikáte, ktorý sa pre metódu EAP nepodarilo nájsť. Na OpenVPN klientsky protokol ukazuje TLS handshake, ktorý server nikdy neuspokojí. Obe opisujú ten istý chýbajúci objekt: klientsky certifikát, ktorý mal klient predložiť.

Heslo dokazuje znalosť tajomstva; certifikát dokazuje držanie kľúča a jedno nenahrádza druhé.

Heslo nikdy nebolo problém

Chyba 798 je zlyhanie hľadania certifikátu. Klient bol požiadaný o certifikát zodpovedajúci nakonfigurovanej metóde autentifikácie, prehľadal svoje úložisko a nenašiel nič použiteľné. Môže to znamenať, že certifikát chýba, je prítomný bez súkromného kľúča, vypršal alebo je uložený tam, kam hľadanie nedosiahne. Opakovanie hesla nemôže zmeniť žiadnu z týchto podmienok, preto sa chyba vracia aj so správnymi údajmi.

Prečítajte si hlásenie skôr, než budete konať. Odmietnutie prihlasovacích údajov, zlyhanie hľadania certifikátu a zlyhanie TLS handshake sú tri rôzne zistenia a iba jedno z nich sa týka hesla.

Čo musí klientske úložisko obsahovať

Ide o dva objekty. Klientsky certifikát musí byť nainštalovaný pre používateľa, ktorý spúšťa klienta VPN, spolu s jeho súkromným kľúčom, a vydávajúci koreň musí byť dôveryhodný. Súbor .cer obsahuje iba verejný certifikát, takže sám o sebe nemôže nič autentifikovať. V Správcovi certifikátov Windows patrí identita klienta do osobného úložiska aktuálneho používateľa a koreň do úložiska dôveryhodných koreňov.

Inštalácia identity do úložiska počítača alebo iba do úložiska koreňov nevyhovie hľadaniu zameranému na osobné úložisko používateľa. Skontrolujte úložisko, príznak súkromného kľúča a dátumy platnosti spoločne, potom klienta reštartujte, aby úložisko znova načítal.

Dva produkty, rovnaký chýbajúci údaj

Servery OpenVPN štandardne vyžadujú klientsky certifikát. Pridanie auth-user-pass ku klientovi odošle používateľské meno a heslo a TLS handshake stále žiada certifikát, takže samotné heslo nemôže pripojenie dokončiť pod verify-client-cert require. Server sa dá nastaviť tak, aby nevyžadoval nič, čím sa heslo stane jediným klientskym údajom, a to je skutočné oslabenie. Shell skript za auth-user-pass-verify môže údaje overovať a vyžaduje povolené spúšťanie skriptov, čo z neho robí riskantnejší návrh než riadny autentifikačný backend.

Profil iba s heslom závisí aj od vnucovaných volieb, ktoré zase závisia od zapnutého mechanizmu sťahovania.

Neopravujte chýbajúci certifikát vypnutím kontrol

Pokušenie je uvoľniť overovanie, aby hlásenie zmizlo. Tým sa odstráni kontrola, ktorá robila svoju prácu, a zostane pripojenie, ktoré už nedokazuje, čo tvrdí. Ak brána nedávno zmenila svoj koreň, stiahnite znova klientsky balík namiesto úpravy profilu, pretože starý balík môže stále niesť predchádzajúci koreň. Ak v editore profilov chýba voľba autentifikácie certifikátom, nainštalovaná verzia Windows možno túto metódu neponúka; aktualizujte systém namiesto ručnej úpravy XML.

Zaznamenajte, ktoré úložisko certifikát obsahovalo, ktorý používateľ klienta spustil a či bol prítomný súkromný kľúč. Tieto tri údaje vysvetľujú takmer každý prípad tohto zlyhania.

Heslo bolo v poriadku. Údaj, ktorý metóda naozaj potrebovala, bol inde.

Súvisiace články