IKE preko TCP 4500: provjerite oba peer-a prije pravila za port
TCP enkapsulaciju pregovaraju oba peer-a, a ne dodjeljuje je firewall pravilo. Izvedite provjeru listenera, snimanje i četiri faze prihvatanja po redu.
Support tiketi često dolaze s već odobrenom promjenom firewalla i tunelom koji još odbija da se podigne. To je očekivani rezultat kada samo jedan kraj ima tu funkciju: TCP enkapsulacija prema RFC 9329 mora biti implementirana i konfigurisana na oba peer-a, a dogovor se odvija unutar veze prije nego što krene bilo kakav zaštićeni saobraćaj. Otvaranje porta oglašava listener koji možda ne postoji, a listener bez odgovarajuće konfiguracije na drugoj strani prihvata vezu i zatim utihne. Redoslijed ispod stavlja jeftine provjere na prvo mjesto.
Znajte šta opcija zapravo dodaje
Ugrađeni IPsec prenosi šifrirane korisne terete kao IP protokol 50, bez broja porta koji se dozvoljava. NAT traversal umotava te pakete u UDP na port 4500, zbog čega toliko firewall pravila spominje taj port. RFC 9329 dodaje predstavljanje toka: IKE i IPsec paketi putuju zajedno unutar jedne TCP veze, obično na port 4500.
Tok nije web servis. TCP veza na 4500 ne govori ništa o HTTP, TLS-u ili prijateljstvu s proxyjem, a HTTP proxy na putu obično će slomiti uokviravanje umjesto da ga prenese.
Provjera prije nego što dotaknete firewall
Standard postavlja TCP kao rezervni put za mreže koje odbacuju UDP put, a ne kao njegovu zamjenu. Uzmite dvije činjenice od svakog dobavljača: tačan naziv funkcije i verziju koja implementira RFC 9329, a ne vlasničku varijantu. Oznake poput IPsec over TCP korištene su za nepovezane dizajne, pa tražite referencu na dokument i konfiguracijski ključ koji je uključuje. Bez oba odgovora ne pretpostavljajte ništa o kompatibilnosti na žici.
Dokažite to u laboratoriji gdje su oba kraja vaša. Gateway koji odgovara na TCP 4500 ali nikada ne dovrši IKE potpis je listenera bez odgovarajuće enkapsulacije na drugoj strani, i mnogo je jeftinije otkriti to tamo nego tokom prozora promjene.
Na responderu: ima li šta da sluša
Počnite sa socketom. ss -ltnp | grep 4500 pokazuje postoji li TCP listener i koji proces ga posjeduje. Odsustvo linije završava istragu na konfiguraciji gatewaya, a ne na mreži.
Ako socket postoji, posmatrajte handshake umjesto da nagađate sa strane klijenta: tcpdump -ni any 'tcp port 4500'. Završen trostruki handshake praćen tišinom znači da je tok prihvaćen i da je IKE razmjena unutar njega propala, dok SYN bez odgovora ukazuje na filtriranje ili na pogrešnu adresu.
Uporedite s UDP putem u istom prozoru snimanja da se dva ne pomiješaju: tcpdump -ni any 'udp port 4500 or proto 50'. Saobraćaj na protokolu 50 ili UDP portu 4500 dok vjerujete da se koristi TCP znači da se peer-ovi nikada nisu dogovorili o rezervnom putu. Snimajte i na gatewayu ako možete, jer snimanje sa strane klijenta ne može pokazati šta je poslao drugi kraj.
Prihvatite u četiri odvojene faze
Tretirajte podizanje kao četiri rezultata. Svaki može propasti iz drugog razloga, a jedan prolaz ili pad skriva koji je, zato se zaustavite na prvoj fazi koja padne i počnite ponovo od vrha.
| Stage | What you check | What it proves |
|---|---|---|
| 1 | TCP connection established to 4500 | A listener exists and the path permits it |
| 2 | IKE_SA authenticated in the gateway log | Both peers agreed on the encapsulation |
| 3 | CHILD_SA installed, visible with ip xfrm state | Keys exist for the protected traffic |
| 4 | A new application exchange succeeds | The data path works, not just the control path |
Četvrta faza je ona koja se preskače. Postojeća sesija može nastaviti raditi na keširanom stanju, pa otvorite svježu vezu prema hostu iza gatewaya prije nego što zatvorite promjenu. Ako druga faza padne dok prva prolazi, neslaganje je u predlogu ili u postavci enkapsulacije, a ne u firewallu.
Vraćanje unazad i cijena ostavljanja uključenog
Isplanirajte poništavanje prije promjene: isključite opciju enkapsulacije na oba peer-a i potvrdite da se tunel vraća preko UDP-a. Zadržite TCP pravilo jedan ciklus pregleda u slučaju da rezervni put ponovo zatreba, a zatim ga uklonite. Neiskorišteni listener na 4500 je površina bez operativne vrijednosti.
Pazite na potpis performansi kada ponese pravi posao. TCP unutar TCP-a dodaje slojeve potvrde koji se zaglave na jednom gubitku, a tokovi koji dijele jednu vezu mogu blokirati jedan drugog, pa mjerite aplikaciju koja će koristiti tunel umjesto pinga.
Lista prihvatanja
Potvrdite naziv i verziju funkcije na oba kraja, listener na responderu, snimak koji pokazuje završen handshake i četiri faze zabilježene s vremenskim oznakama. Dodajte razlog rezervnog puta u zapis promjene da sljedeći inženjer zna zašto je TCP tu. Vježbajte vraćanje unazad prije nego što vam zatreba.
Ako bilo koja faza padne, popravite samo tu fazu. Promjena cipher suite-a ili postavki identiteta da biste lovili transportni problem obično dodaje drugi, nepovezani kvar na prvi.