Hoppa till innehållet
Avanet

Skapa IPsec-rutt på Sophos Firewall

Normalt känner Sophos Firewall själv av genom vilken IPsec-tunnel ett mål-nätverk är tillgängligt. I en klassisk policy-baserad IPsec-tunnel är lokala och avlägsna nätverk en del av tunnelkonfigurationen. I rutt-baserad IPsec dirigeras trafiken däremot genom XFRM-gränssnitt, statiska rutter, SD-WAN-rutter eller dynamisk routing in i tunneln.

En manuell IPsec-rutt är därför inte standard för varje tunnel. Det är ett verktyg för vissa policy-baserade scenarier, särskilt när vidarebefordrad trafik måste arbeta med NAT eller en speciell tilldelning till tunneln. Om en sådan rutt sätts fel kan trafiken gå in i fel tunnel eller en befintlig anslutning bli svårare att spåra.

För nya plats-till-plats-tunnlar passar först Ställ in Sophos Firewall Site-to-Site IPsec VPN. För allmän IPsec-felsökning passar Sophos Firewall IPsec VPN Troubleshooting. När det gäller rutt-baserade VPN, XFRM och gränssnittsplanering hjälper Konfigurera Sophos Firewall-zoner och gränssnitt.

När en IPsec-rutt är meningsfull

En IPsec-rutt är särskilt relevant när en policy-baserad IPsec-tunnel visserligen existerar, men den förväntade trafiken inte tilldelas tunneln korrekt.

Typiska fall:

  • En värd eller ett nätverk ska specifikt gå genom en viss policy-baserad tunnel.
  • Det finns flera tunnlar, överlappande mål-nätverk eller historiskt växande VPN-konfigurationer.
  • Trafik översätts via DNAT eller SNAT och måste därefter tilldelas en befintlig IPsec-tunnel.
  • Efter en uppgradering till SFOS 22 bör det kontrolleras om gamla policy-baserade specialfall fortfarande fungerar som förväntat.
  • Ruttuppslagning, Log Viewer eller Packet Capture visar att trafiken går mot WAN eller fel väg.

Inte alla dessa fall löses med ipsec_route. Först måste brandväggsregler, NAT-regler, ruttprioritet, lokala gateways och returvägar kontrolleras.

Policy-baserad, rutt-baserad och SFOS 22

Den viktigaste skillnaden:

  • Policy-baserad IPsec: Sophos Firewall utför IPsec-uppslagningar i bakgrunden lokala/avlägsna nätverk i IPsec-anslutningen, brandväggsregler, vid behov ipsec_route
  • Rutt-baserad IPsec: Trafik dirigeras till tunnelgränssnittet XFRM-gränssnitt, statisk rutt, SD-WAN-rutt eller dynamisk routing.

För nya eller större plats-till-plats-anslutningar är rutt-baserad IPsec ofta mer överskådlig, eftersom routingändringar inte varje gång förändrar tunnelselektorerna. För enkla plats-till-plats-anslutningar eller befintliga miljöer förblir policy-baserad IPsec dock fortsatt relevant.

SFOS 22 har arbetat med IPsec-beteendet på flera ställen. I SFOS-22.0-MR1-release-noterna dokumenteras flera lösta problem kring policy-baserad IPsec, ipsec_route, SD-WAN, SNAT och ruttuppslagning. För administratörer innebär det: Efter en uppgradering bör policy-baserade specialfall testas specifikt, särskilt om NAT, MPLS, SD-WAN eller manuella IPsec-rutter är inblandade.

Förutsättningar

Innan en ändring bör dessa punkter vara klara:

  • Tillgång till Device Console, till exempel via SSH.
  • Namn på IPsec-tunneln.
  • Målvärd eller mål-nätverk som ska nås via tunneln.
  • Aktiv eller korrekt konfigurerad IPsec-anslutning.
  • Passande brandväggsregler för den förväntade riktningen.
  • Klarhet om NAT är inblandat.
  • Aktuellt tillstånd för befintliga IPsec-rutter är dokumenterat.

Om konsolåtkomst ännu inte är inställd, förklarar Anslut Sophos Firewall via SSH hur man upprättar en SSH-anslutning till brandväggen och öppnar Device Console.

⚠️ En felaktig IPsec-rutt kan störa produktiv trafik. Innan ändringen bör tunnelnamn, mål-nätverk, NAT, returväg och befintliga rutter dokumenteras.

Kontrollera innan ändringen

Man bör inte sätta en IPsec-rutt som första steg. Denna ordning är meningsfull:

  1. Kontrollera tunnelstatus: IPsec-anslutningen är aktiv och de förväntade nätverken är förhandlade.
  2. Kontrollera brandväggsregler: Source zone, Destination zone, Source, Destination, Service och Logging passar.
  3. Kontrollera NAT: Det är klart om original-IP-adresser eller översatta adresser ska gå genom tunneln.
  4. Kontrollera ruttprioritet: Statiska, SD-WAN och VPN-rutter utvärderas i den förväntade ordningen. Om flera routingtyper konkurrerar, hjälper Ändra Sophos Firewall ruttprioritet säkert.
  5. Kontrollera motparten: Motparten känner till returvägen och den förväntade källadressen.
  6. Använd Packet Capture: Bevisa om trafiken kommer fram, vart den vidarebefordras och om svar kommer tillbaka.

