Naar de inhoud
Avanet

Sophos Firewall Remote Access configureren onder Linux

Voor Sophos Firewall Remote Access onder Linux gebruikt men het eenvoudigst SSL VPN met de normale OpenVPN-client. Sophos Connect is niet beschikbaar voor Linux. Het .ovpn-bestand wordt in het VPN Portal gedownload en vervolgens in de terminal of via NetworkManager gebruikt.

Het vaak genoemde IPsec-alternatief met NetworkManager-strongSwan past niet bij de huidige Sophos Firewall-configuratie: Remote access VPN > IPsec accepteert onder SFOS 22 alleen IKEv1-profielen, terwijl de NetworkManager-strongSwan-plugin uitsluitend IKEv2 ondersteunt.

⚠️ Er mag geen onofficiële ‘Sophos Connect voor Linux’ worden geïnstalleerd en het SFOS Remote Access-profiel mag voor deze handleiding niet naar IKEv2 worden gewijzigd. De volgende OpenVPN-methode is het door Sophos gedocumenteerde Linux-traject.

Voor andere apparaten zijn afzonderlijke handleidingen beschikbaar: Sophos Connect onder Windows en Sophos Connect onder macOS, evenals SSL VPN op iPhone en iPad en SSL VPN op Android.

Vereisten

  • Op de Sophos Firewall is onder Remote access VPN > SSL VPN een Remote Access SSL VPN-policy geconfigureerd.
  • De gebruiker of diens groep is aan deze policy toegewezen.
  • Een passende firewallregel staat het benodigde verkeer vanuit de zone VPN toe.
  • Onder Administration > Device access is VPN portal voor de benodigde zone toegestaan. Voor toegang vanaf internet is dit de zone WAN; vanwege de extra blootstelling mag dit alleen worden toegestaan als het nodig is en moet het tegen herhaalde aanmeldpogingen worden beschermd.
  • De gebruiker kan het VPN Portal bereiken en zich aanmelden. De standaardpoort is 443; de werkelijk geconfigureerde poort staat onder Administration > Admin and user settings.
  • Op het Linux-systeem zijn lokale sudo-rechten beschikbaar voor de pakketinstallatie en het starten van OpenVPN.
  • Als MFA actief is, werkt de aanmelding inclusief verificatiecode.

De configuratie aan de firewallzijde wordt beschreven in Sophos Firewall SSL VPN Remote Access configureren. Als het .ovpn-bestand later in VPN Portal ontbreekt, 0 bytes is of alleen een foutmelding bevat, leidt Sophos Firewall: .ovpn ontbreekt of is 0 bytes door de controle van policy, gebruiker, certificaat en systeem.

SSL VPN met OpenVPN configureren

1. OpenVPN installeren

De volgende pakketcommando’s worden uitgevoerd in een lokale Debian- of Ubuntu-terminal. De eerste alleen-lezen controle heeft geen verhoogde rechten nodig en toont of het pakket al geïnstalleerd was. Noteer deze uitgangssituatie vóór de wijziging:

dpkg-query -W -f='${Status}\n' openvpn 2>/dev/null

De uitvoer install ok installed betekent dat OpenVPN al aanwezig is. Geen uitvoer betekent doorgaans dat het pakket ontbreekt. apt installeert vervolgens de client en ontbrekende afhankelijkheden uit de geconfigureerde pakketbronnen; hiervoor zijn lokale sudo-rechten en actuele pakketmetadata nodig:

sudo apt install openvpn

Als normale gebruiker controleert openvpn --version vervolgens of het programma beschikbaar is. De eerste regel moet de geïnstalleerde OpenVPN-versie vermelden:

openvpn --version

Als het pakket voordien ontbrak, is sudo apt remove openvpn de directe rollback. Dit verwijdert het pakket, maar laat configuratiebestanden normaal staan; verbreek daarom eerst een actieve tunnel en controleer de genoteerde uitgangssituatie. Was OpenVPN al geïnstalleerd, dan hoeft niets te worden teruggedraaid. Herhaal de alleen-lezen dpkg-query om de verwijdering te valideren.

