Vai al contenuto
Avanet

Configurare manualmente Sophos DNS Protection su macOS

Su un Mac, Sophos DNS Protection può essere configurato manualmente in due modi: Traditional DNS aggiunge i due indirizzi IP dei resolver a un servizio di rete macOS, mentre Secure DNS installa un profilo di configurazione contenente l’URL DNS-over-HTTPS specifico del tenant e della location. Entrambi i metodi sono adatti a singoli dispositivi di test; per un parco gestito, distribuisci la configurazione tramite MDM.

Il limite del prodotto è importante: DNS Protection Endpoint Policy di Sophos Central attualmente non supporta macOS. Inoltre, un profilo DoH installato manualmente non rende il Mac un endpoint gestito da questa policy. Si limita a configurare il DNS di macOS.

L’uso di un firewall come resolver centrale corrisponde a un’architettura diversa. È descritto in Configurazione della protezione DNS di Sophos con Sophos Firewall.

Scegliere tra Traditional DNS e Secure DNS

Secure DNS (DoH) è in genere la scelta migliore per un Mac configurato direttamente: le richieste DNS vengono crittografate tramite HTTPS e l’URL univoco le associa alla location Secure DNS. Il profilo si applica a tutto il sistema e resta attivo quando si passa da una rete Wi-Fi all’altra. Prima di usarlo, stabilisci come interagirà con client VPN, domini interni, captive portal e altri profili DNS o di filtraggio.

Traditional DNS over IPv4 è più semplice e adatto a un test limitato o a una rete il cui indirizzo IP pubblico in uscita è registrato in una location Traditional DNS. Le richieste vengono associate alla location tramite questo indirizzo IP pubblico di origine. L’impostazione si applica separatamente a ogni servizio di rete macOS: oltre a Wi-Fi, controlla quindi Ethernet e gli altri servizi attivi. Questo metodo non consente un’associazione affidabile quando il Mac usa un indirizzo IP in uscita non registrato.

Non configurare entrambe le varianti contemporaneamente come presunto fallback. Un profilo DoH può sovrascrivere i resolver immessi manualmente; possono competere anche più profili DNS o VPN. Per il progetto pilota, scegli e documenta un solo metodo.

Prepararsi prima di modificare

Sono necessari:

  • Accesso a My Products > DNS Protection in Sophos Central.
  • Una location appropriata e una policy di filtraggio assegnata.
  • Per Traditional DNS: Traditional DNS over IPv4 attivato, l’indirizzo IPv4 pubblico o il FQDN registrato e i due indirizzi IP in Installers.
  • Per Secure DNS: una location con Secure DNS attivato e il relativo DNS over HTTPS URL generato.
  • Diritti di amministratore locale per l’installazione del profilo.
  • Una copia delle impostazioni DNS precedenti e una procedura di rollback verificata.

Prima di iniziare, annota i servizi di rete attivi in System Settings > Network. Salva i valori dei server DNS configurati staticamente. Per i server forniti automaticamente tramite DHCP, registra Automatic/DHCP come stato iniziale. Scegli inoltre almeno un dominio di test interno e uno pubblico. Non pubblicare URL DoH reali in ticket o repository di script, perché consentono di associare le richieste alla location.

Variante A: configurare Traditional DNS

  1. In Sophos Central, apri My Products > DNS Protection > Installers e copia entrambi i valori sotto IP addresses. Utilizza solo i valori del tuo tenant.
  2. Sul Mac, apri System Settings > Network.
  3. Seleziona il servizio attivo, ad esempio Wi-Fi, quindi apri Details > DNS.
  4. In DNS Servers, rimuovi i resolver di terze parti configurati manualmente e aggiungi entrambi gli indirizzi Sophos. Un terzo resolver non fungerebbe esclusivamente da riserva e potrebbe aggirare il filtraggio e la reportistica.
  5. Conferma con OK e applica la modifica.
  6. Ripeti la procedura per ogni altro servizio di rete effettivamente utilizzato.

I nomi e la disposizione dei singoli pulsanti potrebbero differire leggermente tra le versioni di macOS. L’importante è che i server DNS vengano modificati nel servizio di rete selezionato, non nel browser o solo in una singola applicazione.

Disconnetti e riconnetti brevemente il Wi-Fi oppure riconnetti il servizio interessato. Non passare immediatamente a tutti i Mac: testa prima un progetto pilota su ciascun tipo di rete pertinente.

Variante B: configurare Secure DNS con un profilo

1. Copia l’URL DoH

Quando crei o modifichi la location Secure DNS in Sophos Central, copia per intero il DNS over HTTPS URL generato. Non comporre manualmente il nome host o il percorso.

