Wie man DNS über HTTPS auf macOS konfiguriert

Diese Anleitung hilft Ihnen bei der Einrichtung und Konfiguration von DNS über HTTPS (DoH) auf Ihrem macOS-System und bietet vollständige Anweisungen von der grundlegenden Einrichtung bis zur erweiterten Konfiguration.

Voraussetzungen

  • macOS 10.15 (Catalina) oder höher
  • Administratorrechte
  • Stabile Netzwerkverbindung
  • Grundkenntnisse der Kommandozeile

Systemweite Konfiguration

Schritt 1: Systemeinstellungen verwenden

  1. Klicken Sie auf das Apple-Menü
  2. Wählen Sie “Systemeinstellungen” (oder “Systemeinstellungen”)
  3. Klicken Sie auf “Netzwerk”
  4. Wählen Sie aktuelle Netzwerkverbindung
  5. Klicken Sie auf “Details…”
  6. Wählen Sie “DNS”-Tab

Schritt 2: DNS-Server konfigurieren

  1. Klicken Sie auf ”+“-Schaltfläche, um DNS-Server hinzuzufügen
  2. Geben Sie folgende Serveradressen ein:
    1.1.1.1
    1.0.0.1
    2606:4700:4700::1111
    2606:4700:4700::1001

Schritt 3: Terminal-Konfiguration

Öffnen Sie Terminal und führen Sie folgende Befehle aus:

# Aktuelle DNS-Einstellungen anzeigen
scutil --dns

# DNS-Server konfigurieren
networksetup -setdnsservers Wi-Fi 1.1.1.1 1.0.0.1

# Einstellungen verifizieren
networksetup -getdnsservers Wi-Fi

Drittanbieter-Clients verwenden

DNSCrypt-Proxy

  1. Installation
# Mit Homebrew installieren
brew install dnscrypt-proxy

# Oder manuelle Installation
curl -L https://github.com/DNSCrypt/dnscrypt-proxy/releases/latest/download/dnscrypt-proxy-macos-amd64.tar.gz | tar xz
  1. Konfiguration

Bearbeiten Sie die dnscrypt-proxy.toml-Datei:

listen_addresses = ['127.0.0.1:53']
server_names = ['cloudflare', 'google']
doh_servers = true
require_dnssec = true
require_nolog = true
require_nofilter = true
force_tcp = false
timeout = 2500
keepalive = 30
  1. Dienst starten
# Dienst installieren
sudo brew services start dnscrypt-proxy

# Oder manuell starten
sudo dnscrypt-proxy -service install
sudo dnscrypt-proxy -service start

Verschlüsselte DNS-Profile

  1. Konfigurationsprofil erstellen

Erstellen Sie eine .mobileconfig-Datei:

<?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>DNSSettings</key>
            <dict>
                <key>DNSProtocol</key>
                <string>HTTPS</string>
                <key>ServerURL</key>
                <string>https://cloudflare-dns.com/dns-query</string>
            </dict>
            <key>PayloadDescription</key>
            <string>DNS über HTTPS konfigurieren</string>
            <key>PayloadDisplayName</key>
            <string>DNS-Einstellungen</string>
            <key>PayloadIdentifier</key>
            <string>com.example.dns</string>
            <key>PayloadType</key>
            <string>com.apple.dnsSettings.managed</string>
            <key>PayloadUUID</key>
            <string>A1B2C3D4-E5F6-G7H8-I9J0-K1L2M3N4O5P6</string>
            <key>PayloadVersion</key>
            <integer>1</integer>
        </dict>
    </array>
    <key>PayloadDescription</key>
    <string>DNS über HTTPS Konfiguration</string>
    <key>PayloadDisplayName</key>
    <string>DoH Konfiguration</string>
    <key>PayloadIdentifier</key>
    <string>com.example.doh</string>
    <key>PayloadRemovalDisallowed</key>
    <false/>
    <key>PayloadType</key>
    <string>Configuration</string>
    <key>PayloadUUID</key>
    <string>Q1R2S3T4-U5V6-W7X8-Y9Z0-A1B2C3D4E5F6</string>
    <key>PayloadVersion</key>
    <integer>1</integer>
</dict>
</plist>
  1. Profil installieren
    • Doppelklicken Sie auf die Konfigurationsdatei
    • Folgen Sie den Systemanweisungen zur Installation
    • In Systemeinstellungen verifizieren

Konfiguration überprüfen

Methode 1: Terminal verwenden

# DNS-Auflösung testen
dig example.com @127.0.0.1

