Obvykle to začíná profilem, který se roky připojoval, otevřeným v novějším klientovi, a selháním dřív, než se tunel vůbec spustí. Terminál vypíše něco jako Options error: Unrecognized option ... in client.ovpn:130: tls-remote, s verzí v závorce na konci. Čtěte to jako stížnost parseru: soubor obsahuje direktivu, kterou tento klient už nezná.

Tato jediná zpráva vysvětluje, proč regenerace klíčů, opětovné zadání hesla nebo kontrola serveru nic nedělají. Selhání nastává, když klient čte vlastní konfiguraci, ještě než otevře socket. Užitečná práce je určit odmítnutou direktivu a nahradit ji současným ekvivalentem.

Přečtěte si selhávající řádek, než cokoli upravíte

Spusťte klienta sami, místo abyste ho pouštěli z ikony v oznamovací oblasti, aby byla zpráva vidět a cesta k profilu jednoznačná. Otevřete soubor na uvedeném řádku a podívejte se na token, který klient pojmenoval. Číslo řádku je řádek profilu, ne verze, což lidi plete, protože stejné číslo se objevuje v závorce jako identifikátor vydání.

Staří generátory profilů nevydávaly jednu špatnou direktivu, ale několik. Opravte první chybu, spusťte klienta znovu a čekejte, až se objeví další. Tato posloupnost je normální a není známkou toho, že úpravy věci zhoršily.

Co se stalo s keysize a tls-remote

keysize požadoval délku šifrovacího klíče v éře, kdy profil volil šifru explicitně. OpenVPN 2.4 ho označil za zastaralý a pozdější klienti ho odstranili z tabulky voleb, takže parser nyní řádek odmítá, místo aby ho ignoroval. Moderní vyjednávání odvozuje délku klíče od zvolené šifry, a proto direktivě nezbylo nic k řízení.

tls-remote byl odstraněn ve 2.4. Porovnával certifikát serveru s očekávaným jménem a jeho náhradou je verify-x509-name, který je přísnější v tom, jak se jméno porovnává. Stará direktiva je pryč, takže profil, který ji nese, se na současném klientovi nikdy nenačte.

Opravujte jednu direktivu na pokus. Pokud profil také uvádí šifru, kterou klient nenabízí, vytvoří to později jinou chybu, a smíchání obou změn v jedné úpravě znemožňuje zjistit, která z nich rozbila handshake. Po každé úpravě se znovu připojte a uchovejte text chyby. Tento zvyk také ponechává funkční záložní variantu, pokud úprava věci zhorší.

Přepište kontrolu identity serveru

Náhrada bere očekávané jméno a režim porovnání. verify-x509-name vpn.example.edu name vyžaduje, aby subjekt certifikátu byl přesně roven této hodnotě. Jiné režimy porovnávají prefix nebo celý řetězec subjektu, a volba špatného režimu promění funkční profil v čisté selhání ověření.

Pokud byl starý argument tls-remote plným obecným jménem serveru, přesné porovnání name je obvykle správné. Pokud šlo o částečnou hodnotu, použijte režim prefixu, místo abyste zkracovali očekávané jméno, protože kratší přesná shoda neprojde ověřením. Když původní hodnota není zapsaná, zeptejte se toho, kdo server provozuje, na subjekt, který zveřejňují.

Neumlčujte kontrolu, aby chyba zmizela. Odstranění ověření identity serveru promění opravitelný problém profilu v neověřený tunel, což je přesně riziko, kterému měla direktiva zabránit.

Opravený profil, místní úprava nebo starší klient

Když server vlastní někdo jiný, nejčistší cestou je aktuální profil od něj. Vaše kopie pochází ze staršího generátoru a jeho export už používá současné direktivy. Jedno stažení odstraní celou kategorii chyb a udrží budoucí úpravy na jednom místě.

Když vlastníte oba konce, upravte kopii a originál si ponechte. Změňte jednu direktivu, uložte, připojte se a poznamenejte verzi klienta, kterou jste testovali. U každé úpravy mějte krátkou poznámku, protože profil upravovaný během několika sezení se z paměti těžko audituje. Spouštění z příkazového řádku proti upravenému souboru ten cyklus zrychluje, protože chyba jde rovnou do terminálu.

Připnutí nebo návrat ke klientovi staršímu než 2.4 také zprávu odstraní, a u zařízení, které nikdy nebude aktualizováno, to může být jediná schůdná dočasná výpomoc. Berte to jako dočasné: starý klient na současném počítači obvykle znamená starou knihovnu a nepodporovanou konfiguraci, což je problém odložený, nikoli vyřešený.

Až tunel naskočí, přečtěte celý profil ještě jednou. Profily, které nesly jednu odstraněnou direktivu, často nesou i další, a ta druhá se objeví až poté, co první zmizí.

Související články