Obě strany podporují AES, obě přijímají SHA-256, a tunel přesto nenaběhne. Návrh selhal na komponentě, kterou nikdo neporovnal, obvykle na skupině pro výměnu klíčů. Tento postup přečte skutečnou výměnu dřív, než cokoli změní, použije jednu omezenou politiku a zanechá návrat, který obnoví předchozí parametry.

Přečtěte si selhání, než změníte skupinu

„Chyba shody zásad“ je shrnutí, ne diagnóza. Znamená, že nebyl nalezen oboustranně přijatelný návrh, a neříká nic o tom, která komponenta byla odmítnuta. Berte ji jako začátek vyšetřování, ne jako důkaz o konkrétní skupině.

Odpověď obvykle nese strana serveru. Log strongSwan na vhodné úrovni vypisuje návrh přijatý od klienta a návrh, který je nakonfigurován přijímat, a rozdíl mezi oběma seznamy pojmenuje komponentu, která selhala.

Nepředpokládejte, že klient nabízí to, co tvrdí starší příspěvek na fóru. Aktivní profil a jeho nainstalovaná politika určují nabízený seznam a aktualizovaný build Windows může nabídnout jinou sadu než ta na snímku obrazovky, ze kterého kopírujete.

Zapište oba seznamy. Čtyři pozice transformací a jedna skupina je krátký seznam a porovnávání řádek po řádku zabere méně času než jakýkoli experiment. Čtyři pozice udržíte snadno v dohledu. Logovací soubor ne.

Porovnejte každou transformaci, ne jedno známé jméno

Návrh IKE je sada voleb, které musí všechny sedět. Šifrování chrání vyjednávání, integrita nebo PRF ho ověřuje a skupina Diffie-Hellman vytváří čerstvý klíčový materiál. Návrh, který se shoduje v prvních dvou a liší se ve třetí, je pro obě strany pořád nepřijatelný.

Dvě pole Windows, která se zde pletou, patří k různým fázím. DHGroup se vztahuje k výměně klíčů IKE, zatímco PfsGroup k podřízené asociaci, která chrání provoz. Změna druhého nemůže opravit selhání v prvním.

Názvy skupin se mezi implementacemi liší a to je samostatný zdroj zmatku. strongSwan píše modp2048 a ecp256, zatímco Windows používá názvy výčtu jako Group14 a ECP256, takže porovnání musí nejdřív přeložit. Veďte si poznámku o dvou sloupcích s oběma názvy. Další neshoda se pak zařadí za pár sekund.

TransformWindows parameterstrongSwan nameFailure it causes
EncryptionCipherTransformConstantsaes, aes256gcm and similarNo common proposal at all
Integrity or PRFAuthenticationTransformConstantssha256, sha512 and similarProposal rejected after encryption matches
Key-exchange groupDHGroupmodp2048, ecp256Exchange fails during key establishment
Child SA protectionPfsGroupesp proposal groupsTunnel negotiates, data association does not

Použijte jednu úplnou a omezenou politiku

Podporovaným nástrojem pro nativní profil IKEv2 je politika IPsec pro jednotlivé připojení, nastavená jako jeden objekt, ne pole po poli. Nejprve ji zobrazte v náhledu, potom ji použijte a předchozí parametry si ponechte v záznamu o změně.

Set-VpnConnectionIPsecConfiguration -ConnectionName "Northwind IKEv2" -AuthenticationTransformConstants SHA256128 -CipherTransformConstants AES256 -EncryptionMethod AES256 -IntegrityCheckMethod SHA256 -DHGroup ECP256 -PfsGroup ECP256 -WhatIf

Přepínač -WhatIf zobrazí místní změnu v náhledu a nic nepoužije. To je užitečné a zároveň častá past, protože náhled dokazuje jen to, že parametry jsou syntakticky přijatelné pro místní cmdlet. Neříká nic o tom, zda brána výsledný návrh přijme.

Zároveň slučte i rozsah. Připojení v úložišti pro všechny uživatele potřebuje odpovídající parametr pro všechny uživatele a úprava profilu pro jednotlivého uživatele se stejným zobrazovaným názvem mění jiný objekt, který tunel nepoužívá.

Potom před testováním slučte i stranu strongSwan na stejnou sadu. Koordinovaná změna na obou koncích je jediná verze, která konverguje; změna jedné strany a opakované pokusy dávají log plný stejného odmítnutí.

Ověřte výměnu a obnovu klíčů odděleně

Úspěšné připojení je jedno pozorování a obnova klíčů druhé. Počáteční vyjednávání IKE používá jednu sadu parametrů a podřízená asociace, která nese provoz, může být později znovu vyjednána s vlastní politikou. Sestava, která se připojí a po chvíli spadne, je obvykle druhý případ.

ipsec statusall | grep -A6 "Northwind"
Get-VpnConnection -Name "Northwind IKEv2" | Format-List *

První příkaz ukazuje pohled serveru na navázané asociace včetně podřízené SA a její zbývající životnosti. Druhý ukazuje, co nyní drží profil klienta, a to je jediný způsob, jak potvrdit, že politika, kterou jste nastavili, je politikou v platnosti.

Než prohlásíte úspěch, sledujte úplnou obnovu klíčů. To znamená nechat připojení dost dlouho nahoru, aby se podřízená asociace nahradila, a potom potvrdit, že provoz pokračuje. Většina neshod politik se skrývá právě v tomto kroku, protože počáteční vyjednávání může uspět se sadou, kterou obnova nepřijímá.

Návrat je předchozí sada parametrů, ne benevolentní záloha. Pokud klient nabídl jen slabou starší skupinu, odpovědí je zlepšit společnou politiku klienta a serveru, ne přidat tu skupinu do brány, kde k ní může každá budoucí strana vyjednat cestu dolů.

Zapište čtyři parametry, skupinu, rozsah připojení a výsledek obnovy klíčů. To je krátká poznámka a právě ona je rozdíl mezi postupem a vyprávěním o tom, jak jednou tunel naběhl.

Související články