# DNSSEC überprüfen
dig example.com @127.0.0.1 +dnssec

# DoH-Server verifizieren
dig whoami.cloudflare CH TXT @127.0.0.1

Methode 2: System-Tools verwenden

  1. “Netzwerk-Dienstprogramm” öffnen
  2. “Lookup” auswählen
  3. Domain-Namen zum Testen eingeben
  4. Auflösungsergebnisse prüfen

Methode 3: Online-Test

  1. DNS-Leak-Test-Website besuchen
  2. Standardtest durchführen
  3. DNS-Anfragen-Routing überprüfen

Fehlerbehebung

Häufige Probleme

  1. DNS-Auflösungsfehler

    • Netzwerkverbindung prüfen
    • DNS-Einstellungen verifizieren
    • Netzwerkdienst neu starten
    • DNS-Cache leeren
  2. Leistungsprobleme

    • Nächsten Server wählen
    • Cache-Einstellungen optimieren
    • Antwortzeit überwachen
    • Systemressourcen prüfen
  3. Konfigurationsprofil-Probleme

    • Dateiformat überprüfen
    • Berechtigungseinstellungen prüfen
    • Konfiguration neu installieren
    • Systemversion aktualisieren

Systemdiagnose

  1. Netzwerkdiagnose
# Netzwerkverbindung testen
ping 1.1.1.1

# Routing prüfen
traceroute 1.1.1.1

# Netzwerkstatus anzeigen
networksetup -listallnetworkservices
  1. DNS-Diagnose
# DNS-Cache leeren
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder

# DNS-Konfiguration anzeigen
scutil --dns

# DNS-Auflösung testen
dig +trace example.com

Best Practices

  1. Anbieterauswahl

    • Datenschutzrichtlinien bewerten
    • Serviceverfügbarkeit prüfen
    • Geografische Lage berücksichtigen
    • Verbindungsgeschwindigkeit testen
  2. Sicherheitsempfehlungen

    • DNSSEC aktivieren
    • Vertrauenswürdige Anbieter verwenden
    • Regelmäßige System-Updates
    • Netzwerkaktivität überwachen
  3. Leistungsoptimierung

    • Nächste Server wählen
    • Cache-Einstellungen optimieren
    • Leistungsmetriken überwachen
    • Regelmäßige Wartung

Unternehmensbereitstellung

MDM-Konfiguration

  1. Konfigurationsdateien erstellen

    • DNS-Parameter festlegen
    • Sicherheitsoptionen konfigurieren
    • Bereitstellungsumfang definieren
    • Signaturzertifikate vorbereiten
  2. Bereitstellungsstrategie

    • Konfigurationsprofile pushen
    • Bereitstellungsstatus überwachen
    • Fehlerberichte behandeln
    • Konfigurationen aktualisieren

Automatisierte Konfiguration

  1. Mit Skripten
#!/bin/bash
# DoH konfigurieren
configure_doh() {
    # Erforderliche Tools installieren
    brew install dnscrypt-proxy

    # Konfiguration sichern
    cp /usr/local/etc/dnscrypt-proxy.toml /usr/local/etc/dnscrypt-proxy.toml.bak

    # Dienst starten
    brew services start dnscrypt-proxy
}
  1. Mit Konfigurationsmanagement-Tools
# Ansible-Beispiel
- name: DNS über HTTPS konfigurieren
  hosts: macos_clients
  tasks:
    - name: dnscrypt-proxy installieren
      homebrew:
        name: dnscrypt-proxy
        state: present

    - name: dnscrypt-proxy konfigurieren
      template:
        src: dnscrypt-proxy.toml.j2
        dest: /usr/local/etc/dnscrypt-proxy.toml

Zusätzliche Ressourcen

Wichtige Hinweise

  1. Systemkompatibilität

    • Systemversion prüfen
    • Hardwareanforderungen verifizieren
    • Softwarekompatibilität testen
    • Leistungsauswirkung bewerten
  2. Netzwerkauswirkung

    • Netzwerklatenz überwachen
    • Bandbreitennutzung bewerten
    • Failover-Optionen berücksichtigen
    • Routing-Einstellungen optimieren
  3. Sicherheitsüberlegungen

    • Konfigurationsdateien schützen
    • Zugriffsberechtigungen einschränken
    • Systemprotokolle überwachen
    • Regelmäßige Sicherheitsaudits
  4. Wartungsempfehlungen

    • Regelmäßige Software-Updates
    • Konfigurationen sichern
    • Systemstatus überwachen
    • Notfallpläne entwickeln

Nächste Schritte