Andere distributies bieden het pakket eveneens via hun pakketbeheerder; controleer pakketnaam en syntaxis in de distributiedocumentatie. Voor grafisch beheer onder GNOME kan aanvullend de OpenVPN-plugin voor NetworkManager worden geïnstalleerd. Noteer eerst de vorige pakketstatus met dpkg-query -W -f='${Status}\n' network-manager-openvpn-gnome 2>/dev/null. Het volgende Debian-/Ubuntu-commando vereist sudo en installeert de plugin en ontbrekende afhankelijkheden:

sudo apt install network-manager-openvpn-gnome

Na installatie moet dpkg-query -W -f='${Status}\n' network-manager-openvpn-gnome de status install ok installed tonen; mogelijk moet men zich opnieuw aanmelden voordat de grafische interface de plugin aanbiedt. Als deze voordien ontbrak, verwijdert sudo apt remove network-manager-openvpn-gnome de plugin weer. Verbreek eerst een door NetworkManager beheerde VPN en herhaal daarna de alleen-lezen controle om de eerdere afwezige status te bevestigen. Deze plugin moet niet worden verward met network-manager-strongswan: hij importeert het .ovpn-bestand en gebruikt OpenVPN.

2. OpenVPN-configuratie downloaden

  1. Het VPN Portal van de Sophos Firewall in de browser openen.
  2. Aanmelden met de VPN-gebruiker.
  3. Onder VPN > VPN configuration op Download configuration for Windows, macOS, Linux klikken.
  4. Het .ovpn-bestand downloaden en veilig opslaan.

Het bestand kan ingesloten certificaten, een privésleutel en gebruikersspecifieke verbindingsgegevens bevatten. Het mag niet via onversleutelde e-mail of openbare opslaglocaties worden verspreid. Bij compromittering moet een beheerder het intrekken of de betrokken toegangsgegevens vervangen; alleen de lokale kopie verwijderen is niet voldoende.

3. Verbinding in de terminal starten

De volgende commando’s worden in een lokale Linux-terminal uitgevoerd. Vervang <linux-user> door de lokale gebruikersnaam en pas het voorbeeldpad aan het gedownloade bestand aan. stat leest eerst zonder verhoogde rechten de huidige numerieke bestandsmodus. Noteer deze waarde om de wijziging van de rechten eventueel ongedaan te maken:

stat -c '%a %n' "/home/<linux-user>/Downloads/sophos-vpn.ovpn"
chmod 600 "/home/<linux-user>/Downloads/sophos-vpn.ovpn"
stat -c '%a %n' "/home/<linux-user>/Downloads/sophos-vpn.ovpn"

chmod 600 geeft alleen de eigenaar lees- en schrijfrechten; de tweede controle moet modus 600 tonen. sudo is niet nodig als de aangemelde gebruiker eigenaar van het bestand is. Voer voor rollback chmod <vorige-modus> "/home/<linux-user>/Downloads/sophos-vpn.ovpn" uit, vervang <vorige-modus> door de genoteerde waarde en valideer met stat. Herstel ruimere rechten alleen als die bewust nodig zijn.

Het volgende commando start OpenVPN met verhoogde rechten, omdat de client een tunnelinterface en tijdelijke routes aanmaakt. Onder Linux past het rechtstreeks gestarte OpenVPN-proces aangeboden DNS-servers niet zelfstandig toe; daarvoor heeft het profiel een geschikt up/down-script of systeemintegratie nodig. NetworkManager kan deze DNS-integratie verzorgen:

sudo openvpn --config "/home/<linux-user>/Downloads/sophos-vpn.ovpn"

OpenVPN vraagt eerst om het lokale sudo-wachtwoord en daarna om de VPN-aanmeldgegevens. Gebruik bij MFA de invoervorm die de beheerder heeft opgegeven; afhankelijk van de authenticatie wordt de eenmalige code met het wachtwoord gecombineerd of afzonderlijk gevraagd. Initialization Sequence Completed en een aanwezige tunnelinterface zijn de succescriteria. De verbinding draait op de voorgrond. Ctrl+C stopt OpenVPN en is ook de rollback: de client verwijdert de tijdelijke tunnelinterface en de routes die hij installeerde; elke daadwerkelijk geconfigureerde DNS-integratie moet ook haar tijdelijke DNS-waarden herstellen. Controleer daarna met de onderstaande opdrachten dat de tunnelinterface en VPN-route verdwenen zijn en de normale naamomzetting weer geldt.

