OpenConnect vpnc-script: која датотека се извршава?
Помоћник који инсталира руте и DNS одвојен је од клијента тунела. Пронађите путању коју користи покренути клијент пре него што је замените копијом са форума.
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'
Покрените прва три док сте повезани, прекините везу, па их покрените поново и потврдите да су рута и унос разрешивача нестали. Четврти ред показује да ли је помоћник уопште позван и коју је извршну путању користила услуга. Забележите тај пар излаза у тикету, јер управо поређење пре и после чини грешку чишћења очигледном.
Држите помоћника упакованог и извршног за сервисни налог, јер скрипта која ради у вашој љусци ипак може бити одбијена под ограниченом сервисном политиком. Када је прилагођавање заиста потребно, документујте његову сврху и власника и упоредите га са упакованом верзијом при сваком надограђивању. Необјашњен форк помоћника једна је од ретких ствари које могу да учине да радна веза поквари за годину.