OpenConnect можа завяршыць рукапацісканне тунеля і ўсё ж пакінуць вас без маршруту да прыватнай падсеткі, бо кліент і памочнік, які змяняе стан лакальнай сеткі, — дзве розныя праграмы. Аўтэнтыфікацыя даказвае, што шлюз прыняў сеанс; яна нічога не даказвае пра тое, які інтэрфейс, маршруты ці налады рэзалвера былі ўсталяваныя пасля. Большасць заблытаных паведамленняў узнікае з-за замены памочніка копіяй са старога адказу, што змяняе паводзіны для кожнага злучэння на машыне. Знайдзіце памочніка, якога фактычна выклікае запушчаны кліент, перш чым нешта ў ім правіць.

Дзве праграмы, дзве адказнасці

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

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

Знайдзіце памочніка, які выкарыстоўвае запушчаны кліент

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

openconnect --version
ps -o args= -C openconnect
dpkg -L openconnect | grep -i script
ls -l /etc/vpnc/ 2>/dev/null

Калі радок працэсу ўтрымлівае аргумент --script , гэты файл перамагае скампіляваны па змаўчанні. Старэйшыя шляхі, такія як /etc/vpnc/vpnc-script , могуць існаваць і заставацца невыкарыстанымі, таму іх выдаленне або рэдагаванне нічога не змяняе ў нядаўняй зборцы. Праверце таксама дату змены, бо памочнік, якога гадамі ніхто не кранаў, — моцны знак таго, што працу выконвае пакаваны па змаўчанні.

Інтэграцыя з NetworkManager — трэці ўласнік, са сваім памочнікам і сваімі наладамі профілю. Напластаванне другога скрыпта маршрутаў ці рэзалвера па-над гэтай інтэграцыяй дублюе маршруты і пакідае рэзалвер, якім абедзве праграмы заяўляюць, што кіруюць. Выберыце аднаго ўласніка на злучэнне і адключыце другога перад тэставаннем.

Чытайце першую няўдалую аперацыю, а не апошняе папярэджанне

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

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

Праверце падключэнне, перападключэнне і адключэнне

Наладжванне — толькі палова кантракту, бо той жа памочнік павінен аднавіць або выдаліць стан, якім валодае, калі тунель зачыняецца. Памочнік, які дадае маршруты і ніколі іх не выдаляе, пакідае машыну з састарэлым шляхам, які перажывае сеанс.

ip -brief address show tun0
ip route get 10.24.8.15
resolvectl status tun0
journalctl -u NetworkManager -b --no-pager | grep -i -E 'vpnc|script'

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

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

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