Veza vam se smrzne, klijent izađe, a zadnji redak na zaslonu je death_handler: Fatal signal 15 received. Taj redak prijavljuje prekid, a ne uzrok. Redak iznad u IPsec zapisu gotovo uvijek sadrži NO_PROPOSAL_CHOSEN, a par upućuje na fazu 2 razmjene, gdje strane uspoređuju izbore šifriranja i heširanja i staju kad nemaju ništa zajedničko. Vjerodajnice u toj fazi još nisu poslane, pa ponovni unos lozinke ne može promijeniti ishod.

Dvije stvari obično isprazne taj presjek na Linux klijentu. Lokalni demon možda više ne implementira Diffie-Hellman grupu koju profil traži, ili profil nosi prijedlog faze 1 u polju za fazu 2. Obje ostavljaju trag u zapisu, i nijedna nije problem s računom.

Što te dvije poruke zapravo govore

IKE pregovara u prolazima. Faza 1 gradi zaštićeni kanal i bira vlastite algoritme; faza 2, dijete SA, prenosi promet po zasebnom skupu. NO_PROPOSAL_CHOSEN je obavijest koju odgovarač vraća kad nijedna od ponuđenih kombinacija nije prihvatljiva, i pojavljuje se kao [ HASH N(NO_PROP) ] unutar INFORMATIONAL razmjene.

Signal 15 je drugi događaj: nešto je reklo lokalnom procesu da se zaustavi i rukovatelj je to zapisao. Kad se oba retka pojave zajedno, redoslijed je uzročan, prvo odbijanje pa gašenje.

Pročitajte pregovore prije nego dirnete vjerodajnice

Podignite razinu zapisa tamo gdje demon piše, pa se ponovno povežite gledajući izlaz. Na NetworkManager hostu L2TP dodatak prosljeđuje tu razinu pozadini, a poruke završavaju u journalu ili u klasičnoj syslog datoteci ovisno o distribuciji. Bilo što od ovoga pokazat će razmjenu: journalctl -f -u NetworkManager | grep -Ei 'pluto|charon|no_prop|proposal' ili tail -f /var/log/syslog | grep -Ei 'pluto|charon|ike'.

Redak koji imenuje pluto dolazi iz libreswana, charon iz strongSwana, i oba opisuju isto stanje različitim riječima. Oblik koji vrijedi tražiti je onaj koji imenuje grupu koja nedostaje, poput algorithm 'modp1024' is not supported, jer nejasnu grešku pretvara u konkretnu.

Kamo je otišao modp1024

Diffie-Hellman grupa 2 dovoljno je slaba da je nekoliko distribucija prestalo kompajlirati u libreswan od 3.30 nadalje. Tada profil napisan prije godina, ili preuzet iz vodiča za mrežni prolaz koji navodi samo aes128-sha1-modp1024, traži od lokalnog demona nešto što ovaj uopće ne može izvesti. Novije NetworkManager-l2tp gradnje taj ishod čine vjerojatnijim: od 1.2.16 zamjenjuju skup prijedlogom u stilu Windows 10 i iOS i izbacuju modp1024 čim otkriju libreswan. Druga strana često je nevina i još uvijek nudi upravo grupu koju ste postavili.

Ta asimetrija je ono što grešku čini slučajnom. Stariji klijent se poveže, isti profil na ažuriranom prijenosniku ne, a konfiguracija poslužitelja nikada se nije pomakla. Štetu radi razlika u verzijama.

Dva popravka s različitim obujmom posljedica

Jeftin popravak je prestati tvrdo kodirati algoritme. Obrišite oba polja prijedloga u uređivaču i pustite dodatku da izabere skup koji druga strana prihvaća; ako prolaz podržava moderne grupe, pregovor završava bez dodatnog rada.

Drugi popravak održava stari prolaz dostupnim instaliranjem strongSwana, čiji paketi još uvijek implementiraju grupu 2 na većini distribucija. To je zamjena demona, pa ima cijenu: provjerite ovise li drugi tuneli na hostu o libreswan konfiguraciji prije nego ga uklonite, i očekujte SELinux odbijanja između NetworkManagera i strongSwan dodatka na Fedori. Ta se odbijanja pojavljuju u revizijskom zapisu, a ne u IKE tragu, zato tunel može izgledati pokvaren odmah nakon uspješne instalacije. Redoslijed koji radi je prvo dnf install strongswan, zatim rpm -e libreswan.

Nizovi prijedloga koji se podudaraju i zamke oko njih

Kad polja morate ispuniti ručno, faza 1 i faza 2 uzimaju različite vrijednosti. Par za koji se zna da radi s Meraki stilom druge strane nudi aes128-sha1-modp1024 u fazi 1 s 3des-sha1-modp1024 iza sebe, oba zatvorena uskličnikom koji skup čini strožim, pa se šalju samo ti prijedlozi.

Faza 2 se zatim sužava na aes128-sha1 i 3des-sha1 s istom strogom oznakom i bez ikakvog Diffie-Hellman sufiksa. Redak faze 2 koji nosi -modp1024 vrijednost je faze 1 na pogrešnom mjestu, i odgovarač ga odbija pri svakom pokušaju. Kopirajte taj redak u drugi profil i drugi profil pada na isti način, tako jedna tipfeler postaje incident na razini cijele flote.

Drugi kvarovi nose isti skočni prozor bez toga da su nesklad prijedloga. Na KDE-u tip L2TP može biti naveden uz instaliran dodatak, a svaka veza odmah umre, jer se uređivač veza i pomoćnici za vrijeme izvođenja isporučuju kao zasebni paketi. Hostovi bez zaslona mogu ponovo upotrijebiti profil s radne površine: kopirajte ga iz /etc/NetworkManager/system-connections/, postavite način na 600, zatim pokrenite nmcli con reload. Podignite ga s nmcli con up id work-l2tp, jer gola forma traži UUID, i uklonite svaki zastarjeli ifname unos, inače upravitelj odgovori Could not find source connection dok je sve ostalo ispravno.

Unaprijed dijeljeni ključ može se čuvati kao čisti tekst ili kao 0s pa base64; oba oblika rade, ali vrijednost mora odgovarati prolazu bajt po bajt, uključujući završne razmake koje ste kopirali s njom.

Povezani članci