Keď IKEv2 vráti TS_UNACCEPTABLE, porovnajte skutočné podsiete
Odmietnutie selektora je nezhoda v pokrytí medzi dvoma stranami. Otočte miestne a vzdialené označenia a potom porovnajte presné rozsahy, ktoré navrhuje každá strana.
Čítajte TS_UNACCEPTABLE ako nezhodu v pokrytí, nie ako poškodený profil. Brána hovorí, že dve strany sa nedokázali dohodnúť, ktoré adresy môže tento tunel prenášať. IKE SA už v tej chvíli môže byť nadviazaná, a preto sa klient môže javiť pripojený bez dcérskej SA za sebou. Keď to takto zarámujete, práca sa stane mechanickou. Zapíšte zamýšľané prefixy oboch strán, porovnajte ich v jednom smere a zužujte, kým sa nepretnú.
Najprv si zapíšte zamýšľané dvojice
Predtým, než sa dotknete konfigurácie, vypíšte štyri hodnoty: zdrojový rozsah iniciátora, jeho cieľový rozsah a rovnakú dvojicu videnú zo strany respondéra. Zapíšte aj adresnú rodinu každého z nich. Rozsah IPv4 a rozsah IPv6 sú rôzne typy selektorov a ani jeden sa nedá zložiť do užitočnej záťaže toho druhého.
Pridajte akékoľvek obmedzenie protokolu alebo portu, ktoré politika nesie. Pravidlo povoľujúce iba TCP 445 k súborovému serveru opisuje užšiu množinu než podsiet, v ktorej sa nachádza. Ak to necháte mimo svojich poznámok, výsledok rokovania bude vyzerať nekonzistentne z dôvodov, ktoré nevidíte.
Otočte označenia pred porovnaním
Miestne a vzdialené sú relatívne označenia. Miestny prefix klienta je vzdialený rozsah brány a miestny rozsah brány je vzdialený rozsah klienta. Preto snímky obrazovky z oboch koncov nikdy nesedia a ich doslovné porovnávanie je štandardný spôsob, ako stratiť popoludnie.
Respondér môže ponuku zúžiť na prijateľnú podmnožinu namiesto toho, aby ju odmietol. Tento výsledok je horší než čisté zlyhanie, pretože funguje na polovicu. Požiadajte o 10.0.0.0/16, keď politika povoľuje 10.0.5.0/24, a môžete skončiť s dcérskou SA pokrývajúcou iba tú /24. Odpovie jeden hostiteľ, všetko ostatné zostane vonku a nič v klientovi to nepovie. Predtým, než usúdite, že rokovanie bolo úspešné, čítajte prijaté selektory, nie požadované.
Profily road warrior, ktoré žiadajú predvolenú trasu, sem neustále padajú. Brána postavená pre rozdelený prístup zužuje ponuku plného rozsahu na svoje vlastné podsiete a klient musí zúžený výsledok prijať alebo hlasno zlyhať.
Čítajte odmietnutie z jedného pokusu
Zozbierajte oba záznamy z toho istého pokusu o pripojenie. Uložený profil ukazuje, čo ste nakonfigurovali, nie čo bolo navrhnuté, a na strongSwane swanctl --log vypíše prijaté oznámenie spolu so selektormi, ktoré nieslo.
Potom skontrolujte, čo sa skutočne nainštalovalo. swanctl --list-sas ukazuje selektory dcérskej SA a ip xfrm policy ukazuje tie isté rozsahy ako položky politiky jadra. Dcérska SA v tom zozname so selektormi, ktoré ste nezamýšľali, je udalosť zúženia; žiadna dcérska SA plus TS_UNACCEPTABLE v zázname je odmietnutie.
Kým ste tam, oddeľte blízkych susedov. INVALID_SELECTORS sa sťažuje na selektor vnútri zavedenej dcérskej SA, zatiaľ čo INTERNAL_ADDRESS_FAILURE znamená, že respondér nemohol prideliť virtuálnu adresu, čo je problém fondu, nie pokrytia.
Skontrolujte, čo množinu potichu zmenšuje
Tri veci zmenšujú množinu selektorov bez toho, aby čokoľvek povedali. Prvá je politika respondéra cez zoznamy podsietí, skupinové pravidlá alebo autorizáciu na používateľa, ktoré znižujú ponuku na podmnožinu. Druhá je adresná rodina: klient s dvoma zásobníkmi často navrhuje IPv6 vedľa IPv4 a dostane odmietnutie pre rozsahy, ktoré brána nikdy nenakonfigurovala.
Tretie sú obmedzenia protokolu a portu. Tam, kde politika povoľuje iba TCP 445, môže sa dcérska SA zdvihnúť, kým ICMP a UDP zostávajú mimo nej, a používateľ hlási rozbitý tunel, hoci povolený bol iba jeden protokol.
Preto samotné rozširovanie adries nemôže opraviť politiku obmedzenú portom, a to je práve prípad, ktorý najpravdepodobnejšie prežije tri kolá riešenia problémov nezmenený.
Dokážte pokrytie vhodnou prevádzkou
Po nainštalovaní dcérskej SA pošlite jednu požiadavku, ktorá určite padne do prijatých rozsahov. Sledujte počítadlá namiesto ikony stavu: ip -s xfrm state a počítadlá za ip xfrm policy rastú, keď sa paket spáruje a ochráni. Počet bajtov, ktorý po skutočnej prevádzke zostane na nule, znamená, že jadro nikdy tú politiku nevybralo.
Tá nula je problém smerovania alebo poradia politík, nie kryptografie. Z pohľadu používateľa vyzerá tiež rovnako ako odmietnutie selektora, a preto sa počítadlá oplatí zozbierať pred opätovným otvorením profilu. Počítadlá, ktoré rastú iba jedným smerom, ukazujú skôr na spiatočnú cestu.
Skončite zápisom prijatej dvojice do tiketu, vedľa rozsahu, ktorý bol pôvodne požadovaný. Držte výber taký úzky, ako to vyžaduje požiadavka, pretože odstránenie chyby nahradením súkromného rozsahu všetkými adresami poskytuje oveľa viac prístupu, než bolo pre účet schválené.