2. Crea profilo

Crea un file sophos-dns.sh nel terminale del Mac e incolla questo script:

#!/bin/bash
set -eu

DOH_URL=${1:?Usage: $0 <doh_url>}
case "$DOH_URL" in
  https://*) ;;
  *) echo "The DoH URL must start with https://" >&2; exit 1 ;;
esac

OUTPUT="dns-config.mobileconfig"
UUID1=$(uuidgen)
UUID2=$(uuidgen)

cat > "$OUTPUT" <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>PayloadContent</key>
  <array>
    <dict>
      <key>PayloadDescription</key>
      <string>Configures DNS settings</string>
      <key>PayloadDisplayName</key>
      <string>DNS Settings</string>
      <key>PayloadIdentifier</key>
      <string>com.apple.dnsSettings.managed.custom</string>
      <key>PayloadType</key>
      <string>com.apple.dnsSettings.managed</string>
      <key>PayloadUUID</key>
      <string>$UUID1</string>
      <key>PayloadVersion</key>
      <integer>1</integer>
      <key>DNSSettings</key>
      <dict>
        <key>DNSProtocol</key>
        <string>HTTPS</string>
        <key>ServerURL</key>
        <string>$DOH_URL</string>
      </dict>
    </dict>
  </array>
  <key>PayloadDescription</key>
  <string>DNS Protection DoH</string>
  <key>PayloadDisplayName</key>
  <string>DNS-Global DNS over HTTPS</string>
  <key>PayloadIdentifier</key>
  <string>com.example.dns.profile</string>
  <key>PayloadRemovalDisallowed</key>
  <false/>
  <key>PayloadType</key>
  <string>Configuration</string>
  <key>PayloadUUID</key>
  <string>$UUID2</string>
  <key>PayloadVersion</key>
  <integer>1</integer>
  <key>PayloadScope</key>
  <string>System</string>
</dict>
</plist>
EOF

plutil -lint "$OUTPUT"
open "$OUTPUT"

Lo script modifica il sistema locale: sovrascrive qualsiasi file dns-config.mobileconfig esistente nella cartella corrente, quindi apre la finestra di installazione. L’URL Sophos sostituisce il segnaposto; le virgolette proteggono i caratteri speciali:

chmod +x sophos-dns.sh
./sophos-dns.sh 'https://<tenant-specific-doh-url>/dns-query'

Procedi solo se plutil restituisce OK per dns-config.mobileconfig. Il dominio di esempio in PayloadIdentifier è solo un identificatore tecnico stabile, non un indirizzo di destinazione per le query DNS.

3. Controllare e installare il profilo

  1. Apri System Settings > General > Device Management. Se macOS mostra un messaggio dopo l’apertura del file, usalo per passare all’installazione del profilo caricato.
  2. Apri DNS-Global DNS over HTTPS sotto i profili caricati.
  3. Verifica che siano visibili DNS Settings, il protocollo HTTPS e l’URL del server previsto per il tenant.
  4. Seleziona Install, conferma nuovamente l’installazione e autenticati con un account amministratore locale.
  5. In Device Management, verifica che il profilo risulti installato.

Un profilo installato da un file è manuale, anche se macOS definisce il relativo payload managed. Sophos Central non lo distribuisce, non lo inventaria e non lo rimuove. Per più Mac, un amministratore deve distribuire lo stesso payload DNS Settings tramite la soluzione MDM approvata, anziché chiedere ai singoli utenti di eseguire lo script. Verifica i campi e le regole di conflitto specifici nella soluzione MDM utilizzata.

Verificare il funzionamento

Controlla innanzitutto lo stato dei resolver attivi ed esegui una normale risoluzione DNS:

scutil --dns
dig example.com

scutil --dns può mostrare più resolver per VPN, domini di ricerca e servizi di sistema. Non cercare quindi un solo indirizzo IP: verifica quale resolver gestisce il dominio di test. dig conferma la ricezione di una risposta, ma da solo non dimostra che sia stata applicata la policy Sophos né quale trasporto sia stato utilizzato.

Il test di accettazione deve quindi coprire tutti i livelli:

  1. Esegui il test di configurazione in DNS Protection > Installers.
  2. Risolvi un normale dominio pubblico.
  3. Utilizza un dominio innocuo che sia deliberatamente bloccato per il pilota dalla policy di filtraggio assegnata.
  4. Controlla che nei report di DNS Protection compaiano la richiesta, la location e la decisione. Tieni conto di un breve ritardo nella reportistica.
  5. Testa i nomi interni, la VPN, il portale guest/captive e almeno un secondo cambio di rete.

