Vai al contenuto
Avanet

Configurare e verificare Dynamic DNS su Sophos Firewall

In Network > Dynamic DNS > Add si associa un nome host del provider DDNS all’interfaccia WAN corrispondente. Se Sophos Firewall dispone direttamente dell’indirizzo IPv4 pubblico, si seleziona Use port IP. Se utilizza un indirizzo WAN privato dietro un router, si seleziona NATed public IP.

Dynamic DNS aggiorna soltanto il record DNS. Non apre porte e non crea regole NAT o firewall. Per rendere raggiungibile un server interno dietro il firewall, occorre completare correttamente anche i passaggi descritti in Pubblicare un server tramite DNAT.

Lo stesso nome host può rappresentare un indirizzo WAN IPv4 pubblico dinamico anche per una Sophos DNS Protection Location. Per prima cosa, la query esterna del record A descritta di seguito deve restituire l’indirizzo IPv4 WAN attuale; successivamente, occorre verificare l’assegnazione specifica della Location come descritto in Gestire in sicurezza le Sophos DNS Protection Locations. Il record DDNS da solo non assegna alcuna Filtering Policy e non modifica il percorso DNS dei client.

Configurare Dynamic DNS

È necessario disporre in precedenza di un nome host registrato presso il provider, ad esempio vpn.example.net, e di credenziali di aggiornamento valide. Il firewall deve poter risolvere i nomi DNS e raggiungere Internet e il provider. Dynamic DNS non funziona quindi in un ambiente air gap.

  1. Aprire Network > Dynamic DNS e fare clic su Add.
  2. In Hostname, inserire il nome creato presso il provider, ad esempio vpn.example.net. Utilizzare la sintassi di dominio e sottodomini richiesta dal provider; il formato non è uguale per tutti. Prima di salvare, verificare anche i requisiti del provider per il nome di accesso.
  3. Selezionare l’Interface WAN corrispondente, ad esempio Port2 - WAN.
  4. In IPv4 address, selezionare Use port IP o NATed public IP.
  5. Selezionare il Service provider.
  6. Inserire Login name e Password oppure la chiave di aggiornamento specifica del provider.
  7. Salvare con Save e controllare lo stato.

La finestra di dialogo SFOS attuale offre DynDNS, DynAccess, EasyDNS, ZoneEdit, Google DDNS, Namecheap, DNS-O-Matic, No-IP, FreeDNS e Cloudflare. Il precedente servizio Sophos myfirewall.co è stato dismesso. A seconda del provider, Password non indica la normale password dell’account: DynDNS utilizza l’Updater Client Key, mentre ZoneEdit ed EasyDNS utilizzano un Dynamic Token. DynAccess, No-IP, DNS-O-Matic, Google DDNS e Namecheap utilizzano nome utente e password. Se un provider non richiede un nome utente, Sophos indica di inserire il dominio come Login name. Per FreeDNS, la password in SFOS non può superare i 15 caratteri; Cloudflare costituisce l’eccezione con indirizzo e-mail e Global API Key.

Prima del passaggio 6, preparare il nome host e le credenziali di aggiornamento nell’account del provider:

  • DynDNS: Nell’account DynDNS, My Services > DynDNS Pro > Add New Hostname consente di creare un nome host con il dominio del provider scelto. La chiave di aggiornamento si trova in Account Settings > Updater Client Key. Se il campo è vuoto, utilizzare Generate Key. Attenzione: una nuova chiave sostituisce le credenziali precedenti dei client di aggiornamento DDNS esistenti; anche questi devono ricevere la nuova chiave. In SFOS, inserire il nome utente DynDNS come Login name e la chiave come Password, non la password dell’account.
  • ZoneEdit: Nel pannello di controllo ZoneEdit, aprire DNS e selezionare l’icona della chiave inglese per DYN RECORDS. Definire HOST e TTL, fare clic su ENABLE per DYN AUTHENTICATION TOKEN, proseguire con NEXT e confermare le modifiche. In SFOS, utilizzare il nome utente ZoneEdit e il token dinamico al posto della password dell’account.
  • EasyDNS: Nel pannello di controllo EasyDNS, aprire MANAGE > DNS SETTINGS > MODULAR EDITOR per il dominio e modificare DYNAMIC RECORDS. Definire il nome host e il TTL, creare il Dynamic Authenticated Token con ENABLE, selezionare NEXT e confermare le modifiche. Il servizio sottoscritto deve supportare Dynamic DNS. Se esiste già un record A, confermarne la conversione solo se deve effettivamente diventare dinamico. In SFOS, utilizzare il nome utente EasyDNS e il token al posto della password dell’account.
  • FreeDNS: Verificare i nomi host necessari in sottodomini FreeDNS. Per SFOS restano valide le credenziali indicate sopra e il limite di 15 caratteri per la password.

Le chiavi di aggiornamento e i token, come le password, non devono comparire negli screenshot o nei ticket di assistenza.

Use port IP o NATed public IP

  • Use port IP: L’interfaccia WAN selezionata dispone direttamente dell’indirizzo IPv4 pubblico.
  • NATed public IP: L’interfaccia WAN ha un indirizzo privato e un router a monte esegue il NAT. Per determinare l’indirizzo pubblico, il firewall deve inoltre poter raggiungere checkip.cyberoam.com tramite TCP 80.

Le interfacce bridge non supportano Dynamic DNS. Se le interfacce WAN vengono modificate o sostituite, occorre controllare le dipendenze in Object usage e quindi verificare la voce DDNS. Utilizzare correttamente zone e interfacce spiega le altre limitazioni delle interfacce.

Collegare Cloudflare in modo sicuro

