Windows i strongSwan IKE prijedlozi: usklađivanje četiri transformacije
Zajednička šifra nije dovoljna kada se strane ne slažu oko grupe za razmjenu ključeva. Uporedite sve četiri transformacije, pa primijenite jednu ograničenu politiku profila.
Dvije strane obje podržavaju AES, obje prihvataju SHA-256, a tunel se ipak ne podiže. Prijedlog je pao na komponenti koju niko nije uporedio, obično na grupi za razmjenu ključeva. Ovaj priručnik čita stvarnu razmjenu prije nego što išta promijeni, primjenjuje jednu ograničenu politiku i ostavlja vraćanje koje obnavlja prethodne parametre.
Pročitajte neuspjeh prije nego promijenite grupu
„Greška podudaranja politike“ je sažetak, a ne dijagnoza. Znači da nije pronađen obostrano prihvatljiv prijedlog i ne govori ništa o tome koja je komponenta odbijena. Tretirajte je kao početak istrage, a ne kao dokaz o određenoj grupi.
Odgovor obično nosi serverska strana. strongSwan zapis na odgovarajućem nivou nabraja prijedlog primljen od klijenta i prijedlog koji je konfigurisan da prihvati, a razlika između dvije liste imenuje komponentu koja je pala.
Ne pretpostavljajte da klijent nudi ono što tvrdi starija forumska objava. Aktivni profil i njegova instalirana politika određuju ponuđenu listu, a ažurirana Windows gradnja može ponuditi drugačiji skup od onog na snimku ekrana s kojeg kopirate.
Zapišite obje liste. Četiri pozicije transformacije i jedna grupa kratka je lista, a poređenje red po red traje kraće od bilo kojeg eksperimenta. Četiri pozicije lako je držati na oku. Zapisni fajl nije.
Uporedite svaku transformaciju, a ne jedno poznato ime
IKE prijedlog je skup izbora koji se svi moraju podudarati. Šifriranje štiti pregovaranje, integritet ili PRF ga potvrđuje, a Diffie-Hellman grupa stvara svjež ključni materijal. Prijedlog koji se podudara u prva dva i razlikuje u trećem i dalje je neprihvatljiv za obje strane.
Dva Windows polja koja se ovdje miješaju pripadaju različitim fazama. DHGroup odnosi se na IKE razmjenu ključeva, a PfsGroup na dječju asocijaciju koja štiti saobraćaj. Promjena drugog ne može popraviti neuspjeh u prvom.
Nazivi grupa razlikuju se među implementacijama i to je odvojen izvor zabune. strongSwan piše modp2048 i ecp256, dok Windows koristi nazive nabrajanja kao Group14 i ECP256, pa poređenje mora prevesti prije nego što uporedi. Držite bilješku u dvije kolone s oba naziva. Sljedeće neslaganje tada se klasifikuje za nekoliko sekundi.
| Transform | Windows parameter | strongSwan name | Failure it causes |
|---|---|---|---|
| Encryption | CipherTransformConstants | aes, aes256gcm and similar | No common proposal at all |
| Integrity or PRF | AuthenticationTransformConstants | sha256, sha512 and similar | Proposal rejected after encryption matches |
| Key-exchange group | DHGroup | modp2048, ecp256 | Exchange fails during key establishment |
| Child SA protection | PfsGroup | esp proposal groups | Tunnel negotiates, data association does not |
Primijenite jednu potpunu i ograničenu politiku
Podržani instrument za izvorni IKEv2 profil je IPsec politika po vezi, postavljena kao jedan objekat, a ne polje po polje. Prvo je pregledajte, zatim primijenite i sačuvajte prethodne parametre u zapisu promjene.
Set-VpnConnectionIPsecConfiguration -ConnectionName "Northwind IKEv2" -AuthenticationTransformConstants SHA256128 -CipherTransformConstants AES256 -EncryptionMethod AES256 -IntegrityCheckMethod SHA256 -DHGroup ECP256 -PfsGroup ECP256 -WhatIf
Prekidač -WhatIf pregleda lokalnu promjenu i ništa ne primjenjuje. To je korisno i ujedno česta zamka, jer pregled dokazuje samo da su parametri sintaksno prihvatljivi lokalnom cmdletu. Ne govori ništa o tome hoće li mrežni prolaz prihvatiti dobijeni prijedlog.
Ujedno uskladite i obim. Veza u spremištu za sve korisnike treba odgovarajući parametar za sve korisnike, a uređivanje profila po korisniku s istim prikazanim imenom mijenja drugi objekat koji tunel ne koristi.
Zatim prije testiranja uskladite strongSwan stranu na isti skup. Usklađena promjena na oba kraja jedina je verzija ovoga koja konvergira; promjena jedne strane i ponovljeni pokušaji daju zapis pun istog odbijanja.
Provjerite razmjenu i obnovu ključeva odvojeno
Uspješna veza jedno je zapažanje, a obnova ključeva drugo. Početno IKE pregovaranje koristi jedan skup parametara, a dječja asocijacija koja nosi saobraćaj može se kasnije ponovo pregovarati sa svojom politikom. Postavka koja se poveže i zatim nakon nekog vremena padne obično je drugi slučaj.
ipsec statusall | grep -A6 "Northwind"
Get-VpnConnection -Name "Northwind IKEv2" | Format-List *
Prva naredba pokazuje pogled servera na uspostavljene asocijacije, uključujući dječju SA i njen preostali vijek. Druga pokazuje šta klijentski profil sada drži i to je jedini način da potvrdite da je politika koju ste postavili politika na snazi.
Posmatrajte punu obnovu ključeva prije nego što proglasite uspjeh. To znači ostaviti vezu podignutom dovoljno dugo da se dječja asocijacija zamijeni, a zatim potvrditi da saobraćaj teče dalje. Većina neslaganja politike krije se upravo u tom koraku, jer početno pregovaranje može uspjeti sa skupom koji obnova ne prihvata.
Vraćanje je prethodni skup parametara, a ne permisivna rezerva. Ako je klijent ponudio samo slabu naslijeđenu grupu, odgovor je poboljšati zajedničku politiku klijenta i servera, a ne dodati tu grupu na mrežni prolaz gdje svaka buduća strana može pregovarati nadolje do nje.
Zapišite četiri parametra, grupu, obim veze i rezultat obnove ključeva. To je kratka bilješka i ona je razlika između priručnika i priče o tome kako se tunel jednom podigao.