4. Verbinding in NetworkManager importeren

  1. De netwerkinstellingen openen.
  2. Een nieuwe VPN-verbinding toevoegen en Import from file selecteren.
  3. Het gedownloade .ovpn-bestand selecteren.
  4. De gebruikersnaam opslaan als dit bij het beheermodel past.
  5. De verbinding starten en de VPN-aanmeldgegevens invoeren in de door de beheerder opgegeven MFA-vorm.

De import maakt een afzonderlijk NetworkManager-verbindingsprofiel en kan ingesloten sleutels of certificaten uit het bestand kopiëren. Het verwijderen van het gedownloade .ovpn-bestand verwijdert het geïmporteerde profiel dus niet. Sla het wachtwoord niet in het profiel op, tenzij het beheermodel uitdrukkelijk in beveiligde opslag voorziet. Verbreek voor rollback de VPN, verwijder het geïmporteerde profiel in de netwerkinstellingen en controleer of het niet meer in de verbindingslijst staat.

NetworkManager is voor dagelijks gebruik comfortabeler dan een permanent geopende terminal. Een onbewaakte automatische start is bij een interactieve aanmelding of MFA echter niet automatisch mogelijk. Inloggegevens mogen niet alleen voor een automatische start in een onbeveiligd bestand worden opgeslagen.

Waarom NetworkManager-strongSwan hier niet past

Sophos staat voor Remote access VPN > IPsec onder SFOS 22 alleen IKEv1-profielen toe waarbij Dead Peer Detection is uitgeschakeld of op Disconnect staat. De NetworkManager-strongSwan-plugin bouwt daarentegen alleen IKEv2-verbindingen op. Met de eerder beschreven werkwijze kunnen de twee eindpunten daarom geen tunnel onderhandelen.

De strongSwan-software zelf beschikt nog steeds over IKEv1-functionaliteit, maar dat is niet hetzelfde GUI-traject als de NetworkManager-plugin. Een handmatige IKEv1-configuratie vereist passende parameters, authenticatie, Traffic Selectors en een geteste clientconfiguratie. Zonder een betrouwbare doelconfiguratie mag men hiervoor geen generiek voorbeeld van internet overnemen.

Sophos noemt een compatibele client van derden als mogelijkheid voor Linux-IPsec. Het geëxporteerde .tgb-bestand bevat echter niet alle geavanceerde instellingen van de Sophos Connect-configuratie en kan niet simpelweg als IKEv2-profiel in NetworkManager worden geïmporteerd. Als IPsec verplicht is, moet de gekozen client de IKEv1-configuratie van de firewall uitdrukkelijk ondersteunen en in de eigen omgeving worden getest. Bij de principiële keuze helpt Sophos Connect of SSL VPN: welke Remote Access-oplossing past?.

Verbinding controleren

Na het opbouwen van de verbinding moet niet alleen de clientstatus worden gecontroleerd. Bepalend is of route, DNS en firewallregel bij het gewenste doel passen.

Deze commando’s worden als normale gebruiker in een lokale Linux-terminal uitgevoerd en zijn alleen-lezen; sudo en rollback zijn niet nodig. Vervang het private voorbeeldadres 10.20.30.40 door een toegestaan intern doel en de gereserveerde voorbeeldnaam intranet.example.net door een interne FQDN die de VPN-DNS moet oplossen:

ip addr show
ip route get 10.20.30.40
getent hosts intranet.example.net

Verwachte resultaten:

  • OpenVPN meldt een geslaagde verbinding en er is een tunnelinterface aanwezig.
  • De routecontrole toont voor het interne doel het VPN-pad in plaats van de normale internetgateway.
  • De DNS-controle geeft het interne adres terug als interne DNS-servers zijn uitgedeeld en door de gekozen Linux-client zijn geïntegreerd.
  • Een toegestane interne dienst is bereikbaar; een bewust niet toegestaan doel blijft geblokkeerd.
  • In de Log Viewer van de firewall verschijnt het testverkeer uit de zone VPN met de verwachte regel.
  • Na een nieuwe aanmelding vereist de authenticatie opnieuw de bedoelde MFA-verificatie.

