Povezava se ustavi, odjemalec se konča in zadnja vrstica na zaslonu je death_handler: Fatal signal 15 received. Ta vrstica sporoča prekinitev, ne vzroka. Vrstico višje v dnevniku IPsec je skoraj vedno NO_PROPOSAL_CHOSEN, in par kaže na fazo 2 izmenjave, kjer strani primerjata izbire šifriranja in zgoščevanja ter se ustavita, ko nimata nič skupnega. Poverilnice v tej fazi še niso poslane, zato ponovni vnos gesla ne more spremeniti izida.

Na odjemalcu Linux to presečišče običajno izpraznita dve stvari. Lokalni daemon morda ne izvaja več skupine Diffie-Hellman, ki jo zahteva profil, ali pa profil nosi predlog faze 1 v polju faze 2. Oboje pušča sled v dnevniku in nobeno ni težava z računom.

Kaj sporočata obe sporočili

IKE se pogaja v prehodih. Faza 1 zgradi zaščiten kanal in izbere lastne algoritme; faza 2, podrejena SA, prenaša promet po ločenem nizu. NO_PROPOSAL_CHOSEN je obvestilo, ki ga odgovarjajoča stran vrne, ko nobena od ponujenih kombinacij ni sprejemljiva, in se pojavi kot [ HASH N(NO_PROP) ] znotraj izmenjave INFORMATIONAL.

Signal 15 je drug dogodek: nekaj je lokalnemu procesu ukazalo, naj se ustavi, in upravljalnik je to zabeležil. Ko se obe vrstici pojavita skupaj, je vrstni red vzročen, najprej zavrnitev in nato izklop.

Preberite pogajanja, preden se dotaknete poverilnic

Povišajte raven dnevnika tam, kjer piše daemon, in se nato znova povežite ter opazujte izhod. Na gostitelju z NetworkManager vtičnik L2TP to raven posreduje zaledju, sporočila pa pristanejo v journalu ali v klasični datoteki syslog, odvisno od distribucije. Kateri koli od teh bo pokazal izmenjavo: journalctl -f -u NetworkManager | grep -Ei 'pluto|charon|no_prop|proposal' ali tail -f /var/log/syslog | grep -Ei 'pluto|charon|ike'.

Vrstica z imenom pluto prihaja iz libreswana, charon iz strongSwana, in obe opisujeta isto stanje z drugimi besedami. Oblika, ki se je vredno iskati, je tista, ki poimenuje manjkajočo skupino, na primer algorithm 'modp1024' is not supported, ker nejasno napako spremeni v konkretno.

Kam je izginil modp1024

Skupina 2 Diffie-Hellman je dovolj šibka, da je več distribucij prenehalo prevajati v libreswan od različice 3.30. Profil, napisan pred leti ali prevzet iz vodnika za prehod, ki navaja samo aes128-sha1-modp1024, takrat od lokalnega daemona zahteva nekaj, česar ta sploh ne zmore. Novejše gradnje NetworkManager-l2tp naredijo ta izid verjetnejši: od različice 1.2.16 niz nadomestijo s predlogi v slogu Windows 10 in iOS ter modp1024 opustijo takoj, ko zaznajo libreswan. Nasprotna stran je pogosto nedolžna in še vedno ponuja natanko skupino, ki ste jo nastavili.

Prav ta asimetrija naredi napako naključno. Starejši odjemalec se poveže, isti profil na posodobljenem prenosniku ne, konfiguracija strežnika pa se ni nikoli premaknila. Škodo povzroči razhajanje različic.

Dve popravili z različnim dosegom

Poceni popravilo je prenehanje trdega kodiranja algoritmov. Počistite obe polji predlogov v urejevalniku in pustite vtičniku, da izbere niz, ki ga sprejme oddaljena stran; če prehod podpira sodobne skupine, se pogajanja končajo brez dodatnega dela.

Drugo popravilo ohrani star prehod dostopen z namestitvijo strongSwana, katerega paketi v večini distribucij še vedno izvajajo skupino 2. To je zamenjava daemona, zato ima ceno: preverite, ali so drugi tuneli na gostitelju odvisni od konfiguracije libreswana, preden ga odstranite, in pričakujte zavrnitve SELinux med NetworkManagerjem in vtičnikom strongSwan v Fedori. Te zavrnitve se pojavijo v revizijskem dnevniku in ne v sledi IKE, zato je lahko tunel videti pokvarjen takoj po uspešni namestitvi. Vrstni red, ki deluje, je najprej dnf install strongswan, nato rpm -e libreswan.

Predlogi, ki se ujemajo, in pasti okoli njih

Ko je treba polja izpolniti ročno, faza 1 in faza 2 prevzameta različne vrednosti. Par, za katerega je znano, da deluje proti nasprotni strani v slogu Meraki, ponuja v fazi 1 aes128-sha1-modp1024 s 3des-sha1-modp1024 za njim, oba zaprta s klicajem, ki niz naredi strog, zato se pošljejo samo ti predlogi.

Faza 2 se nato zoži na aes128-sha1 in 3des-sha1 z isto strogo oznako in povsem brez pripone Diffie-Hellman. Vrstica faze 2 z -modp1024 je vrednost faze 1 v napačnem polju in odgovarjajoča stran jo zavrne pri vsakem poskusu. Kopirajte to vrstico v drug profil in drugi profil spodleti enako, in tako ena tipkarska napaka postane incident za celotno floto.

Druge okvare nosijo isto pojavno okno, ne da bi bile neskladje predlogov. V KDE je tip L2TP lahko naveden z nameščenim vtičnikom, medtem ko vsaka povezava takoj umre, ker se urejevalnik povezav in pomožni programi izvajalnega časa dobavljajo kot ločeni paketi. Gostitelji brez zaslona lahko znova uporabijo profil z delujoče namizje: kopirajte ga iz /etc/NetworkManager/system-connections/, nastavite način na 600 in nato zaženite nmcli con reload. Dvignite ga z nmcli con up id work-l2tp, ker gola oblika zahteva UUID, in odstranite vsak zastarel vnos ifname, sicer upravljalnik odgovori Could not find source connection, čeprav je vse drugo pravilno.

Vnaprej souporabljeni ključ se lahko shrani kot čisto besedilo ali kot 0s, ki mu sledi base64; obe obliki delujeta, a vrednost se mora ujemati s prehodom bajt za bajtom, vključno s presledki na koncu, ki ste jih kopirali z njo.

Sorodni članki