IKE over TCP 4500: kontroller begge endar før portregelen
TCP-innkapsling vert av begge endar, ho vert ikkje gjeven av ein brannmurregel. Køyr lyttarsjekken, opptaket og dei fire aksepttrinna i rekkjefølgje.
Støttebillettar kjem ofte inn når brannmur-endra er godkjend allereie og tunnelen framleis nektar å kome opp. Det er det venta resultatet når berre éin ende har funksjonen: TCP-innkapsling etter RFC 9329 må implementerast og konfigurerast i begge endar, og avtalen skjer inne i sambandet før noko verna trafikk kan flytte seg. Å opne ein port annonserer ein lyttar som kanskje ikkje finst, og ein lyttar utan den samsvarande konfigurasjonen i den andre enden godtek eit samband og blir deretter stille. Rekkjefølgja nedanfor set dei billege sjekkane først.
Vit kva alternativet faktisk legg til
Innebygd IPsec transporterer krypterte nyttelastar som IP-protokoll 50, utan eit portnummer som må tillatast. NAT-traversal pakkar desse pakkane inn i UDP til port 4500, og derfor nemner så mange brannmurreglar den porten. RFC 9329 legg til ein strømsrepresentasjon: IKE- og IPsec-pakkar reiser begge inne i éin TCP-samband, vanlegvis til port 4500.
Straumen er ikkje ein webbteneste. Eit TCP-samband til 4500 seier ingenting om HTTP, TLS eller proxyvennlegheit, og ein HTTP-proxy på vegen vil vanlegvis bryte innramminga i staden for å bere henne.
Førehandsjekk før du rører brannmuren
Standarden plasserer TCP som ein fallback for nettverk som droppar UDP-vegen, ikkje som ein erstatning for han. Skaff to fakta frå kvar leverandør: det nøyaktige funksjonsnamnet og versjonen som implementerer RFC 9329 i staden for ein eigen variant. Etikettar som IPsec over TCP er brukte for urelaterte design, så be om dokumentreferansen og konfigurasjonsnøkkelen som slår han på. Utan begge svara bør du ikkje anta noko om kabelkompatibilitet.
Prov det i eit laboratorium der begge endar er dine. Ein gateway som svarar på TCP 4500, men aldri fullfører IKE, er signaturen på ein lyttar utan den samsvarande innkapslinga i den andre enden, og det er mykje billegare å oppdage der enn under eit endringsvindauge.
På respondersida: er det noko som lyttar
Start med sokkelen. ss -ltnp | grep 4500 viser om det finst ein TCP-lyttar og kva prosess som eig han. Fråværet av ei linje avsluttar undersøkinga ved gateway-konfigurasjonen i staden for ved nettverket.
Viss sokkelen er der, sjå på handtrykket i staden for å gisse frå klientsida: tcpdump -ni any 'tcp port 4500'. Eit fullført trevegs handtrykk etterfølgt av stille betyr at straumen vart godteken og IKE-utvekslinga inne i han mislukkast, medan eit SYN utan svar peikar på filtrering eller på feil adresse.
Samanlikn med UDP-vegen i same opptaksvindauge slik at dei to ikkje vert forveksla: tcpdump -ni any 'udp port 4500 or proto 50'. Trafikk på protokoll 50 eller UDP-port 4500 medan du trur TCP er i bruk, betyr at partane aldri vart samde om fallbacken. Ta opp på gatewayen òg viss du kan, fordi eit opptak på klientsida ikkje kan vise kva den fjerne enden sende.
Godta i fire separate trinn
Behandle oppstarten som fire resultat. Kvart kan feile av ulik grunn, og éin einaste bestått eller feila skjuler kva det var, så stopp ved det første trinnet som feilar og start på nytt frå toppen.
| 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 |
Trinn fire er det som vert hoppa over. Ei eksisterande økt kan halde fram med å verke på bufre tilstand, så opne eit nytt samband til ein vert bak gatewayen før du lukkar endringa. Viss trinn to feilar medan trinn éin består, ligg usemja i forslaget eller i innkapslingsinnstillinga, ikkje i brannmuren.
Tilbakerulling, og kostnaden ved å la det stå på
Planlegg angringa før endringa: slå av innkapslingsalternativet i begge endar og stadfest at tunnelen kjem tilbake over UDP. Hald TCP-regelen i éin gjennomgangssyklus i tilfelle fallbacken trengst igjen, og fjern han deretter. Ein ubrukt lyttar på 4500 er åtaksoverflate utan driftsmessig verdi.
Følg med på ytingssignaturen når han ber ekte arbeid. TCP inne i TCP legg til stadfestingslag som stoppar ved eitt einskilt tap, og straumar som deler éin samband kan blokkere kvarandre, så mål applikasjonen som skal bruke tunnelen i staden for ein ping.
Akseptliste
Stadfest funksjonsnamn og versjon i begge endar, lyttaren på respondersida, opptaket som viser eit fullført handtrykk, og dei fire trinna registrerte med tidsstempel. Legg årsaka til fallbacken i endringsloggen slik at neste ingeniør veit kvifor TCP er der. Øv på tilbakerullinga før du treng henne.
Viss eit trinn feilar, reparer berre det trinnet. Å endre chifferpakken eller identitetsinnstillingane for å jage eit transportproblem legg vanlegvis til ein annan, urelatert feil oppå den første.