Configurare Sophos Firewall Remote Access su Linux
Per Windows e macOS, con Sophos Connect esiste un client dedicato per IPsec e SSL VPN. Per Linux, Sophos non offre un proprio client Sophos Connect. Chi vuole connettersi a Sophos Firewall Remote Access da Linux usa invece strumenti standard: il normale client OpenVPN per SSL VPN oppure NetworkManager con il plugin strongSwan per IPsec.
Questo articolo descrive entrambe le vie e indica quando quale percorso è adatto. Per la decisione di base tra IPsec e SSL VPN è utile prima Sophos Connect o SSL VPN: quale soluzione Remote Access è adatta?. Per la configurazione lato firewall di SSL VPN Remote Access, Configurare Sophos Firewall SSL VPN Remote Access è la base adatta.
Confronto con altri client
- Windows o macOS con Sophos Connect: Installare il client Sophos Connect su Windows rispettivamente Installare il client Sophos Connect su macOS.
- iOS o Android con OpenVPN Connect: Configurare Sophos SSL VPN su iPhone e iPad rispettivamente Configurare Sophos SSL VPN su Android.
- Linux con OpenVPN o NetworkManager-strongSwan: questo articolo.
Linux non è quindi un caso particolare in senso negativo, ma segue lo stesso schema delle piattaforme mobili: invece di un client proprietario del produttore, si usano strumenti standard affermati che lavorano con il file di configurazione fornito dal firewall.
Prerequisiti
- Sophos Firewall con SSL VPN Remote Access o IPsec Remote Access configurati.
- Account utente con autorizzazione VPN e, se attivo, MFA funzionante.
- Per SSL VPN: pacchetto client OpenVPN sul sistema Linux, ad esempio
openvpnsu Debian/Ubuntu o la relativa fonte pacchetti specifica della distribuzione. - Per IPsec: NetworkManager con il plugin strongSwan, ad esempio
network-manager-strongswansu Debian/Ubuntu. - Accesso al VPN Portal oppure un file di configurazione fornito dall’amministrazione.
⚠️ Per Linux non esiste un client Sophos Connect ufficiale. Guide o download che promuovono un “Sophos Connect per Linux” non fanno parte dell’offerta ufficiale di Sophos e non dovrebbero essere installati senza verifica.
Configurare SSL VPN con OpenVPN
Il percorso ufficialmente documentato da Sophos per Linux è SSL VPN Remote Access con il classico client OpenVPN.
1. Installare il client OpenVPN
Sulla maggior parte delle distribuzioni è sufficiente il pacchetto standard del gestore pacchetti, ad esempio:
sudo apt install openvpn
Chi preferisce un’interfaccia grafica può installare anche il plugin NetworkManager-OpenVPN, ad esempio network-manager-openvpn-gnome, e importare la connessione tramite quello invece di avviarla da terminale.
2. Scaricare il file di configurazione
- Aprire nel browser il VPN Portal di Sophos Firewall.
- Accedere con l’utente VPN.
- Nella selezione della configurazione scegliere Linux.
- Scaricare il file
.ovpne conservarlo in modo sicuro.
3. Avviare la connessione da terminale
sudo openvpn --config sophos-vpn.ovpn
Dopo l’avvio, OpenVPN chiede, a seconda della configurazione, nome utente e password, e successivamente eventualmente un codice di verifica MFA. La connessione rimane attiva finché il processo è in esecuzione. Se la finestra del terminale viene chiusa, anche il tunnel viene interrotto.
Per un funzionamento più duraturo senza terminale aperto, OpenVPN può essere configurato come servizio systemd oppure la connessione può essere gestita tramite NetworkManager.
4. Importare la connessione tramite NetworkManager (opzionale)
- Aprire le impostazioni di rete.
- Aggiungere una nuova connessione VPN e scegliere Importa da file.
- Selezionare il file
.ovpnscaricato. - Salvare il nome utente se desiderato; non memorizzare la password permanentemente in chiaro se l’MFA è attivo.
- Avviare la connessione tramite l’interfaccia grafica e inserire le credenziali o il codice MFA.
Questa variante è più pratica nell’uso quotidiano, perché può essere attivata e disattivata come qualsiasi altra connessione di rete, senza dover tenere aperto un terminale.
IPsec con NetworkManager-strongSwan (alternativa)
Se si vuole usare IPsec invece di SSL VPN, su Linux il percorso comune è il plugin NetworkManager-strongSwan. Questa variante è meno standardizzata su Linux rispetto al percorso OpenVPN e andrebbe pianificata soprattutto per scenari Remote Access IKEv2.
1. Installare il plugin
sudo apt install network-manager-strongswan
Il nome esatto del pacchetto può variare a seconda della distribuzione.
2. Verificare il tipo di connessione sul firewall
Il plugin strongSwan per NetworkManager supporta IKEv2. Sul firewall, il profilo IPsec Remote Access deve essere configurato di conseguenza su IKEv2, non sul più vecchio IKEv1. Per l’autenticazione il plugin supporta sia metodi basati su certificato sia EAP, ad esempio nome utente e password. Con l’autenticazione a chiave precondivisa, il plugin richiede un secret sufficientemente robusto; PSK brevi o semplici andrebbero sempre evitati.
3. Creare la connessione
- Aprire le impostazioni di rete.
- Aggiungere una nuova connessione VPN di tipo IPsec/IKEv2 (strongswan).
- Inserire l’indirizzo gateway di Sophos Firewall.
- Scegliere il metodo di autenticazione adatto alla configurazione del firewall: certificato oppure nome utente/password (EAP).
- Per l’autenticazione basata su certificato, caricare il certificato del server o la CA usata dal firewall.
- Salvare e testare la connessione.
Poiché questo percorso dipende in misura maggiore dalla distribuzione, dalla versione del plugin e dalla configurazione IPsec esatta sul firewall, è più soggetto a errori rispetto al percorso OpenVPN. Per la maggior parte degli ambienti, SSL VPN tramite OpenVPN è quindi il primo approccio più robusto per i client Linux.
Verifiche dopo la configurazione
- Lo stato della connessione in OpenVPN o in NetworkManager mostra una sessione attiva.
- I nomi DNS interni vengono risolti attraverso il tunnel VPN.
- Una destinazione interna consentita è raggiungibile, una destinazione non consentita rimane bloccata.
- Nel Log Viewer del firewall compare traffico dalla zona
VPNcon la regola firewall attesa. - Con MFA: il codice di verifica viene richiesto correttamente a ogni nuova connessione.
- Dopo un riavvio del client Linux, la connessione viene ristabilita correttamente oppure avviata manualmente in modo consapevole, a seconda di come è stata configurata.
Se la connessione è attiva ma non passa traffico, aiuta Testare una regola firewall con Log Viewer, Policy Test e Packet Capture.
Errori tipici
- Cercata una guida di terzi su “Sophos Connect per Linux”: questo client non esiste ufficialmente. Usare invece OpenVPN o NetworkManager-strongSwan.
- Finestra del terminale chiusa e connessione persa: con l’avvio diretto tramite
openvpn --config, un terminale chiuso interrompe il tunnel. Per un funzionamento continuo, usare l’importazione in NetworkManager o un servizio systemd. - File
.ovpnvecchio riutilizzato dopo una modifica del firewall: dopo modifiche a gateway, certificato, porta del VPN Portal o autenticazione, il file di configurazione deve essere scaricato di nuovo. - IKEv1 invece di IKEv2 configurato sul firewall: il plugin NetworkManager-strongSwan supporta solo IKEv2. Verificare e adattare se necessario il profilo lato firewall.
- Preshared key troppo corta: le versioni più recenti del plugin impongono una lunghezza minima del PSK. Un secret troppo corto porta a un errore di connessione, non a una connessione funzionante ma insicura.
- Certificato o CA errati caricati: con l’autenticazione IPsec basata su certificato deve essere caricata esattamente la CA usata anche dal firewall. Un certificato leggermente diverso o scaduto porta a un’interruzione della connessione senza un messaggio di errore significativo nel client.
- Codice MFA assegnato in modo errato: con OpenVPN e MFA, il codice di verifica deve essere inserito nel campo giusto e al momento giusto. In caso di incertezza, confrontare la sequenza di login con un client Windows o macOS funzionante.
FAQ
Esiste un client Sophos Connect ufficiale per Linux?
Quale percorso è più semplice su Linux: SSL VPN o IPsec?
Perché la connessione VPN si interrompe quando chiudo il terminale?
sudo openvpn --config, la connessione gira come processo in primo piano del terminale. Per un funzionamento indipendente dalla sessione del terminale, la connessione dovrebbe essere importata tramite NetworkManager o configurata come servizio.