Profil koji je radio prošlog mjeseca sada ističe i neko predlaže da proto udp zamijenite s proto tcp-client. Ponekad je to ispravan potez, a ponekad nastaje klijent koji se spaja na port na kojem ništa ne sluša, jer server nikada nije bio konfiguriran za drugi transport. Direktiva opisuje kako vaša strana govori; ona ne može stvoriti slušatelja na drugoj strani. Pročitajte profil i server zajedno prije nego što promijenite bilo što od toga.

Pročitajte transport koji koristi odabrana veza

Profil može nositi nekoliko remote unosa, a svaki može navesti vlastiti transport. Klijent ih prolazi redom, pa linija koju prvo vidite nije nužno ona koja se primjenjuje.

Pronađite unos koji se stvarno pokušava, zatim pročitajte njegov transport. Redoslijed je važan jer klijent ne prelazi dalje tiho. Neke gradnje pokušavaju sljedeći unos tek nakon isteka vremena, pa se radna alternativa na dnu datoteke doseže nekoliko sekundi kasnije nego što očekujete. Pratite u dnevniku koja se krajnja točka pokušava, umjesto da pretpostavite da je prva linija pobijedila.

Ako datoteka ima jednu proto liniju pri vrhu i nekoliko remote unosa ispod, ta linija je zadana za svaki remote koji je ne nadjačava. Lokalna izmjena zadane vrijednosti ne čini ništa za remote unos koji navodi vlastiti transport.

grep -nE '^(remote|proto)\b' client.ovpn

UDP i TCP nisu postavka brzine

UDP šalje datagrame bez izgradnje uređenog toka, pa se vlastiti promet tunela ne umata u drugi pouzdani transport. TCP vam daje put kroz mreže koje odbacuju ili blokiraju UDP, uz cijenu ugniježđenog ponovnog prijenosa koji može učiniti da veza s gubicima djeluje lošije.

To je trgovina dosegom, a ne univerzalni poredak. Ispravan izbor je onaj koji mreža ispred klijenta dopušta. Put koji odbacuje UDP na VPN portu nikada se neće dogovoriti, koliko god profil bio dobro napisan. Testirajte put, zatim odaberite transport.

Biranje između njih samo po mjerenju je pogreška, jer odgovor ovisi o tome što mreža ispred vas dopušta. Hotel ili korporativni proxy može dopustiti odlazni TCP na 443 i ništa drugo, zato pružatelji nude tu varijantu. To ostaje OpenVPN veza na tom portu, a ne HTTPS sesija, iako je broj porta poznat.

Šta tcp-client zapravo znači

Direktiva na strani klijenta imenuje stranu koja započinje TCP vezu. Strana servera koristi svoj oblik slušanja, a kopiranje klijentove riječi u konfiguraciju servera stvara slušatelja koji očekuje da ga se pozove, a ne onoga koji prihvaća.

Podudaranje znači da se dvije strane slažu o transportu, a ne da dijele isti niz.

grep -nE '^proto\b' /etc/openvpn/server/server.conf
ss -lntp | grep openvpn

Pitajte server na što sluša prije nego što pretpostavite da je profil pogrešan. UDP slušatelj se ne pojavljuje u popisu TCP utičnica, i obrnuto je također istina, zato provjerite prikaz specifičan za protokol, a ne opći.

Kada se profil uveze, ali nikada ne poveže

Uvezeni profil koji odmah ističe obično ne uspijeva prije bilo kakve autentikacije. Paket odlazi na port bez slušatelja ili ga mreža tiho odbaci.

Testirajte put na najjednostavniji mogući način: povežite se na isti host i port s transportom koji profil tvrdi, s iste mreže kao klijent koji ne uspijeva.

Ako UDP provjera ne dobije ništa, a TCP provjera se poveže, server nudi drugi transport i profil je jednostavno zastario. Ako nijedna ne odgovori, problem je uzvodno od izbora transporta i nikakva izmjena profila ga neće popraviti. Razlikovanje ta dva slučaja traje minutu i štedi sat vremena otklanjanja pogrešaka sa certifikatima koje nikada nije bilo relevantno.

Zapišite radni transport

Kada kombinacija proradi, zapišite je sa serverom, portom i protokolom i zabilježite s koje je mreže testirana.

Inače će sljedeća osoba koja naiđe na istek vremena ponoviti isti eksperiment u drugom smjeru i vjerovatno promijeniti server koji je bio ispravan.

Ako pružatelj objavljuje obje varijante, zadržite obje datoteke i označite ih prema mreži kojoj odgovaraju. Dva jasno imenovana profila sprječavaju slučajno miješanje klijentskog transporta sa serverskim slušateljem koji za njega nikada nije bio konfiguriran.

Povezani članci