Il provider Cloudflare integrato richiede l’indirizzo e-mail dell’account e la Global API Key. La documentazione Sophos attuale non indica un token API limitato come credenziale compatibile.

Cloudflare classifica la Global API Key come legacy: dispone degli stessi permessi dell’utente e accede alle sue risorse. Per l’integrazione SFOS si dovrebbe quindi utilizzare un utente Cloudflare separato, limitato alla zona necessaria e al ruolo DNS. La chiave non deve apparire in screenshot o ticket. Se la policy di sicurezza non consente una Global API Key, occorre utilizzare un updater esterno con un token API limitato oppure un altro provider supportato.

Per le VPN e gli altri servizi che collegano i client direttamente all’indirizzo IP pubblico del firewall, il record Cloudflare deve essere impostato su DNS only. Se il proxy è stato attivato intenzionalmente, la query DNS restituisce invece indirizzi anycast di Cloudflare; in questo caso, l’IP di origine DDNS deve essere controllato nella dashboard Cloudflare.

Verificare la risoluzione DDNS e il servizio

SFOS controlla ogni cinque minuti se l’indirizzo IP pubblico è cambiato. Dopo il salvataggio, verificare in Network > Dynamic DNS le colonne Last updated IP, Last updated status, Last updated time e, in caso di errore, Failure reason. Last updated IP è l’ultimo indirizzo inviato al provider; solo una query DNS esterna mostra quale indirizzo viene pubblicato.

Successivamente, interrogare il nome host tramite un resolver esterno alla cache DNS locale. Su Linux e macOS:

dig @1.1.1.1 vpn.example.net A +short

Su Windows:

nslookup vpn.example.net 1.1.1.1

La risposta deve corrispondere all’indirizzo IPv4 pubblico previsto. Subito dopo una modifica, un resolver può ancora restituire il vecchio indirizzo a causa del TTL e della cache DNS.

Infine, verificare il servizio effettivo da un’altra rete, ad esempio tramite una connessione mobile. Una risposta DNS corretta conferma soltanto la risoluzione del nome, non la raggiungibilità del servizio.

Annullare una modifica

Se la voce non funziona come previsto, modificarla in Network > Dynamic DNS tramite Manage e ripristinare l’interfaccia, la selezione dell’indirizzo IP, il provider e le credenziali precedenti. Se il DDNS non è più necessario, eliminare la voce e ripristinare manualmente presso il provider il valore DNS desiderato. L’eliminazione interrompe soltanto i futuri aggiornamenti DDNS; non rimuove le regole DNAT o firewall e non ripristina automaticamente il record DNS pubblicato dal provider. Verificare quindi di nuovo la risposta DNS esterna e il servizio.

Multi-WAN, HA e CGNAT

Dopo un failover WAN o HA, controllare sempre lo stato DDNS, la risposta DNS esterna e il servizio.

  • Multi-WAN: Ogni voce DDNS è associata a un’interfaccia selezionata. Non si deve presumere che un singolo nome host segua automaticamente il gateway attivo. Per i servizi pubblicati, pianificare un nome host distinto per ogni WAN.
  • HA: I log di troubleshooting non vengono sincronizzati tra i nodi. Configurare High Availability su Sophos Firewall spiega il test di failover completo.
  • CGNAT: NATed public IP può pubblicare l’indirizzo condiviso del provider, ma non rende il firewall raggiungibile da Internet. A tale scopo è necessario, ad esempio, un vero indirizzo IPv4 pubblico, un record AAAA gestito separatamente con una configurazione IPv6 adeguata del firewall e del servizio oppure un tunnel o un servizio relay stabilito dall’interno. Il DDNS SFOS descritto qui aggiorna solo IPv4.

Risolvere i problemi

In Log Viewer, selezionare Events e System, quindi cercare il componente DDNS. I valori tecnici dei campi sono log_type=Event, log_subtype=System e log_component=DDNS; i campi rilevanti sono Status, Message e Failure reason. Anche l’opzione 4 Device Console mostra le voci più recenti:

show logs ddc.log lines 100

Per un’analisi in tempo reale, utilizzare il comando seguente in Device Management > Advanced Shell nel menu SSH e terminarlo con Ctrl+C:

tail -f /log/ddc.log

I comandi e l’associazione con ddc.log sono documentati per SFOS 22, ma non sono stati eseguiti su un firewall di un cliente per questo articolo. Altri file di log e metodi di accesso sono elencati in Log dei servizi Sophos Firewall.

  • Invalid Configuration or bad authorization: Controllare il nome host, il provider e le credenziali. Cloudflare richiede l’indirizzo e-mail dell’account e la Global API Key.
  • Invalid IP: Controllare l’interfaccia e la selezione Use port IP o NATed public IP.
  • DNS Error o Connect Failed: Controllare il DNS, la Default Route, l’accesso a Internet e la raggiungibilità del provider. Per NATed public IP, verificare anche la connettività al servizio di controllo IP indicato sopra.
  • Invalid Response o Reported Abuse: Controllare lo stato del provider, l’account, eventuali blocchi e i limiti del provider.
  • Success, ma IP errato: Confrontare la dashboard del provider, l’interfaccia selezionata, l’opzione IP e la risposta DNS esterna.
  • Il FQDN è corretto, ma il servizio non è raggiungibile: Controllare il port forwarding a monte, la regola DNAT, la regola firewall e la configurazione della VPN o del servizio interessato.

Se Cloudflare DDNS non funziona più soltanto dopo l’aggiornamento a SFOS 22.0 MR1, installare SFOS 22.0 MR2 Build 546 o una versione successiva e ripetere il test. Sophos corregge NC-180219 in questa versione; i dettagli sono disponibili nell’articolo su SFOS 22 MR2.