Collegare Sophos Firewall ad AWS Site-to-Site VPN
Un AWS Site-to-Site VPN collega una rete locale dietro Sophos Firewall a una VPC AWS o a un Transit Gateway. Tecnicamente è un VPN IPsec, ma nella pratica è diverso da un normale tunnel Sophos-to-Sophos: AWS crea due tunnel per ogni connessione VPN, usa oggetti Customer Gateway e gateway di destinazione, e il routing dipende dal fatto che si usino route statiche o BGP.
Questo articolo descrive l’implementazione pratica con Sophos Firewall e AWS. Integra la guida generale Configurare un VPN IPsec site-to-site Sophos Firewall con gli aspetti specifici di AWS: due tunnel, neighbor BGP, route tables, security groups, NACLs e controlli di stato in AWS e Sophos. Se il tunnel è già attivo ma il traffico non passa, è più adatta la guida Troubleshooting VPN IPsec Sophos Firewall.
Quando usare questo articolo
L’articolo è adatto quando una sede, un datacenter o una rete locale deve essere collegata ad AWS tramite Sophos Firewall. Copre AWS Site-to-Site VPN verso una VPC, un Virtual Private Gateway o un Transit Gateway. Non tratta Sophos Firewall come appliance virtuale installata direttamente in AWS.
Scenari tipici:
- rete server locale verso istanze EC2 in una VPC
- traffico di backup, monitoraggio o management verso AWS
- DNS ibrido, AD, jump host o reti amministrative
- migrazione da VPN statica a routing BGP dinamico
- esercizio ridondante con due tunnel AWS
AWS e Sophos usano termini diversi. In AWS si lavora con Customer Gateway, Virtual Private Gateway o Transit Gateway, Site-to-Site VPN connection, Tunnel Details, Route Tables, Security Groups e Network ACLs. Su Sophos Firewall entrano in gioco connessioni Amazon VPC, profili IPsec, interfacce XFRM, BGP, route e regole firewall.
Pianificare prima della configurazione
AWS Site-to-Site VPN non dovrebbe essere trattato come un semplice import di un file di esempio. Il file AWS è utile, ma la messa in produzione dipende da routing, security groups, NACLs, regole firewall e test con traffico reale.
Definire reti e gateway di destinazione
Prima di tutto va deciso quale lato AWS verrà usato:
- Virtual Private Gateway per una singola VPC classica.
- Transit Gateway per più VPC, più sedi o un design di routing più ampio.
- Cloud WAN o altre varianti solo se l’architettura AWS lo richiede esplicitamente.
Documentare in anticipo:
- CIDR della VPC AWS, per esempio
10.60.0.0/16 - subnet AWS e route tables rilevanti
- reti locali dietro Sophos Firewall, per esempio
172.16.20.0/24 - IP pubblico di Sophos Firewall o del router a monte
- modalità di routing: static o dynamic BGP
- ASN locale e AWS se si usa BGP
- target di test previsti su entrambi i lati
- opzioni tunnel previste, versione IKE, preshared keys e lifetimes
Le reti sovrapposte vanno risolte prima del design VPN. NAT over IPsec può funzionare, ma rende più difficili route tables, security groups, log e troubleshooting.
Prendere sul serio entrambi i tunnel
AWS crea due tunnel per ogni Site-to-Site VPN connection, ciascuno con un endpoint AWS diverso. Entrambi dovrebbero essere configurati e verificati su Sophos Firewall. Configurare un solo tunnel può andare bene in laboratorio, ma in produzione elimina la ridondanza AWS.
È importante avere l’aspettativa corretta: il ritorno da AWS preferisce un tunnel in base al routing e al lato AWS, e può passare all’altro in caso di guasto. Questo non significa che i due tunnel vengano sempre usati in modo bilanciato. Conta che entrambi salgano, che BGP o le route statiche siano corretti e che il failover sia stato testato.
Routing statico o BGP
AWS Site-to-Site VPN supporta route statiche e routing dinamico con BGP. BGP è di solito preferibile con più prefissi, espansioni future o Transit Gateway. Le route statiche sono più semplici, ma ogni cambio di rete deve essere mantenuto manualmente.
In pratica:
- BGP richiede ASN coerenti su entrambi i lati.
- Sophos Firewall deve annunciare i prefissi locali previsti.
- Le route tables AWS devono usare davvero le route propagate o statiche.
- Security groups e NACLs devono consentire il traffico.
- Route statiche e BGP identiche possono creare priorità inattese.
Preparare AWS
I passaggi seguenti descrivono il flusso tipico. I dettagli cambiano tra Virtual Private Gateway e Transit Gateway, ma il principio resta lo stesso.
Creare il Customer Gateway
Il Customer Gateway descrive in AWS il lato Sophos locale.
Inserire:
- Nella console AWS andare in VPC > Virtual private network (VPN) > Customer gateways e scegliere Create customer gateway.
- Impostare Name tag, per esempio
cgw-sophos-hq. - Se si prevede di usare BGP, impostare BGP ASN esattamente sull’ASN Sophos locale. AWS mostra questo campo anche per le connessioni con routing statico, ma il routing statico non stabilisce un peering BGP.
- In IP address inserire l’indirizzo statico raggiungibile da Internet del lato Sophos. Se il firewall è dietro un dispositivo NAT a monte, inserire nell’AWS Customer Gateway l’indirizzo IP pubblico di tale dispositivo NAT, non l’indirizzo dell’interfaccia WAN Sophos che si trova dietro di esso.
- Facoltativamente inserire in Device un nome chiaro, quindi scegliere Create customer gateway.
Se Sophos Firewall si trova dietro un router o un dispositivo del provider, deve essere chiaro quale IP pubblico vede AWS e se NAT-T funziona correttamente. Le opzioni AWS del Customer Gateway richiedono UDP 500 e, quando si usa NAT-T, UDP 4500 tra la rete locale e gli endpoint AWS Site-to-Site VPN. Configurare il dispositivo NAT/firewall a monte in modo che consenta e inoltri queste porte tra l’interfaccia WAN Sophos e gli indirizzi di entrambi gli endpoint dei tunnel AWS indicati nel file di configurazione; vedere le regole firewall AWS.
Creare o selezionare il gateway di destinazione
Per una singola VPC si crea di solito un Virtual Private Gateway in VPC > Virtual private network (VPN) > Virtual private gateways e lo si collega con Actions > Attach to VPC. Ambienti AWS più grandi usano spesso un Transit Gateway.
Verificare:
- Il gateway è collegato alla VPC o al Transit Gateway corretto.
- L’ASN lato AWS non confligge con l’ASN Sophos.
- Le route tables della VPC o del Transit Gateway sono pianificate.
- Le subnet usate per il test usano la route table corretta.
Creare la Site-to-Site VPN connection
Successivamente andare in VPC > Virtual private network (VPN) > Site-to-Site VPN connections e scegliere Create VPN connection. La procedura AWS corrente descrive le stesse risorse e i valori dipendenti dal design.
Punti importanti:
- In Target gateway type selezionare il Virtual Private Gateway o Transit Gateway pianificato.
- In Customer gateway scegliere Existing e il Customer Gateway creato in precedenza.
- Impostare Routing options su Dynamic (requires BGP) o Static; in Static IP prefixes inserire solo i prefissi locali che AWS deve raggiungere tramite VPN.
- Verificare consapevolmente le Tunnel Options, soprattutto IKE version, encryption, integrity, DH/PFS e DPD.
- Documentare le preshared keys per tunnel o farle generare da AWS in modo intenzionale.
Per il routing dinamico, Sophos richiede che Local IPv4 Network Cidr e Remote IPv4 Network Cidr nella connessione AWS siano entrambi impostati su 0.0.0.0/0, affinché possa stabilirsi il peering BGP. Se sul firewall è già configurato un Local AS, inserire esattamente tale ASN per l’AWS Customer Gateway.
Dopo la creazione scegliere Download configuration. Per l’importazione automatica Sophos, scegliere Sophos come Vendor, Sophos Firewall come Platform, v19+ come Software e la IKE version pianificata. AWS descrive il file solo come configurazione di esempio: algoritmi, gruppi DH, certificati e IPv6 devono corrispondere al design produttivo. Prima dell’importazione, impostare l’indirizzo IP di entrambi i blocchi tunnel_outside_address sull’indirizzo dell’interfaccia WAN Sophos. Questo è distinto dall’indirizzo pubblico del dispositivo NAT a monte inserito per l’AWS Customer Gateway. Per il routing statico selezionare Generic in AWS e creare manualmente la connessione IPsec; la procedura Amazon VPC di SFOS 22 documenta entrambe le occorrenze e usa BGP e routing dinamico per l’import Sophos.
Verificare route tables, security groups e NACLs
Un tunnel VPN verde in AWS non significa ancora che un’istanza EC2 sia raggiungibile.
Per la validazione verificare:
- La route table della VPC contiene una route verso la rete locale tramite Virtual Private Gateway o Transit Gateway.
- Con Virtual Private Gateway, route propagation è attiva o la route è configurata staticamente.
- Le route tables del Transit Gateway contengono attachment e propagazioni corretti.
- Il security group dell’istanza di destinazione consente il traffico richiesto dalla rete locale.
- Le Network ACLs consentono andata e ritorno.
- Il firewall del sistema operativo dell’istanza non blocca il test.
Questo punto viene spesso dimenticato, perché Sophos e AWS possono mostrare entrambi un tunnel connesso anche se l’istanza non risponde per una security group o una route di ritorno errata.
Configurare Sophos Firewall
Sophos offre due percorsi pratici per AWS: import tramite Site-to-site VPN > Amazon VPC o configurazione manuale come connessione IPsec route-based. Per molti setup AWS l’import è il punto di partenza più pulito, ma gli oggetti creati automaticamente devono essere controllati.
Importare la configurazione AWS
In Site-to-site VPN > Amazon VPC, Sophos Firewall può importare la connessione mediante Use AWS security credentials oppure Use VPC configuration file. Per il metodo con credenziali, utilizzare un utente IAM AWS dedicato con i permessi richiesti per le impostazioni Site-to-Site VPN; proteggere e ruotare access key e secret key come gli altri segreti amministrativi.
L’importazione è un’istantanea. Se in AWS cambiano le opzioni del tunnel o altri valori della connessione, importare nuovamente le impostazioni e ripetere poi l’intera validazione. Un’importazione precedente non segue automaticamente la configurazione AWS.
La procedura seguente utilizza il file di configurazione AWS scaricato:
Procedura:
- Aprire Sophos Firewall.
- Andare in Site-to-site VPN > Amazon VPC.
- Selezionare Use VPC configuration file.
- Caricare il file di configurazione AWS.
- Avviare l’import.
- Verificare connessioni, profili IPsec, interfacce XFRM e impostazioni BGP create.
L’importazione crea profili IPsec, impostazioni BGP e interfacce XFRM. Aggiungere quindi i prefissi locali in Routing > BGP > Networks. In Administration > Device access, IPsec deve essere attivo per WAN e Dynamic Routing per VPN. Queste impostazioni consentono il traffico di controllo del tunnel e del routing; non sostituiscono una regola firewall per il traffico utile.
Se il firewall è dietro un dispositivo NAT a monte, non copiare l’indirizzo pubblico di tale dispositivo nelle impostazioni Sophos importate. Verificare che l’indirizzo IP di ciascuno dei due blocchi tunnel_outside_address sia quello dell’interfaccia WAN Sophos; è presente un blocco per ciascun tunnel AWS.
Verificare profilo IPsec e tunnel
Dopo l’import, o in configurazione manuale, non bisogna fidarsi ciecamente del solo stato.
Verificare:
- Esistono entrambi i tunnel AWS.
- La versione IKE corrisponde alla configurazione AWS.
- Encryption, authentication, DH group, PFS e lifetimes coincidono per tunnel.
- La preshared key è corretta per ogni tunnel.
- Gateway type e remote gateway puntano agli endpoint AWS corretti.
- Le interfacce XFRM esistono e hanno nomi chiari.
Se le opzioni tunnel AWS cambiano in seguito, il lato Sophos deve essere allineato. Modifiche unilaterali causano spesso errori di phase 1 o phase 2.
Configurare BGP o route statiche
Con BGP, sotto Routing > BGP verificare che ASN locale, neighbor, ASN remoto e reti annunciate siano corretti. Configurare BGP su Sophos Firewall spiega la configurazione e verifica complete. In Routing > Information > BGP, Neighbors, Summary e Routes dovrebbero mostrare i valori attesi.
Con routing statico, le route verso le reti AWS devono puntare all’interfaccia XFRM corretta. Anche AWS deve conoscere i prefissi locali, tramite route VPN statiche o tramite la route table corretta.
In entrambe le varianti, il routing deve essere corretto in entrambe le direzioni. Un tunnel può essere connesso mentre il ritorno passa da Internet, da un NAT Gateway o da una route table sbagliata.
Creare regole firewall
Route-based IPsec non crea automaticamente regole firewall produttive sufficientemente precise. Le regole devono essere create e loggate consapevolmente.
Raccomandato:
- In Rules and policies > Firewall rules > IPv4 > Add firewall rule > New firewall rule creare la regola locale-verso-AWS: Source zones
LAN, Source networks and devices l’oggetto di rete locale, Destination zonesVPNe Destination networks l’oggetto di rete AWS. - In Services selezionare solo i servizi necessari; usare
Anysolo temporaneamente per isolare un problema e poi sostituirlo. - Consentire il ritorno con Source zones
VPNe Destination zonesLANsolo se AWS deve raggiungere attivamente sistemi locali. - Abilitare Log firewall traffic per la validazione.
- Verificare la posizione della regola prima di drop generali o catch-all.
Se la regola prevista non viene usata, consultare Regola Sophos Firewall non applicata: come trovare la causa.
Verificare la connessione
La validazione deve includere sempre entrambe le piattaforme e traffico applicativo reale. Il solo stato verde del tunnel non basta.
Verificare AWS
In AWS verificare:
- VPC > Site-to-Site VPN Connections > Tunnel Details mostra entrambi i tunnel.
- Lo stato tunnel è
UP. - Con BGP, le route sono visibili.
- La route table della VPC o del Transit Gateway contiene le route attese.
- Security groups e NACLs consentono il test.
- Metriche CloudWatch o VPN logs non mostrano problemi IKE o DPD ripetuti.
Verificare Sophos Firewall
Su Sophos Firewall verificare:
- Site-to-site VPN > Amazon VPC o Site-to-site VPN > IPsec mostra tunnel attivi.
- Routing > Information > BGP mostra neighbor e route apprese se si usa BGP.
- Network > Interfaces mostra le interfacce XFRM.
- Log Viewer mostra la regola firewall attesa.
- Packet Capture conferma interfaccia di ingresso e uscita se i log non bastano.
Scegliere bene il traffico di test
Un test deve usare host sorgente, host destinazione e servizio concreti, per esempio ICMP, RDP, SSH, HTTPS o DNS. Se ICMP è bloccato, ping non è significativo. Meglio testare il servizio che verrà davvero usato.
Errori tipici
Gli errori AWS VPN sembrano spesso problemi IPsec, anche quando la causa è routing o controlli di sicurezza AWS. I casi seguenti sono particolarmente frequenti.
È attivo un solo tunnel
Un tunnel basta per un primo test, ma non per un esercizio corretto. Entrambi i tunnel AWS hanno endpoint e parametri propri. Verificare per tunnel preshared key, parametri IKE/IPsec, interfaccia XFRM, neighbor BGP e stato AWS.
BGP non si stabilisce
Se il tunnel è connesso ma BGP non forma il peering, verificare prima ASN, IP del neighbor, annunci locali e indirizzi inside tunnel. Un caso Sophos ben delimitato si presenta quando il tunnel AWS VPC è attivo e connesso sul firewall, il neighbor BGP rimane in Active, AWS mostra la VPN come down mentre IPsec è up e la configurazione BGP attiva contiene no bgp default ipv4-unicast.
Solo se tutte queste caratteristiche coincidono, registrare la configurazione BGP attuale, il Local AS e l’IP del neighbor. Aprire quindi la console BGP tramite 3. Route Configuration > 1. Configure Unicast Routing > 3. Configure BGP e attivare esattamente il neighbor AWS interessato:
enable
conf t
router bgp <as-number>
neighbor <ip-address> activate
write
Sostituire <as-number> con l’ASN Sophos locale e <ip-address> con l’indirizzo inside tunnel del neighbor AWS interessato. Verificare quindi di nuovo il riepilogo BGP, i prefissi appresi e annunciati, lo stato del tunnel AWS e il traffico reale. Se no bgp default ipv4-unicast è assente o gli indirizzi e gli ASN AWS non corrispondono, non applicare questi comandi. Il comando proviene dalla procedura di troubleshooting SFOS 22 limitata alle connessioni Amazon VPC e non è una riparazione BGP generale.
Prima di conf t, documentare la configurazione BGP corrente e il metodo di ripristino approvato per l’ambiente. Se il neighbor non raggiunge Established o scompaiono route esistenti, non improvvisare e usare esclusivamente quel metodo già testato. Se tale metodo non esiste, fermarsi prima della modifica ed eseguire l’escalation al supporto Sophos.
Tunnel verde, istanza non raggiungibile
La causa è spesso fuori da IPsec: route table AWS errata, route propagation mancante, security group, NACL, firewall del sistema operativo, rete sorgente sbagliata o regola Sophos mancante.
Il ritorno segue il percorso sbagliato
AWS deve conoscere il ritorno verso la rete locale tramite VPN. Localmente, il ritorno verso la VPC AWS deve passare da XFRM o BGP. Routing asimmetrico può sembrare normale nello stato tunnel ma rompere sessioni reali.
MTU o frammentazione disturbano le applicazioni
AWS Site-to-Site VPN e overhead IPsec possono far emergere problemi MTU. Se piccoli test funzionano ma trasferimenti grandi o applicazioni specifiche si bloccano, verificare MSS/MTU, frammentazione e packet capture.
Esercizio e review
Dopo il go-live, il tunnel deve entrare nel normale processo operativo. Servono un owner, un processo documentato per le preshared keys, una finestra di change per i parametri IPsec, monitoraggio dei tunnel, test regolari di failover e una procedura chiara per cambi AWS o ISP.
Ogni modifica a CIDR VPC, routing Transit Gateway, route tables, security groups, reti locali o annunci BGP richiede una nuova validazione VPN. Il cloud VPN non è un clic una tantum, ma parte dell’architettura di rete.