Dopo aver configurato Traditional DNS, verifica anche che l’indirizzo IP pubblico in uscita appartenga alla location. Dopo aver configurato Secure DNS, assicurati che nessun altro profilo DNS, VPN o di filtraggio assuma il controllo del resolver.

Gestire separatamente la pagina di blocco e il certificato

Un blocco DNS riuscito non garantisce che la pagina di blocco HTTPS venga visualizzata senza un avviso relativo al certificato. A tale scopo, il DNS Protection Root Certificate disponibile in DNS Protection > Installers deve essere installato sul Mac tramite un processo di attendibilità controllato. Non è il certificato di Sophos Firewall usato per TLS Inspection.

Assegna un responsabile e un test pilota separati alla gestione del certificato. Sui Mac gestiti, distribuisci il certificato tramite MDM. Su un singolo Mac di test, verificane l’origine e l’impronta digitale prima di considerarlo attendibile. Se il test riguarda soltanto la risoluzione dei nomi, un avviso relativo al certificato su una pagina di blocco HTTPS non dimostra che DNS Protection non funzioni.

Rollback e rimozione

Ripristinare Traditional DNS

In System Settings > Network > > Details > DNS, rimuovi gli indirizzi IP di Sophos e ripristina esattamente lo stato iniziale documentato: i resolver statici precedenti oppure la configurazione automatica tramite DHCP. Ripeti l’operazione per ogni servizio di rete modificato, riconnettiti e verifica la risoluzione dei nomi pubblici e interni.

Rimuovere il profilo Secure DNS

  1. Apri System Settings > General > Device Management.
  2. Seleziona DNS-Global DNS over HTTPS e scegli la funzione per rimuovere il profilo.
  3. Autentica la rimozione e verifica che il profilo non sia più elencato.
  4. Riconnetti la rete e verifica con scutil --dns e dig example.com che il resolver precedente sia nuovamente attivo.

Il profilo generato consente la rimozione (PayloadRemovalDisallowed è false). Se l’opzione di rimozione non è disponibile o viene negata, il dispositivo o il profilo potrebbero essere gestiti da un’organizzazione. Non tentare di aggirare localmente tale gestione: chiedi all’amministratore MDM responsabile di rimuovere l’assegnazione. I file sophos-dns.sh e dns-config.mobileconfig possono essere eliminati in sicurezza dopo un’installazione riuscita e documentata, ma questa operazione non rimuove un profilo già installato.

Risoluzione dei problemi in base al sintomo

Internet non funziona dopo la modifica

Esegui prima il rollback. Analizza quindi la connessione di rete, il captive portal e la connettività tramite IP separatamente dal DNS. Con Traditional DNS, verifica che entrambi i resolver siano stati applicati correttamente e che il firewall o il provider consenta il DNS tramite UDP/TCP 53. Con Secure DNS, l’URL DoH specifico del tenant deve essere raggiungibile tramite HTTPS.

I domini pubblici funzionano, i nomi interni no

Con un profilo DoH a livello di sistema, il Mac invia sostanzialmente il DNS al servizio configurato. La protezione DNS non riconosce automaticamente le zone interne. Lo split DNS tramite VPN o resolver interni deve essere pianificato prima dell’implementazione e testato con i profili VPN e MDM effettivamente utilizzati. Nessuna lista consentita pubblica sostituisce un server DNS interno autorevole.

Il test di configurazione non rileva la protezione DNS

Con Traditional DNS, confronta l’indirizzo IP pubblico di origine attuale con quello della location, soprattutto dopo un cambio di rete, percorso Multi-WAN o provider. Con Secure DNS, controlla l’URL completo nel profilo installato e cerca eventuali profili DNS o VPN in conflitto. Quindi riconnettiti e ripeti il test.

Impossibile installare il profilo

Esegui prima plutil -lint dns-config.mobileconfig. Quindi cerca in Device Management un profilo già caricato o installato con lo stesso identificatore ed eventuali restrizioni dell’organizzazione. Non installare più profili leggermente diversi uno sopra l’altro; rimuovi il vecchio profilo in modo controllato o sostituiscilo tramite MDM.

Una pagina HTTPS bloccata visualizza un avviso relativo al certificato

Controlla separatamente la policy DNS e l’attendibilità del certificato radice. Se il blocco appare nel report, probabilmente la decisione del DNS sta già funzionando. Chiedi quindi al responsabile dei certificati di controllare la distribuzione del certificato, la catena di fiducia e l’accessibilità della pagina di blocco, invece di allentare frettolosamente la policy di filtraggio.