Ryšys veikė ketvirtadienį, atnaujinimas buvo atliktas penktadienį, o pirmadienį klientas sukasi ties “connecting” ir pasiduoda. Tas pats nešiojamasis kompiuteris, tas pats serveris, ta pati paskyra, tas pats iš anksto bendrinamas raktas. Profilyje nieko nebuvo redaguota, todėl akivaizdūs įtariamieji, slaptažodis ir ugniasienė, eikvoja jūsų laiką.

Pasikeitė transformacijų, kurias jūsų kompiuteris nori pasiūlyti, sąrašas. Abu Ubuntu naudojami IPsec rinkiniai, strongSwan ir Libreswan, pašalina algoritmus, kurių nebelaiko saugiais, o prieš juos esantis NetworkManager papildinys turi savo sąrašą, kuris juda pagal kitą grafiką. Serveris, prirakinamas prie 3DES, SHA1 ir 1024 bitų Diffie-Hellman grupės, gali galiausiai negirdėti nieko, ką priima.

Ką atnaujinimas iš tikrųjų pakeitė

IKEv1 pasiūlymą maitina du sluoksniai. Daimonas pateikia į kompiliaciją įtrauktą numatytąjį pasiūlymų rinkinį, o L2TP papildinys arba juo remiasi, arba pateikia savo sąrašą. Prieš NetworkManager-l2tp 1.2.16 papildinys juo rėmėsi, todėl jūsų pasiūlymas buvo tai, ką įdiegtas daimonas laikė pagrįstu. Nuo 1.2.16 papildinys siunčia dokumentuotą sąrašą, modeliuotą pagal Windows ir Apple klientus, ir šis sąrašas platesnis už senąjį numatytąjį, bet jame nebėra kiekvienos senos kombinacijos eilės priekyje.

Šis atskyrimas paaiškina gedimo būdą, kurį žmonės laiko klaidinančiu: du kompiuteriai toje pačioje Ubuntu versijoje gali elgtis skirtingai, nes viename yra platinimo paketas, o kitame – backport, ir daimono versija abiejuose klaidų ataskaitoje atrodo vienodai. Prieš darydami išvadą, kad atnaujinimas nieko reikšmingo nepakeitė, patikrinkite papildinio versiją, ne tik daimono versiją.

Toje pačioje srityje yra mažesnių spąstų. Du daimonai elipsinės kreivės Diffie-Hellman grupes rašo skirtingai: vienas rašo ecp384, kitas ecp_384. Įklijuokite neteisingą rašybą į Advanced dialogą ir daimonas atmes nustatymą kaip neanalizuojamą, o tai žurnale pasirodys kaip derybų problema, o ne konfigūracijos rašybos klaida.

Perskaitykite gedimą prieš ką nors keisdami

Pradėkite nuo to, kurią backend dalį vykdote, nes atsakymas lemia ir sintaksę, ir žurnalo vietą.

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

Tada perskaitykite patį pasikeitimą. strongSwan atveju daimonas rašo į journal dabartinėje versijoje ir į /var/log/syslog senesnėje, o įdomiausia dalis yra siunčiamas pasiūlymas, ne paskutinė eilutė. Ieškote formuluotės, kad nėra tinkančio pasiūlymo, o tai algoritmo problema; autentifikavimo gedimo, kuris nurodo raktą ar paskyrą; arba paprasto timeout, kuris nurodo pasiekiamumą.

Šie trys rezultatai per dažnai traktuojami kaip vienas simptomas. Timeout su tuščiu daimono žurnalu reiškia, kad paketai neatvyksta. Pasiūlymo atmetimas reiškia, kad jie atvyko ir buvo atmesti. Jei jūsų žurnalas tylus, vienam bandymui padidinkite papildinio derinimo lygį ir po to jį sumažinkite, nes išsami išvestis greitai užpildo journal.

1 fazė ir 2 fazė yra atskiri statymai

IKEv1 derasi du kartus. Pagrindinis režimas IKE saugos asociaciją sudaro iš šifravimo algoritmo, vientisumo algoritmo, Diffie-Hellman grupės ir autentifikavimo metodo. Greitasis režimas tada sudaro ESP asociaciją, kuri neš L2TP. Serveris gali priimti pirmąjį ir atmesti antrąjį, todėl pusiau teisingas profilis nepavyksta vėliau, nei tikitatės, ir atrodo kaip kita klaida.

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

Šauktukas yra strongSwan sintaksė griežtam įrašui: siūlyk tik šią vieną kombinaciją ir nieko daugiau. Be jo įrašas prisijungia prie atsarginio sąrašo, o tai gerai, kai partneris modernus, ir kenksminga, kai tai įrenginys su viena kietai užkoduota politika. Aukščiau esančią porą laikykite formos iliustracija, o ne rekomendacija tam, ką šiandien kuriate.

Pakeiskite vieną lauką, tada pakartokite testą

Dabartiniame papildinyje greičiausias pirmasis testas yra visiškai išvalyti abu pasiūlymų laukus ir prisijungti iš naujo, nes pateiktas numatytasis sąrašas jau apima įprastas Windows ir Apple kombinacijas. Senesniame papildinyje jų išvalymas grąžina valdymą daimonui, kuris galbūt jau atmetė algoritmą, kurio jūsų serveris reikalauja, ir gedimas dar pablogėja.

Jei išvalymas nepadeda, nustatykite griežtą porą, kurią dokumentuoja jūsų serveris, po vieną fazę. Pakeiskite 1 fazę, prisijunkite iš naujo ir perskaitykite žurnalą, prieš liesdami 2 fazę. Kai kombinacija pagaliau veikia, užrašykite ją prie serverio modelio ir papildinio versijos, nes numatytosios reikšmės vėl pasikeis, ir būtent tas užrašas paverčia kitą atnaujinimą penkių minučių patikra.

Susiję straipsniai