Supportbilletter kommer ofte med firewallændringen allerede godkendt og tunnelen, der stadig nægter at komme op. Det er det forventede resultat, når kun den ene ende har funktionen: TCP-indkapsling efter RFC 9329 skal implementeres og konfigureres i begge ender, og aftalen sker inde i forbindelsen, før nogen beskyttet trafik kan flytte sig. At åbne en port annoncerer en lytter, der måske ikke findes, og en lytter uden den matchende konfiguration i den anden ende accepterer en forbindelse og bliver derefter tavs. Rækkefølgen nedenfor sætter de billige kontroller først.

Ved, hvad indstillingen faktisk tilføjer

Indbygget IPsec transporterer krypterede nyttelaster som IP-protokol 50, uden et portnummer at tillade. NAT-traversal pakker disse pakker ind i UDP til port 4500, og derfor nævner så mange firewallregler den port. RFC 9329 tilføjer en strømrepræsentation: IKE- og IPsec-pakker rejser begge inde i én TCP-forbindelse, normalt til port 4500.

Strømmen er ikke en webtjeneste. En TCP-forbindelse til 4500 siger intet om HTTP, TLS eller proxyvenlighed, og en HTTP-proxy på vejen vil normalt bryde indramningen i stedet for at bære den.

Forhåndskontrol, før du rører firefallen

Standarden placerer TCP som en tilbagefaldsløsning for netværk, der dropper UDP-vejen, ikke som en erstatning for den. Få to fakta fra hver leverandør: det præcise funktionsnavn og den version, der implementerer RFC 9329 i stedet for en proprietær variant. Betegnelser som IPsec over TCP er blevet brugt til urelaterede designs, så bed om dokumentreferencen og den konfigurationsnøgle, der slår den til. Uden begge svar bør du ikke antage noget om kompatibilitet på kablet.

Bevis det i et laboratorium, hvor begge ender er dine. En gateway, der svarer på TCP 4500, men aldrig fuldfører IKE, er signaturen på en lytter uden den matchende indkapsling i den anden ende, og det er meget billigere at opdage der end under et ændringsvindue.

På responder-siden: er der noget, der lytter

Start med soklen. ss -ltnp | grep 4500 viser, om der findes en TCP-lytter, og hvilken proces der ejer den. Fraværet af en linje afslutter undersøgelsen ved gateway-konfigurationen i stedet for ved netværket.

Hvis soklen er der, så se på håndtrykket i stedet for at gætte fra klientsiden: tcpdump -ni any 'tcp port 4500'. Et fuldført trevejshåndtryk efterfulgt af tavshed betyder, at strømmen blev accepteret, og at IKE-udvekslingen inde i den mislykkedes, mens et SYN uden svar peger på filtrering eller på den forkerte adresse.

Sammenlign med UDP-vejen i samme optagelsesvindue, så de to ikke forveksles: tcpdump -ni any 'udp port 4500 or proto 50'. Trafik på protokol 50 eller UDP-port 4500, mens du tror, at TCP bruges, betyder, at parterne aldrig blev enige om tilbagefaldet. Optag også på gatewayen, hvis du kan, fordi en optagelse på klientsiden ikke kan vise, hvad den fjerne ende sendte.

Acceptér i fire separate trin

Behandl opstarten som fire resultater. Hvert kan fejle af en anden grund, og et enkelt bestået eller fejlet skjuler hvilket, så stop ved det første trin, der fejler, og start forfra fra toppen.

StageWhat you checkWhat it proves
1TCP connection established to 4500A listener exists and the path permits it
2IKE_SA authenticated in the gateway logBoth peers agreed on the encapsulation
3CHILD_SA installed, visible with ip xfrm stateKeys exist for the protected traffic
4A new application exchange succeedsThe data path works, not just the control path

Trin fire er det, der bliver sprunget over. En eksisterende session kan fortsætte på cachet tilstand, så åbn en ny forbindelse til en vært bag gatewayen, før du lukker ændringen. Hvis trin to fejler, mens trin et består, ligger uenigheden i forslaget eller i indkapslingsindstillingen, ikke i firefallen.

Tilbagerulning og prisen for at lade det være tændt

Planlæg fortrydelsen før ændringen: slå indkapslingsindstillingen fra i begge ender, og bekræft at tunnelen vender tilbage over UDP. Behold TCP-reglen i én gennemgangscyklus, hvis tilbagefaldet bliver nødvendigt igen, og fjern den derefter. En ubrugt lytter på 4500 er angrebsflade uden driftsmæssig værdi.

Hold øje med ydelsessignaturen, når den bærer rigtigt arbejde. TCP inde i TCP tilføjer bekræftelseslag, der går i stå ved et enkelt tab, og strømme, der deler én forbindelse, kan blokere hinanden, så mål den applikation, der skal bruge tunnelen, i stedet for et ping.

Acceptliste

Bekræft funktionsnavn og version i begge ender, lytteren på responder-siden, optagelsen der viser et fuldført håndtryk, og de fire trin registreret med tidsstempler. Føj årsagen til tilbagefaldet til ændringsregistreringen, så den næste ingeniør ved, hvorfor TCP er der. Øv tilbagerulningen, før du får brug for den.

Hvis et trin fejler, så ret kun det trin. At ændre cipher suite eller identitetsindstillingerne for at jage et transportproblem tilføjer normalt en anden, urelateret fejl oven på den første.

Relaterede artikler