Šta ulazi u IPsec predlog? IKE i ESP polja
Predlog je jedna kompletna ponuda, a ne vreća algoritama. Pogledajte koja polja pripadaju IKE-u, a koja ESP-u, i zašto jedno nepodudaranje odbija ceo skup.
IKE počinje, oba sagovornika oglašavaju AES, a tunel i dalje pada sa NO_PROPOSAL_CHOSEN. Zapis imenuje predlog, ali ne i polje koje se nije poklopilo. Predlog je jedna kompletna ponuda, i jedno nekompatibilno polje poništava celu kombinaciju, a ne samo taj red. Čitanje predloga kao vreće nezavisnih izbora algoritama uobičajen je razlog zašto nepodudaranje ostaje nevidljivo.
Dva pregovora sa odvojenim listama predloga
IKEv2 gradi dve sigurnosne asocijacije. Prva je IKE SA, koja štiti samu razmenu upravljanja, a druga je CHILD SA, koja prenosi vaš saobraćaj kroz ESP. Svaka ima sopstvenu listu predloga, a sagovornik može prihvatiti jednu i odbiti drugu.
Ta podela objašnjava čestu zbrku: ispravna IKE SA dokazuje samo da su se algoritmi upravljačkog kanala poklopili. Ako predlog CHILD ne uspe, tunel nikada ne prenese nijedan paket, iako je prva faza završena i zapisi na vrhu izgledaju zdravo.
Redosled unutar svake liste takođe je važan. Odgovarač bira iz inicijatorovih poređanih ponuda, pa premeštanje široko kompatibilnog unosa iznad uskog menja koji će se skup instalirati, bez promene ijednog imena algoritma. Fiksirajte taj redosled u konfiguraciji umesto da se oslanjate na podrazumevane vrednosti. Stabilan redosled čini i poređenje zapisa između lokacija smislenim.
Koja polja pripadaju kojem predlogu
Skup polja je mali, ali nije isti u oba pregovora. Čitajte tabelu red po red, jer polje u jednoj koloni može izostati u drugoj. Sintaksa se razlikuje po implementaciji; strongSwan dokumentacija o predlozima je jedan konkretan izvor.
| Field | IKE SA proposal | CHILD SA proposal |
|---|---|---|
| Encryption | Required | Required |
| Integrity | Required unless AEAD | Required unless AEAD |
| PRF | Required | Not present |
| DH group | Required | Only for PFS |
| ESN | Not present | Optional |
Polje šifriranja imenuje šifru i, u većini sintaksi, dužinu ključa. Polje integriteta imenuje heš koji se koristi za autentifikaciju šifrovanog teksta, a PRF imenuje funkciju koja izvodi ključni materijal za IKE SA. DH grupa uspostavlja novi zajednički tajni materijal, zbog čega se pojavljuje na obe strane, ali u različite svrhe.
Prošireni redni brojevi pripadaju samo putanji podataka. Oni proširuju prostor rednih brojeva i pregovaraju se kao deo CHILD predloga, pa nepodudaranje tamo odbija CHILD ponudu, dok IKE SA ostaje netaknut.
Kako se bira jedna kompletna ponuda
Svaki predlog je skup, a odgovarač traži skup u kojem je svako obavezno polje prihvatljivo. Dve liste mogu obe sadržati AES i SHA-256 i ipak nemati kompatibilan unos, jer se dužina ključa, PRF ili DH grupa razlikuju. Poređenje se obavlja po predlogu, a ne po algoritmu.
Kada se ništa ne poklopi, odgovarač šalje NO_PROPOSAL_CHOSEN sa tipom SA koji nije uspeo. Pročitajte na koju se listu predloga odnosi obaveštenje pre nego što uredite konfiguraciju; menjanje ESP algoritama kada je IKE predlog odbijen troši ciklus otklanjanja grešaka.
Ponašanje pri izboru vredi znati kada podešavate profil. Neke implementacije preferiraju redosled inicijatora, druge preslažu po lokalnoj politici, pa skup koji radi između dva dobavljača može nestati kada obrnete koju stranu pokreće vezu.
AEAD uklanja polje umesto da ga dodaje
AES-GCM i ChaCha20-Poly1305 autentifikuju i šifruju u jednoj operaciji. Kada se bilo koji od njih izabere za ESP, algoritam integriteta se ne pregovara odvojeno, jer AEAD konstrukcija već pokriva to. Zato je predlog koji spaja AES-GCM sa SHA-256 u najboljem slučaju suvišan, a u najgorem odbijen.
PRF je i dalje odvojen na IKE strani, jer izvodi ključeve za upravljački kanal umesto da štiti korisni teret. Zato IKE predlog može legitimno kombinovati AEAD šifru sa PRF-om i DH grupom, dok odgovarajući ESP predlog navodi samo AEAD šifru i opcionu PFS grupu.
Dužina ključa deo je tokena za šifriranje, pa su AES-128-GCM i AES-256-GCM različite ponude. Profil kopiran iz vodiča koji je pretpostavljao 256-bit ključeve neće se poklopiti sa krajnjom tačkom konfigurisanom za 128-bit, iako oba reda kažu AES-GCM. Dva sagovornika mogu se složiti o porodici šifri i ipak odbiti jedan drugog zbog broja nakon crtice.
Čitajte instaliranu SA, a ne konfiguraciju
Konfigurisana lista predloga je ponuda; instalirana SA je rezultat. Na strongSwan-u i Linux kernelu oba prikaza su dostupna:
sudo swanctl --list-sas
sudo ip xfrm state
sudo ip xfrm policyswanctl --list-sas ispisuje pregovarane algoritme po SA, uključujući i to da li CHILD koristi AEAD. ip xfrm state pokazuje šta je kernel stvarno instalirao, i to je mesto gde potvrđujete da obnova ključa nije pala na drugačiji skup od onog koji ste dokumentovali.
Sačuvajte taj izlaz uz konfiguraciju nakon popravke. Kada ažuriranje klijenta promeni podrazumevane vrednosti, zabeleženi skup vam daje osnovu za poređenje, a poređenje pokazuje na polje koje se pomerilo umesto da istragu počinje iznova.