Sophos DNS Protection auf macOS manuell einrichten
Auf einem Mac lässt sich Sophos DNS Protection manuell auf zwei Arten verwenden: Traditional DNS trägt die beiden Resolver-IP-Adressen in einem macOS-Netzwerkdienst ein, Secure DNS installiert ein Konfigurationsprofil mit der tenant- und locationspezifischen DNS-over-HTTPS-URL. Für einzelne Testgeräte ist beides geeignet; für einen verwalteten Bestand gehört die Konfiguration in ein MDM.
Wichtig ist die Produktgrenze: Die DNS Protection Endpoint Policy von Sophos Fusion (ehemals Sophos Central) unterstützt macOS derzeit nicht. Ein manuell installiertes DoH-Profil macht den Mac auch nicht zu einem durch diese Policy verwalteten Endpoint. Es setzt lediglich die DNS-Einstellungen von macOS.
Der Ablauf für eine Firewall als zentralen Resolver ist ein anderes Zielbild. Er wird unter Sophos DNS Protection mit Sophos Firewall einrichten beschrieben.
Traditional DNS oder Secure DNS wählen
Secure DNS (DoH) ist für einen direkt konfigurierten Mac meist die bessere Wahl: DNS-Anfragen werden per HTTPS verschlüsselt und die Secure-DNS-Location wird über ihre individuelle URL zugeordnet. Das Profil wirkt systemweit und bleibt auch nach einem Wechsel zwischen WLANs wirksam. Vorher muss aber geklärt sein, wie VPN-Clients, interne Domains, Captive Portals und andere DNS- oder Filterprofile damit zusammenspielen.
Traditional DNS over IPv4 ist einfacher und eignet sich für einen begrenzten Test oder ein Netzwerk, dessen öffentliche Ausgangs-IP in einer Traditional-DNS-Location registriert ist. Die Zuordnung erfolgt über diese öffentliche Source-IP. Die Einstellung gilt pro macOS-Netzwerkdienst; neben Wi-Fi müssen deshalb beispielsweise Ethernet oder weitere aktive Dienste separat geprüft werden. Ausserhalb einer registrierten Ausgangs-IP ist dieser Pfad nicht zuverlässig zugeordnet.
Nicht beide Varianten gleichzeitig als vermeintlichen Fallback konfigurieren. Ein DoH-Profil kann die manuell eingetragenen Resolver übersteuern; mehrere DNS- oder VPN-Profile können ebenfalls konkurrieren. Für den Pilot wird genau ein Zielpfad gewählt und dokumentiert.
Vor dem Ändern vorbereiten
Benötigt werden:
- Zugriff auf My Products > DNS Protection in Sophos Fusion.
- Eine passende Location und eine zugewiesene Filtering Policy.
- Für Traditional DNS: aktiviertes Traditional DNS over IPv4, die registrierte öffentliche IPv4-Adresse oder der FQDN und die zwei IP-Adressen unter Installers.
- Für Secure DNS: eine Location mit aktiviertem Secure DNS und deren erzeugte DNS over HTTPS URL.
- Lokale Administratorrechte für die Profilinstallation.
- Die bisherigen DNS-Einstellungen und ein getesteter Rückweg.
Vorher unter System Settings > Network die aktiven Netzwerkdienste notieren. Bei statisch eingetragenen DNS-Servern die vorhandenen Werte sichern; bei automatisch per DHCP gelieferten Servern Automatic/DHCP als Ausgangszustand dokumentieren. Ausserdem mindestens eine interne und eine öffentliche Testdomain festlegen. Reale DoH-URLs nicht in Tickets oder Skript-Repositories veröffentlichen, denn sie ordnen Anfragen der Location zu.
Variante A: Traditional DNS einrichten
- In Sophos Fusion My Products > DNS Protection > Installers öffnen und neben IP addresses auf Copy klicken. Damit werden beide Resolver-IP-Adressen kopiert. Nur Werte aus dem eigenen Tenant verwenden.
- Auf dem Mac System Settings > Network öffnen.
- Den aktiven Dienst wählen, beispielsweise Wi-Fi, dann Details > DNS öffnen.
- Unter DNS Servers mit + beide Sophos-Adressen hinzufügen und die bisherigen manuellen Fremdresolver entfernen. Ein fremder dritter Resolver wäre keine reine Reserve und könnte Filterung sowie Reporting umgehen.
- Mit OK bestätigen.
- Den Vorgang für jeden weiteren tatsächlich verwendeten Netzwerkdienst wiederholen.
Die Namen und Anordnung einzelner Schaltflächen können sich zwischen macOS-Versionen leicht unterscheiden. Entscheidend ist, dass die DNS-Server im ausgewählten Netzwerkdienst geändert werden – nicht in einem Browser oder nur in einer einzelnen Anwendung.
Danach WLAN kurz trennen und wieder verbinden oder den betroffenen Dienst neu verbinden. Nicht sofort alle Macs umstellen: Zuerst einen Pilot auf jedem relevanten Netzwerktyp testen.
Variante B: Secure DNS mit einem Profil einrichten
1. DoH-URL kopieren
Beim Anlegen oder Bearbeiten der Secure-DNS-Location in Sophos Fusion die erzeugte DNS over HTTPS URL kopieren. Die URL vollständig übernehmen; weder Hostname noch Pfad selbst zusammensetzen.
2. Profil erzeugen
Auf dem Mac im Terminal eine Datei sophos-dns.sh anlegen und dieses Skript einfügen:
#!/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"
Das Skript ist lokal zustandsverändernd: Es überschreibt im aktuellen Ordner eine vorhandene Datei dns-config.mobileconfig und öffnet danach den Installationsdialog. Die Sophos-URL ersetzt den Platzhalter; Anführungszeichen schützen Sonderzeichen:
chmod +x sophos-dns.sh
./sophos-dns.sh 'https://<tenant-specific-doh-url>/dns-query'
Nur fortfahren, wenn plutil OK für dns-config.mobileconfig meldet. Die Beispieldomain im PayloadIdentifier ist lediglich eine stabile technische Kennung, keine Zieladresse für DNS-Anfragen.
3. Profil prüfen und installieren
- Nach dem Öffnen der Datei den Hinweis mit OK bestätigen. Anschliessend Device Management öffnen.
- Dort DNS-Global DNS over HTTPS doppelklicken.
- Inhalt prüfen:
DNS Settings, ProtokollHTTPSund die erwartete tenant-spezifische Server-URL müssen sichtbar sein. - Install wählen, die erneute Bestätigung akzeptieren und sich auf Aufforderung mit einem lokalen Administratorkonto authentifizieren.
- Unter Device Management kontrollieren, dass das Profil danach als installiert angezeigt wird.
Ein per Datei installiertes Profil ist manuell, auch wenn macOS seine Payload als managed bezeichnet. Sophos Fusion liefert es nicht aus, inventarisiert es nicht und entfernt es nicht. Für mehrere Macs sollte ein Administrator dieselbe DNS-Settings-Payload über das freigegebene MDM verteilen, statt Benutzer einzeln Skripte ausführen zu lassen. MDM-spezifische Felder und Konfliktregeln werden im jeweiligen MDM geprüft.
Funktion verifizieren
Zuerst den aktiven Resolverzustand und eine normale Auflösung prüfen:
scutil --dns
dig example.com
scutil --dns kann mehrere Resolver für VPN, Suchdomains und systemweite Dienste zeigen. Deshalb nicht nur nach einer einzelnen IP suchen, sondern prüfen, welcher Resolver für die Testdomain zuständig ist. dig bestätigt eine Antwort, beweist allein aber weder die angewendete Sophos-Policy noch den verwendeten Transport.
Die Abnahme umfasst deshalb alle Ebenen:
- Unter DNS Protection > Installers den Konfigurationstest ausführen.
- Eine normale öffentliche Domain auflösen.
- Eine harmlose Domain verwenden, die für den Pilot bewusst durch die zugewiesene Filtering Policy blockiert wird.
- In den DNS-Protection-Reports kontrollieren, ob Anfrage, Location und Entscheidung erscheinen. Eine kurze Reporting-Verzögerung einplanen.
- Interne Namen, VPN, Gast-/Captive-Portal und mindestens einen zweiten Netzwerkwechsel testen.
Nach Traditional DNS zusätzlich prüfen, ob die aktuelle öffentliche Ausgangs-IP zur Location gehört. Nach Secure DNS kontrollieren, ob kein zweites DNS-, VPN- oder Filterprofil den Resolver übernimmt.
Blockseite und Zertifikat getrennt übergeben
Eine erfolgreiche DNS-Blockierung bedeutet noch nicht, dass eine HTTPS-Blockseite ohne Zertifikatswarnung erscheint. Dafür muss das DNS Protection Root Certificate aus DNS Protection > Installers über einen kontrollierten Vertrauensprozess auf dem Mac installiert werden. Es ist nicht das Zertifikat der Sophos Firewall für TLS Inspection.
Diese Zertifikatsaufgabe erhält einen eigenen Owner und eine eigene Pilotprüfung. Bei verwalteten Macs wird das Zertifikat über MDM verteilt; bei einem einzelnen Test-Mac wird Herkunft und Fingerprint vor dem Vertrauen geprüft. Wenn nur die Namensauflösung getestet wird, ist eine Zertifikatswarnung auf einer HTTPS-Blockseite kein Beleg dafür, dass DNS Protection ausgefallen ist.
Rollback und Entfernung
Traditional DNS zurücknehmen
Unter System Settings > Network >
Secure-DNS-Profil entfernen
- Device Management öffnen.
- DNS-Global DNS over HTTPS auswählen und die Funktion zum Entfernen des Profils wählen.
- Die Entfernung authentifizieren und kontrollieren, dass das Profil nicht mehr gelistet ist.
- Netzwerk neu verbinden und mit
scutil --dnssowiedig example.comprüfen, dass der vorherige Resolver wieder aktiv ist.
Das erzeugte Profil erlaubt die Entfernung (PayloadRemovalDisallowed ist false). Fehlt die Entfernen-Funktion oder wird sie verweigert, kann das Gerät oder Profil durch eine Organisation verwaltet sein; dann darf nicht lokal dagegen gearbeitet werden, sondern der zuständige MDM-Administrator entfernt die Zuweisung. Die Dateien sophos-dns.sh und dns-config.mobileconfig können nach dokumentierter, erfolgreicher Installation sicher gelöscht werden; das entfernt ein bereits installiertes Profil jedoch nicht.
Troubleshooting nach Symptom
Internet funktioniert nach der Umstellung nicht
Zuerst Rollback durchführen. Danach Netzwerkverbindung, Captive Portal und Erreichbarkeit per IP von DNS trennen. Bei Traditional DNS prüfen, ob beide Resolver korrekt übernommen wurden und ob Firewall oder Provider DNS auf UDP/TCP 53 zulassen. Bei Secure DNS muss HTTPS zur tenant-spezifischen DoH-URL erreichbar sein.
Öffentliche Domains funktionieren, interne Namen nicht
Der Mac sendet mit einem systemweiten DoH-Profil grundsätzlich DNS an den konfigurierten Dienst. Interne Zonen kennt DNS Protection nicht automatisch. Split DNS über VPN oder interne Resolver muss vor dem Rollout geplant und mit den tatsächlich eingesetzten VPN-/MDM-Profilen getestet werden. Kein öffentliches Allowlisting ersetzt einen autoritativen internen DNS-Server.
Der Konfigurationstest erkennt DNS Protection nicht
Bei Traditional DNS die aktuelle öffentliche Source-IP mit der Location vergleichen, besonders nach Netzwerk-, Multi-WAN- oder Providerwechsel. Bei Secure DNS die vollständige URL im installierten Profil prüfen und nach konkurrierenden DNS- oder VPN-Profilen suchen. Anschliessend neu verbinden und erneut testen.
Das Profil lässt sich nicht installieren
Zuerst plutil -lint dns-config.mobileconfig ausführen. Danach unter Device Management nach einem bereits geladenen oder installierten Profil mit derselben Kennung und nach organisatorischen Einschränkungen suchen. Nicht mehrere leicht veränderte Profile übereinander installieren; das alte Profil kontrolliert entfernen oder durch das MDM ersetzen.
Eine blockierte HTTPS-Seite zeigt eine Zertifikatswarnung
DNS-Policy und Root-Certificate-Vertrauen getrennt prüfen. Erscheint die Blockierung im Report, funktioniert die DNS-Entscheidung wahrscheinlich bereits. Danach Zertifikatsverteilung, Vertrauenskette und Erreichbarkeit der Blockseite durch den zuständigen Zertifikats-Owner prüfen lassen, statt die Filtering Policy vorschnell zu lockern.