Веза је радила у четвртак, надоградња је прошла у петак, а у понедељак се клијент врти на “connecting” и одустаје. Исти преносни рачунар, исти сервер, исти налог, исти унапред дељени кључ. Ништа у профилу није уређено, зато очигледни сумњивци, лозинка и заштитни зид, троше ваше време.

Променио се списак трансформација које је ваш рачунар спреман да понуди. Оба IPsec стека која се користе на Ubuntuu, strongSwan и Libreswan, уклањају алгоритме које више не сматрају безбедним, а NetworkManager додатак испред њих има свој списак који се креће по другом распореду. Сервер закључан на 3DES, SHA1 и Diffie-Hellman групу од 1024 бита може на крају да не чује ништа што прихвата.

Шта је надоградња заправо променила

Предлог IKEv1 хране два слоја. Демон испоручује уграђени подразумевани скуп предлога, а L2TP додатак се или на њега ослања или даје сопствени списак. Пре NetworkManager-l2tp 1.2.16 додатак се ослањао на њега, па је ваш предлог био оно што је инсталирани демон сматрао разумним. Од 1.2.16 додатак шаље документовани списак моделиран према Windows и Apple клијентима, и тај списак је шири од старог подразумеваног, али више не садржи сваку стару комбинацију на челу реда.

Та подела објашњава начин отказа који људи сматрају збуњујућим: два рачунара на истом издању Ubuntua могу се понашати различито јер један има дистрибуцијски пакет а други backport, а верзија демона на оба изгледа једнако у извештају о грешци. Проверите верзију додатка, не само верзију демона, пре него што закључите да надоградња није променила ништа релевантно.

У истом подручју постоји мања замка. Два демона исписују Diffie-Hellman групе елиптичне криве различито, један пише ecp384 а други ecp_384. Залијепите погрешан правопис у Advanced дијалог и демон ће одбити поставку као непарсибилну, што се у дневнику појављује као проблем преговарања, а не као штампарска грешка у конфигурацији.

Прочитајте отказ пре него што било шта промените

Почните од тога који backend покрећете, јер одговор одређује и синтаксу и место дневника.

ipsec --version
nmcli connection show "Your VPN name" | grep -i ipsec

Затим прочитајте саму размену. На strongSwanu демон пише у journal на актуелном издању и у /var/log/syslog на старијем, а занимљив део је предлог који шаље, не завршни ред. Тражите формулацију о томе да нема одговарајућег предлога, што је проблем алгоритма; неуспех аутентификације, који упућује на кључ или налог; или обичан timeout, који упућује на доступност.

Ова три исхода пречесто се третирају као један симптом. Timeout са празним дневником демона значи да пакети не долазе. Одбијање предлога значи да су дошли и да су одбијени. Ако ваш дневник ћути, подигните ниво за отклањање грешака додатка за један покушај и после га снизите, јер опширан излаз брзо пуни journal.

Фаза 1 и фаза 2 су одвојене опкладе

IKEv1 преговара двапут. Главни режим гради IKE безбедносну асоцијацију од алгоритма за шифровање, алгоритма за интегритет, Diffie-Hellman групе и методе аутентификације. Брзи режим затим гради ESP асоцијацију која ће носити L2TP. Сервер је слободан да прихвати прво и одбије друго, па полуправилан профил пада касније него што очекујете и изгледа као друга грешка.

Phase 1: 3des-sha1-modp1024!
Phase 2: 3des-sha1!

Узвичник је strongSwan синтакса за строг унос: понуди ову једну комбинацију и ништа друго. Без њега унос се придружује резервном списку, што је добро кад је партнер модеран а контрапродуктивно кад је уређај с једном тврдо кодираном политиком. Третирајте горњи пар као илустрацију форме, не као препоруку за било шта што данас градите.

Промените једно поље, па поновите тест

На актуелном додатку најбржи први тест је потпуно очистити оба поља предлога и поново се повезати, јер испоручени подразумевани списак већ укључује уобичајене Windows и Apple комбинације. На старијем додатку њихово чишћење враћа контролу демону који је можда избацио алгоритам на коме ваш сервер инсистира, и неуспех се погоршава.

Ако чишћење не помогне, поставите строги пар који ваш сервер документује, једну фазу по једну. Промените фазу 1, поново се повежите и прочитајте дневник пре него што дирате фазу 2. Кад комбинација коначно проради, запишите је уз модел сервера и верзију додатка, јер ће се подразумеване вредности опет померити и та белешка је оно што следећу надоградњу претвара у петоминутну проверу.

Повезани чланци