Uruchom ten sam profil w terminalu, a komunikat, który większość kopiuje, jest ostrzeżeniem, nie powodem zatrzymania klienta. Zawodzą tu trzy niezależne warstwy: wypchnięta dyrektywa, której kompilacja Linuksa nie implementuje, uprawnienia potrzebne do utworzenia urządzenia tun oraz pomocnik resolvera, który zamienia połączenie w działający DNS. Przechodź je po kolei, bo każda może ukryć następną.

Zachowaj pobrany plik tak, jak przyszedł, i edytuj kopię, aby nowe pobranie nie cofnęło po cichu twoich zmian.

Przeczytaj ostrzeżenie, zanim je obwinisz

block-outside-dns blokuje DNS w Windows przez platformę filtrowania Windows, a klient Linuksa nie ma do czego tego przyporządkować. Gdy serwer to wypycha, klient wypisuje wiersz o nieznanej opcji dla tego wypchniętego wpisu i kontynuuje, bo wypchnięta opcja nie jest traktowana jako krytyczna. Ta sama linia w twoim własnym pliku to inna sprawa: tam parser się zatrzymuje. Zdecyduj, którą z tych dwóch masz, zanim czegokolwiek dotkniesz, bo tylko jedna z nich kończy działanie.

Aby usunąć szum, odfiltruj go przed parsowaniem: wpis pull-filter ignore dla tej nazwy albo --ignore-unknown-option, gdy linia znajduje się w pliku lokalnym. Oba wyciszają linię, którą już przeczytałeś; żaden nie naprawia usterki, której nie zdiagnozowałeś.

Uprawnienia zawodzą przed wszystkim innym

Urządzenie tun i towarzyszące mu trasy są obiektami uprzywilejowanymi, a zwykłe konto nie może ich utworzyć. Opcja --user wyjaśnia ten podział: demon zrzeka się uprawnień dopiero po wykonaniu uprzywilejowanej pracy. Uruchom go jako root albo przez unit, który tak go uruchamia, a następnie szukaj błędu uprawnień, zanim spojrzysz na certyfikaty. Poluzowanie uprawnień pliku profilu nie daje procesowi brakujących praw.

Błąd TLS oznacza, że klient minął tę warstwę. Skarga na urządzenie lub trasę oznacza, że nigdy nie dotarł do warstwy powyżej.

Co robi GUI, a czego nie robi terminal

Pomyślne połączenie, gdy każde zapytanie nadal zawodzi, to trzecia warstwa. NetworkManager sam wykonuje pracę resolvera, dlatego import z pulpitu może rozdawać DNS nawet wtedy, gdy skrypt up profilu nigdy nie ruszył z powodzeniem. Polecenie openvpn --config wykonuje to, co nazywa --up, a jeśli tego pomocnika brakuje, interfejs się pojawia, podczas gdy zapytania nadal idą do poprzednich serwerów. Porównaj skrypty obu ścieżek, zanim cokolwiek zainstalujesz.

Użyj spakowanego pomocnika dla swojej dystrybucji; skrypt skopiowany z wpisu na blogu zwykle celuje w inny resolver. Integracja dostarczana dla systemd-resolved nie jest ogólnym skryptem w stylu vpnc i każda oczekuje własnych argumentów i zmiennych od klienta. Zdefiniowane przez użytkownika skrypty up również wymagają script-security 2, zanim klient w ogóle je wykona.

Oddziel warstwy przy następnym uruchomieniu

Uruchom raz z --verb 4 i czytaj dziennik w kolejności, w jakiej się działo: utworzenie urządzenia, trasy, uścisk dłoni TLS, potem wyjście skryptu up. Pierwsza awaria w tej sekwencji jest tą wartą naprawy; wszystko po niej to zwykle konsekwencja. Tunel, który powstaje, gdy resolver tego nie robi, stawia cię na trzeciej warstwie, gdzie certyfikat nie ma znaczenia. Podczas porównywania zostaw pobrany profil nietknięty.

Gdy każda korekta operatora daje kolejną odrzuconą linię, plik jest skierowany na inną platformę. Poproś o eksport dla Linuksa zamiast budować stałą listę filtrów.

Zapisz, która warstwa zawiodła i co ją zmieniło, bo inaczej następna osoba, która dostanie ten sam plik, też zatrzyma się na ostrzeżeniu.

Powiązane artykuły