För allmän regelkontroll passar Testa brandväggsregel med Log Viewer, Policy Test och Packet Capture. För NAT-grunder passar Förstå NAT på Sophos Firewall.

Visa befintliga IPsec-rutter

Kommandona utförs i Device Console, inte i Advanced Shell.

system ipsec_route show

Utdata bör dokumenteras före varje ändring. Så ser man senare om en rutt har lagts till och om den behöver tas bort igen.

Dessutom kan IPsec-routingtabellen vara relevant vid analysen:

ip route show table 220

Denna kontroll utförs i Advanced Shell och är mer avsedd för felsökning. För vanliga ändringar av ipsec_route är Device Console rätt plats.

Skapa IPsec-rutt för en värd

Om endast en enskild värd ska vara tillgänglig via en viss tunnel, används host.

Syntax:

system ipsec_route add host <host-ip> tunnelname <tunnelname>

Exempel:

system ipsec_route add host 10.33.46.69 tunnelname Azure_CH

Efteråt bör man inte bara testa Ping, utan även kontrollera den faktiska applikationstrafiken. Ett ICMP-test kan fungera medan TCP, NAT eller returväg fortfarande är fel.

Skapa IPsec-rutt för ett nätverk

Om ett helt nätverk ska vara tillgängligt via tunneln, används net.

Syntax:

system ipsec_route add net <network>/<netmask> tunnelname <tunnelname>

Exempel:

system ipsec_route add net 10.33.46.0/255.255.255.0 tunnelname Azure_CH

Vid nätverksrutter krävs särskild försiktighet. Ett för stort nätverk kan dra mer trafik in i tunneln än planerat. Vid överlappande nätverk måste det vara klart i förväg vilken sida som ser vilka adresser och om NAT används.

Ta bort IPsec-rutt

Om rutten inte längre behövs eller har satts fel, kan den tas bort.

Ta bort värdrutt:

system ipsec_route del host <host-ip>

Ta bort nätverksrutt:

system ipsec_route del net <network>/<netmask>

Kontrollera listan igen efteråt:

system ipsec_route show

Om rutten har påverkat produktiv trafik bör man testa den berörda anslutningen igen efter borttagningen och jämföra Log Viewer-posterna.

NAT och policy-baserad IPsec

NAT är inte i grunden fel vid IPsec. Det måste dock planeras noggrant eftersom NAT förändrar adressen som motparten ser.

Sophos skiljer bland annat mellan dessa fall vid IPsec:

  • NAT direkt i IPsec-konfigurationen, till exempel vid överlappande nätverk.
  • Självständiga NAT-regler under Rules and policies > NAT rules.
  • ipsec_route för vidarebefordrad trafik, när översatt trafik måste tilldelas en policy-baserad tunnel.
  • sys-traffic-nat för systemgenererad trafik från själva brandväggen.

En NAT-regel ändrar inte automatiskt brandväggens routingbeslut. Om en befintlig policy-baserad tunnel används med DNAT/SNAT för ytterligare värdar krävs fortfarande en passande IPsec Route till fjärrnätet. Vid reflexiva SNAT-regler måste den översatta källadressen finnas som ett IP host-objekt; man kan inte bara översätta direkt till ett gränssnitt.

Viktigt är riktningen: Om policy-baserad IPsec-trafik ska översättas via SNAT, måste den passande SNAT-regeln arbeta med Outbound interfaceAny. Om regeln istället pekar på specifika WAN-gränssnitt, kommer den inte att tillämpas för policy-baserad IPsec-trafik. Just sådana detaljer leder i praktiken till tunnlar som är gröna men inte transporterar förväntad nyttotrafik.

Systemgenererad trafik är ett specialfall

ipsec_route löser inte alla trafikproblem på egen hand. För vidarebefordrad klient- eller servertrafik kan kommandot vara direkt relevant. Systemgenererad trafik från själva brandväggen, såsom autentiseringsförfrågningar eller DHCP-relaterade fall, behöver dessutom rätt source NAT- och routinglogik.

Utan riktad konfiguration använder systemgenererad trafik normalt en gateway från Network > WAN link manager. En grön IPsec-tunnel räcker därför inte för att automatiskt skicka brandväggens egna förfrågningar in i tunneln. DHCP Relay bör dessutom bedömas separat: för policy-baserad IPsec måste DHCP Relay uttryckligen aktivera alternativet Relay through IPsec. För route-baserade VPN:er behövs inte det alternativet; där dirigeras DHCP-trafiken som vanlig trafik via statiska, SD-WAN- eller dynamiska rutter till motparten, förutsatt att lokala och fjärrsubnät är satta till Any och att motsvarande rutter finns på båda sidor.

