Dva soubory, které oba vypadají jako konfigurace VPN, skončí ve stejné složce a funguje jen jeden z nich. Profil OpenVPN popisuje tunel TLS s direktivami, kterým tento klient rozumí, zatímco připojení SoftEther popisuje relaci vůči virtuálnímu rozbočovači s odlišnou smlouvou o ověřování. Převést jedno na druhé není cvičení ve formátování, protože oba klienti neimplementují stejný protokol. Určení, kterou službu provozovatel skutečně zveřejnil, rozhoduje o všem, co následuje.

Dva soubory, dvě smlouvy

Profil OpenVPN je konfigurace klienta: vzdálený koncový bod, přenos, materiál TLS a direktivy pro směrování a opětovné vyjednávání. Připojení SoftEther je nativní klientská relace vůči virtuálnímu rozbočovači s virtuálním adaptérem, který je k ní připojen.

Mohou popisovat přístup ke stejné síti, aniž by byly zaměnitelné. Posluchač OpenVPN je funkce kompatibility, kterou server může zveřejnit na samostatném portu, a mluví OpenVPN místo nativního protokolu. Nativní klient mluví nativním protokolem a očekává vlastní profil. Jeden server, dvoje dveře a každé dveře mají svůj klíč.

Přípona souboru vám neřekne téměř nic, a proto je odpověď provozovatele důležitější než název souboru.

Přečtěte si server, než se dotknete bloku certifikátu

Zeptejte se provozovatele na tři věci: který port a přenos, která metoda ověřování a který klient má být použit. Tyto odpovědi odstraní většinu hádání.

Potom ověřte, co skutečně naslouchá, a ne co tvrdí nějaký návod. Vypnutý posluchač kompatibility na svém portu nic neukáže a zapnutý ukáže socket, i když se nikdy nikdo nepřipojil. Rozdíl mezi zavřeným portem a odmítnutým přihlášením je první užitečná diagnostika. Všechno po něm závisí na tom, na které dveře se klepalo.

ss -lunp | grep -E ':1194|:443'
sudo ss -ltnp | grep -E ':992|:5555'
grep -nE '^(remote|proto|auth-user-pass|ca |cert |key )' profile.ovpn

Port UDP, který v seznamu posluchačů chybí, je vypnutá funkce, a ne problém brány firewall.

Co nativní klient potřebuje a co mu profil dát nemůže

Nativní klient nainstaluje virtuální síťový adaptér a připojení k němu připne. Bez tohoto adaptéru není rozhraní, přes které by se směrovalo, a proto se nativní připojení může ověřit a přesto nepřenášet žádný provoz.

Nativní ověřování probíhá vůči virtuálnímu rozbočovači s uživatelským objektem, který vytvořil správce rozbočovače. Bloky certifikátů zkopírované z profilu OpenVPN se nestanou uživateli rozbočovače a uživatel rozbočovače se nestane klientským certifikátem. Oba systémy ukládají různé věci a profil nemá kam umístit záznam uživatele rozbočovače. To je strukturální rozdíl, a ne problém syntaxe.

Držte soukromý klíč mimo jakoukoli konverzní službu, protože klíč, který opustí stroj, je třeba považovat za vyzrazený.

Co posluchač kompatibilní s OpenVPN přijímá

Posluchač kompatibility je z pohledu klienta skutečný server OpenVPN: očekává klienta OpenVPN a direktivy, které tento klient podporuje. Vložené bloky certifikátů jsou funkce OpenVPN a patří na onu stranu plotu.

To, co neudělá, je přijetí nativního profilu SoftEther, protože takový profil není konfigurace OpenVPN. Posluchač také nepromění nativního klienta v klienta OpenVPN. Pokud provozovatel nabízí jen nativní službu, odpovědí je nativní klient; pokud nabízí posluchač kompatibility, odpovědí je OpenVPN a jeho vlastní materiál.

Požádejte o provozovatelem podporovaný export místo skládání vlastního z úlomků, protože export nese podrobnosti, které ručně sestavený soubor obvykle vynechá.

Dokažte cestu, než začnete upravovat direktivy

Jakmile je klient zvolen, otestujte tunel dřív, než se dotknete tras. Úspěšné přihlášení a rozhraní, které přenáší provoz, jsou dva různé výsledky.

sudo openvpn --config profile.ovpn --verb 3
ip -br addr
ip route get 10.70.4.20
resolvectl status | grep -A2 'DNS Servers'

Porovnejte přidělenou adresu s fondem, který provozovatel popsal, a potom se podívejte odděleně na trasy a překladač. Nativní připojení k rozbočovači se může čistě ověřit a nenainstalovat žádné trasy, což z pohledu klienta vypadá jako rozbitý tunel. Teprve když se tyto tři shodují, má smysl direktivu upravovat. Dřívější úprava skrývá, která vrstva byla špatně.

Související články