Als de tunnel actief is maar er geen verkeer stroomt, helpt Een firewallregel testen met Log Viewer, Policy Test en Packet Capture.

Veelvoorkomende fouten

  • Geen Linux-configuratie in het VPN Portal: de gebruiker of groep is niet aan een Remote Access SSL VPN-policy toegewezen. De policy en de aanmelding bij het portal moeten worden gecontroleerd.
  • OpenVPN meldt een authenticatiefout: gebruikersnaam, wachtwoord, MFA-procedure, groepslidmaatschap en de geselecteerde authenticatiemethode moeten worden gecontroleerd.
  • De tunnel is actief, maar interne doelen blijven onbereikbaar: de toegestane netwerken van de SSL VPN-policy, de firewallregel van VPN naar de doelzone en de route naar het interne netwerk moeten worden gecontroleerd.
  • De VPN-route ontbreekt of wijst naar lokale wifi: het SSL VPN-leasenetwerk en interne doelen mogen niet overlappen met lokale netwerken of gangbare thuisnetwerken. Controleer de bereiken in SSL VPN global settings en verbreek en herstel de tunnel na een correctie.
  • IP-adressen werken, maar interne namen niet: de uitgedeelde DNS-servers, het zoekdomein en de bereikbaarheid van de interne DNS-server moeten worden gecontroleerd.
  • Full Tunnel maakt verbinding, maar internet valt uit: controleer bij Use as default gateway ook de firewallregel van VPN naar internet, de benodigde beveiligingspolicies en een SNAT-/masqueradingregel voor ##ALL_SSLVPN_RW of ##ALL_SSLVPN_RW6.
  • Terminal gesloten en verbinding verloren: dit is normaal bij een directe aanroep van openvpn --config. Voor grafisch beheer kan het .ovpn-bestand in NetworkManager worden geïmporteerd.
  • NetworkManager biedt geen bestandsimport aan: de OpenVPN-plugin voor NetworkManager ontbreekt of de NetworkManager-service heeft de nieuw geïnstalleerde plugin nog niet geladen.
  • Oud .ovpn-bestand werkt niet meer: het bestand moet opnieuw worden gedownload na wijzigingen aan het SSL VPN-protocol, het SSL-servercertificaat of de CA, Override hostname of de SSL VPN-poort.
  • NetworkManager-strongSwan maakt geen verbinding: er mag niet naar IKEv2 worden overgeschakeld. De plugin is niet compatibel met het IKEv1 Remote Access-profiel van de Sophos Firewall.
  • Vermeende Sophos Connect-client voor Linux gevonden: deze mag niet zonder controle worden geïnstalleerd. Sophos levert geen officiële Linux-client.

FAQ

Is er een officiële Sophos Connect-client voor Linux?

Nee. Sophos Connect is beschikbaar voor Windows en macOS. Onder Linux is SSL VPN met een OpenVPN-client de door Sophos gedocumenteerde methode.

Welk bestand moet voor Linux uit het VPN Portal worden gedownload?

Onder VPN > VPN configuration moet de optie Download configuration for Windows, macOS, Linux worden gebruikt. Het .ovpn-bestand verschijnt alleen als een Remote Access SSL VPN-policy aan de gebruiker is toegewezen.

Waarom wordt de VPN-verbinding verbroken als de terminal wordt gesloten?

De directe aanroep van sudo openvpn --config draait op de voorgrond van de terminal. Voor een grafisch beheerde verbinding kan het .ovpn-bestand in NetworkManager worden geïmporteerd.

Kan NetworkManager worden gebruikt voor Sophos Firewall Remote Access?

Ja, met de OpenVPN-plugin voor NetworkManager en het .ovpn-bestand. De NetworkManager-strongSwan-plugin ondersteunt echter alleen IKEv2 en past niet bij het IKEv1 Remote Access IPsec-profiel van SFOS 22.

Moet het .ovpn-bestand na een firewallwijziging opnieuw worden gedownload?

Ja, als het SSL VPN-protocol, het SSL-servercertificaat of de CA, Override hostname of de SSL VPN-poort is gewijzigd. Een oud bestand kan nog verouderde verbindingsparameters bevatten.