NEGOTIATION_FAILURE na tuneli Cloud VPN s Cisco ASA na vzdialenej strane je takmer vždy nezhoda v návrhu alebo v selektoroch a prvým užitočným faktom je, že to žiadna úprava nespraví. Cloud VPN zafixuje návrh IKE pri vytvorení objektu tunela. Neexistuje pole na zmenu algoritmu na mieste, takže oprava je vymazanie a nové vytvorenie so zaznamenaným východiskovým bodom. Berte to ako prestavbu a práca sa zmení na kontrolný zoznam namiesto popoludnia plného hádania.

Prečítajte zlyhanie skôr, než čokoľvek vymažete

Zlyhanie vyjednávania je problém fázy a log protistrany zvyčajne fázu pomenuje. Zlyhanie fázy 1 znamená, že sa strany nedohodli na návrhu alebo sa nedokázali vzájomne autentizovať. Zlyhanie fázy 2 znamená, že tunel vstal a chránené selektory si nezodpovedali. To sú rôzne opravy a riadok z logu sa oplatí vytiahnuť skôr, než niekto siahne na konfiguráciu.

Zlyhanie tiež vylučuje viacero vecí. Nie je to trasa vo VPC, nie je to pravidlo firewallu na rozhraní tunela a nie je to porucha prekladu mien v sieti. Naháňanie týchto vecí prináša sebavedomé zmeny, ktoré nemôžu zmeniť výsledok, a sťažuje priradenie konečnej opravy.

Zachyťte obe konfigurácie, kým ešte existujú

Vymazanie tunela trvá pol minúty a zničí jediný dôkaz, ktorý ste mali. Predtým si zapíšte miestne a vzdialené selektory, adresu protistrany, komu patrí zdieľané tajomstvo a crypto map alebo profil IKEv2 na ASA. ASA odpovedá na dve oddelené otázky: čo je nakonfigurované a čo práve beží:

show running-config crypto ikev2
show crypto ikev2 sa
show crypto ipsec sa | include local ident|remote ident|status

Na strane Google čítajte objekt tunela, nie zhrnutie v konzole, pretože adresa protistrany a polia selektorov sú hodnoty, ktoré musíte presne zopakovať:

gcloud compute vpn-tunnels describe tunnel-to-asa --region europe-west1 \
  --format="yaml(peerIp,localTrafficSelector,remoteTrafficSelector,ikeVersion,sharedSecret)"

Zapíšte tie hodnoty do tiketu pred prvým vymazaním. Prestavba nižšie funguje len preto, že dokážete znova vytvoriť ten istý objekt s jedným zámerným rozdielom.

Algoritmy, o ktorých jedna strana odmieta vyjednávať

Cloud VPN nevyberá z radu algoritmov IKEv1 ako tradičná protistrana. Nastavenia protistrany, ktoré očakáva, sú pevné: aes-cbc-128 na šifrovanie, sha1-96 na integritu aj PRF, skupina Diffie-Hellman 2, 36,600 sekundy pre fázu 1 a 10,800 sekundy pre fázu 2. Zásada na ASA musí ponúknuť presne túto sadu. Druhý návrh na ASA neškodí, ak je v zozname aj ten zodpovedajúci.

IKEv2 dáva obom stranám viac priestoru, ale pravidlá si držia rovnaký tvar: zapnite PFS, zvoľte skupinu DH, ktorú tunel podporuje, a držte zoznam návrhov dosť krátky, aby bola nezhoda zjavná. Protistrana ASA na Cloud VPN znamená aj statické smerovanie, takže chránené prefixy treba naplánovať a vypísať, nie nechať na BGP.

Životnosť skopírovaná zo šablóny iného výrobcu je tu obvyklá chybná odbočka. Google tieto hodnoty zverejňuje ako povinné nastavenia protistrany, tak ich nastavte; kratšia hodnota sa nevyjedná nahor na to, čo ASA chce.

Vymažte, vytvorte znova a vyčistite starý stav

Vymažte tunel, nie bránu, a poznamenajte si meno, ktoré Cloud VPN pridelí náhrade, pretože mená sa prideľujú, nie znovu používajú. Vytvorte ho znova so zaznamenanými hodnotami a rovnakou adresou protistrany, potom pridajte zodpovedajúci návrh do zoznamu zásad ASA.

Vyčistite bezpečnostné asociácie po zmene na ASA a pred čítaním výsledku. ASA môže ďalej ponúkať zastaranú zásadu, kým súčasná SA nevyprší, takže správna konfigurácia vyzerá pokazená celý čas života tej starej a pozorovateľ usúdi, že prestavba zlyhala, keď ešte ani nezačala:

clear crypto ikev2 sa
clear crypto ipsec sa

Potvrďte, že fáza 1 vstane, skôr než sa pozriete na fázu 2. Kým je fáza 1 dole, návrh alebo predzdieľaný kľúč sú nesprávne a práca so selektormi to nezmení.

Selektory sa zrkadlia, potom rozhodujú čítače

Fáza 2 funguje len vtedy, keď sa obe strany zhodnú na chránených adresách, a zhoda je zrkadlová, nie zdieľaná. Miestny selektor Google musí zodpovedať selektoru, ktorý ASA nazýva vzdialeným, a vzdialený selektor Google tomu, čo ASA nazýva miestnym. Tunel s 0.0.0.0/0 na jednej strane a jedinou podsietou na druhej prejde fázou 1 a potom zlyhá vo fáze 2 s tou istou hlavnou chybou. Žiadna strana nemôže rozšíriť zoznam tej druhej.

Pre selektory založené na zásadách vypíšte každú dvojicu prefixov a zoznam držte v tikete. Podsieť pridaná neskôr v lokalite vyžaduje úpravu na oboch koncoch, pretože nová trasa na ASA nerozširuje selektor, a výsledkom je tunel, ktorý beží a prepúšťa prevádzku iba pre prefixy, ktoré existovali prvý deň.

Skončite jedným tokom od hostiteľa k hostiteľovi a prečítajte čítače bajtov na oboch stranách. Čítače rastúce na ASA a stojace na Google zvyčajne znamenajú, že odpoveď odchádza iným rozhraním alebo že selektor nepokrýva spiatočný prefix. Zapíšte algoritmy, životnosti, selektory a nové meno tunela, pretože ďalšia zmena návrhu túto prestavbu zopakuje a tie hodnoty z nej urobia krátku prácu.

Súvisiace články