Praktiskt innebär detta:

  • Klient- eller servertrafik genom brandväggen kan vara ett ipsec_route-ämne.
  • Vid policy-baserad IPsec kan brandväggens egna förfrågningar kräva en kombination av ipsec_route, sys-traffic-nat och passande lokala eller fjärrsubnät.
  • Vid rutt-baserad IPsec går sådana fall oftare via SD-WAN-rutter till XFRM-gränssnittet och sys-traffic-nat.
  • Man bör inte försöka lösa varje systemtrafikproblem generellt med ipsec_route.

För systemgenererad trafik och SD-WAN-kontext passar SD-WAN-routing för svarspaket och systemtrafik.

Testa ändringen

Efter att ha skapat eller tagit bort en IPsec-rutt bör den berörda trafiken testas specifikt.

Praktiskt förfarande:

  1. Definiera testfall: Källa, Destination, Tjänst, Riktning och förväntad tunnel.
  2. Aktivera brandväggsregel-loggning för den berörda regeln.
  3. Dokumentera system ipsec_route show.
  4. Generera testtrafik exakt en gång.
  5. Filtrera Log Viewer på Källa, Destination och brandväggsregel.
  6. Utför Packet Capture med snäv filter.
  7. Kontrollera om bytes i ipsec statusall ökar i båda riktningarna.
  8. Kontrollera motparten för returväg, NAT och lokal brandvägg.

Om större överföringar fastnar, även om routing och NAT verkar korrekta, bör MTU och MSS vid VPN-problem också kontrolleras.

Typiska fel

  • Tunnel grön, ingen trafik: ofta saknas regel, NAT, returväg eller IPsec-tilldelning. Kontrollera Log Viewer, Packet Capture och ipsec statusall.
  • Trafik går mot WAN: ruttprioritet eller IPsec-tilldelning passar inte. Kontrollera Route Lookup, SD-WAN-rutter och ipsec_route show.
  • SNAT tillämpas inte vid policy-baserad IPsec: SNAT-regeln har troligen fel utgående gränssnitt. Kontrollera SNAT-regeln med Any.
  • En värd fungerar, ett nätverk inte: nätmask, objekt eller trafikväljare passar inte. Jämför lokala och fjärrnätverk.
  • Annat beteende efter SFOS 22-uppgradering: ett gammalt specialfall med policy-baserad IPsec, NAT eller SD-WAN kan vara inblandat. Kontrollera release notes, testfall och motpart.
  • Brandväggens egen trafik går inte genom tunneln: systemtrafik dirigeras annorlunda. Kontrollera SD-WAN, ruttprioritet och sys-traffic-nat.

Checklista

Innan ändringen:

  • Tunnelnamn och motpart dokumenterade.
  • Målvärd eller mål-nätverk tydligt.
  • Brandväggsregler och NAT-regler kontrollerade.
  • Ruttprioritet och SD-WAN-kontext kontrollerade.
  • Befintliga IPsec-rutter säkerhetskopierade.
  • Underhållsfönster eller kontrollerad testtidpunkt planerad.

Efter ändringen:

  • system ipsec_route show kontrollerad igen.
  • Log Viewer visar den förväntade regeln.
  • Packet Capture visar den förväntade vägen.
  • Motparten ser den förväntade källadressen.
  • Returvägen fungerar.
  • Ändring och motivering dokumenterade.

FAQ

Behöver varje policy-baserad IPsec-anslutning en IPsec-rutt?

Nej. I normala policy-baserade plats-till-plats-anslutningar räcker IPsec-konfigurationen med passande lokala och avlägsna nätverk. En manuell IPsec-rutt är ett verktyg för specialfall.

Bör man använda rutt-baserad istället för policy-baserad för nya VPN?

För större, växande eller dynamiskt routade plats-till-plats-anslutningar är rutt-baserad IPsec ofta mer överskådlig. Befintliga enkla policy-baserade tunnlar kan dock fortfarande vara meningsfulla om de är stabila och väl dokumenterade.

Varför är utgående gränssnitt Any viktigt vid SNAT?

Vid policy-baserad IPsec går trafiken inte som vanlig internettrafik genom ett specifikt WAN-gränssnitt. Om en SNAT-regel är begränsad till ett specifikt WAN-gränssnitt kan den inte tillämpas för policy-baserad IPsec.

Hjälper ipsec_route vid brandväggens egen trafik?

Inte på egen hand. För vidarebefordrad trafik kan ipsec_route vara direkt relevant. För brandväggens egen trafik måste även sys-traffic-nat, SD-WAN eller policy-baserade IPsec-subnät kontrolleras.

Måste man sätta om alla IPsec-rutter efter SFOS 22?

Nej. Men policy-baserade IPsec-specialfall med NAT, SD-WAN, MPLS eller manuella IPsec-rutter bör testas specifikt efter en uppgradering.