Запусціце той жа профіль з тэрмінала, і паведамленне, якое большасць людзей капіруе, — гэта папярэджанне, а не прычына прыпынку кліента. Тут адмаўляюць тры незалежныя ўзроўні: прасунутая дырэктыва, якую зборка Linux не рэалізуе, правы, патрэбныя для стварэння прылады tun, і памочнік рэзалвера, які ператварае злучэнне ў працоўны DNS. Разбірайце іх па парадку, бо кожны можа хаваць наступны.

Захавайце спампаванае як ёсць і рэдагуйце копію, каб новае спампоўванне моўчкі не адмяніла вашыя змены.

Прачытайце папярэджанне, перш чым вінаваціць яго

block-outside-dns блакуе DNS у Windows праз платформу фільтрацыі Windows, і кліенту Linux няма да чаго яго прывязаць. Калі сервер прасоўвае яго, кліент друкуе радок пра невядомую опцыю для гэтага прасунутага запісу і працягвае, бо прасунутая опцыя не лічыцца фатальнай. Той жа радок у вашым уласным файле — іншая справа: там парсер спыняецца. Вызначце, які з двух у вас, перш чым нешта кранаць, бо толькі адзін з іх спыняе запуск.

Каб прыбраць шум, адфільтруйце яго да разбору: запіс pull-filter ignore для гэтага імя або --ignore-unknown-option, калі радок знаходзіцца ў лакальным файле. Абодва заглушаюць радок, які вы ўжо прачыталі; ні адзін не выпраўляе збой, які вы не дыягнаставалі.

Правы падводзяць раней за ўсё астатняе

Прылада tun і маршруты, што яе суправаджаюць, — гэта прывілеяваныя аб’екты, і звычайны акаўнт не можа іх стварыць. Опцыя --user тлумачыць гэты падзел: дэман адмаўляецца ад сваіх правоў толькі пасля таго, як прывілеяваная праца зроблена. Запусціце яго як root або праз unit, які запускае яго так, а потым шукайце памылку правоў, перш чым глядзець на сертыфікаты. Паслабленне правоў файла профілю не дае працэсу правоў, якіх яму не хапае.

Памылка TLS азначае, што кліент прайшоў гэты ўзровень. Скарга на прыладу або маршрут азначае, што ён не дасягнуў узроўню вышэй.

Што робіць GUI, а тэрмінал — не

Паспяховае злучэнне, калі кожны запыт па-ранейшаму не ўдаецца, — гэта трэці ўзровень. NetworkManager сам займаецца рэзалверам, таму імпарт з працоўнага стала можа выдаваць DNS, нават калі up-скрыпт профілю ніколі не адпрацаваў паспяхова. Каманда openvpn --config выконвае тое, што называе --up, і калі гэтага памочніка няма, інтэрфейс з’яўляецца, а запыты працягваюць ісці да папярэдніх сервераў. Параўнайце скрыпты двух шляхоў, перш чым нешта ўсталёўваць.

Выкарыстоўвайце ўпакаваны памочнік для вашага дыстрыбутыва; скрыпт, скапіяваны з паста ў блогу, звычайна нацэлены на іншы рэзалвер. Інтэграцыя, што пастаўляецца для systemd-resolved, — не ўніверсальны скрыпт у стылі vpnc, і кожная чакае сваіх аргументаў і зменных ад кліента. Скрыпты up, вызначаныя карыстальнікам, таксама патрабуюць script-security 2, перш чым кліент іх увогуле выканае.

Падзяліце ўзроўні ў наступным запуску

Запусціце адзін раз з --verb 4 і чытайце журнал у тым парадку, у якім усё адбывалася: стварэнне прылады, маршруты, рукапоціск TLS, потым вывад up-скрыпта. Першым збоем у гэтай паслядоўнасці і варта займацца; усё пасля яго звычайна ёсць наступствам. Тунель, які ўзнікае, калі рэзалвер не працуе, ставіць вас на трэці ўзровень, дзе сертыфікат не мае значэння. Пакіньце спампаваны профіль некранутым, пакуль параўноўваеце.

Як толькі кожная праўка аператара дае яшчэ адзін адхілены радок, файл нацэлены на іншую платформу. Запытайце экспарт для Linux замест стварэння пастаяннага спісу фільтраў.

Адзначце, які ўзровень не спрацаваў і што яго змяніла, бо наступны чалавек, якому дадуць той жа файл, інакш таксама спыніцца на папярэджанні.

Падобныя артыкулы