ich bin frisch auf iOS umgestiegen und möchte auch hier möglichst datensparsam agieren.
Die App AdGuard Pro wird hierbei immer wieder positiv hervorgehoben um systemweit Schutz vor Trackern und Werbung zu gewährleisten, läuft aber dauerhaft als VPN. Alternativ könnte ich auch einen DNS-Resolver wie dnsforge nutzen, der meiner Ansicht nach das selbe leistet. Meine Frage ist nun, welche Unterschiede es zwischen den beiden Optionen tatsächlich gibt und welche im Sinne des Datenschutzes zu bevorzugen ist.
Ich kenne AdGuard jetzt nicht direkt, aber grundsätzlich sehe ich beim Nutzen von z.B. dnsforge zwei Nachteile:
Direkt aufgerufene IP-Adressen müssen nicht vom DNS-Server aufgelöst werden und werden daher nicht blockiert.
Eine URL wird für das komplette System gesperrt, kann also nicht gezielt nur für eine Webseite gesperrt werden. Wenn man z.B. Google grundsätzlich sperren möchte, aber für “Notfälle” die App GMaps WV nutzen will, kann man nicht speziell hierfür ausnahmsweise Google entsperren.
Es gibt neben der Adguard-App auch noch ein Konfigurationsprofil namens Adguard DNS. Das ist vom Prinzip her dasselbe wie bei dnsforge - hätte also auch dieselben Nachteile wie von @sekret beschrieben. Ist trotzdem eine tolle Sache, dass man unter iOS mit einem schnell installierten Config-File Werbung (auch In-App-Werbung) und Tracker blocken kann. Freilich ohne Kontrolle über die Filter und selbst ausgewähltes Black- oder Whitelisting.
Ich habe eine Weile AdGuard Pro eingesetzt, bin jetzt aber bei einem DNS-Profil mit dnsforge gelandet.
Ich hatte irgendwie mit der AdGuard Lösung häufiger Verbindungsprobleme von Apps, weshalb ich AdGuard häufig wieder deaktiviert aber die Probleme nicht in der Tiefe analysiert habe.
Das DNS-Profil mit dnsforge läuft dagegen bei mir problemlos.
Die von @sekret erwähnte Beschränkung, dass keine App-Individuellen Reglen oder IP-Adress-Beschränkungen realisiert werden können haben beide Lösungen und in iOS gibt es auch keine Möglichkeit dieses unzusetzen. Es ist eher die 80% Lösung mit geringem 20% Aufwand.
Eine Protokollierung der Netzwerkzugriffe einer App kann man sich in iOS wenigstens unter
einschalten und einsehen. Hier werden auch direkte IP-Zugriffe protokolliert.
Leider muss man auch den Aufwand betreiben in den App-Datenschutzbericht hineinzuschauen um die Aktivitäten seiner Apps zu kontrollieren. Ich habe gerade bei meinem E-Mail-Client emClient hineingeschaut und dieser baut tatsächlich direkte IP-Verbindungen auf, unter anderem mit 1.1.1.1 dem DNS-Dienst von APNIC und Cloudflare, umgeht also meinen DNS-basierenden Kommunikationsfilter .
Bei mir umgekehrt: Wegen Problemen mit diesem Profil bin ich wieder zurück auf AdGuard DNS (nicht die App und auch nicht das Pro-Abo). Magst Du den Link auf das iOS-Profil von dnsforge teilen? Es gibt dort mehrere zur Auswahl (nicht nur blocking/non-blocking).
Ich habe dieses Profil getestet, bisher ohne Probleme auf einem iPad iPadOS 26.1.
Werbung wird zuverlässig herausgefiltert, installiert nach der Anleitung von adminforge.de.
Schöner wäre es natürlich, das Profil nur über mobile Daten verwenden zu können, aber das ist unter iOS leider nicht möglich. Oder wie handhabt ihr das?
Ich habe mir das WLAN-Profile “Normal” mit Werbblocker von dnsforge über den Apple Configurator angepasst. So sieht mein Ergebnis aus, welches man sich als dnsforge-wlan-config.mobileconfig Datei abspeichern und dann auf ein Apple Gerät importieren kann.
<?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>TLS</string>
<key>ServerAddresses</key>
<array>
<string>2a01:4f8:151:34aa::198</string>
<string>2a01:4f8:141:316d::117</string>
<string>176.9.93.198</string>
<string>176.9.1.117</string>
</array>
<key>ServerName</key>
<string>dnsforge.de</string>
</dict>
<key>OnDemandRules</key>
<array>
<dict>
<key>Action</key>
<string>Disconnect</string>
<key>SSIDMatch</key>
<array>
<string>###INSERTWLANSSID###</string>
<string>###INSERTWLANSSID###</string>
<string>###INSERTWLANSSID###</string>
</array>
</dict>
<dict>
<key>Action</key>
<string>Connect</string>
<key>InterfaceTypeMatch</key>
<string>WiFi</string>
</dict>
<dict>
<key>Action</key>
<string>Connect</string>
<key>InterfaceTypeMatch</key>
<string>Cellular</string>
</dict>
<dict>
<key>Action</key>
<string>Disconnect</string>
</dict>
</array>
<key>PayloadDescription</key>
<string>Configures device to use dnsforge.de DNS over TLS Encrypted DNS over TLS</string>
<key>PayloadDisplayName</key>
<string>dnsforge.de DNS over TLS DNS over TLS</string>
<key>PayloadIdentifier</key>
<string>com.apple.dnsSettings.managed.fd972268-6206-4db0-bbba-3144774602d4</string>
<key>PayloadType</key>
<string>com.apple.dnsSettings.managed</string>
<key>PayloadUUID</key>
<string>355cd572-9b1b-46aa-a145-04b355cbb236</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>ProhibitDisablement</key>
<false/>
</dict>
</array>
<key>PayloadDescription</key>
<string>Adds different encrypted DNS configurations to Big Sur (or newer) and iOS 14 (or newer) based systems</string>
<key>PayloadDisplayName</key>
<string>Encrypted DNS (DoH, DoT)</string>
<key>PayloadIdentifier</key>
<string>com.notjakob.apple-dns.08477fee-60bb-4b85-801f-22a01ef998ee</string>
<key>PayloadRemovalDisallowed</key>
<false/>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>14d922c5-7d9e-4957-8cb3-658fed6d5f79</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>
Vielen Dank ich habe mir das in das „clean“ Profil eingebaut, und funtioniert für mein Home WLAN 1a.
Danke für den Gedankenanstoß.
Bin seit ca. 15 Jahren mal wieder Im iOS Universum und muss mal schauen was so geht.
```xml
<key>OnDemandRules</key>
<array>
<!-- Regel 1: Auf MeineSSID DNS ignorieren -->
<dict>
<key>Action</key>
<string>Ignore</string>
<key>SSIDMatch</key>
<array>
<string>MeineSSID</string>
</array>
</dict>
<!-- Regel 2: Auf allen anderen WLANs verbinden -->
<dict>
<key>Action</key>
<string>Connect</string>
<key>InterfaceTypeMatch</key>
<string>WiFi</string>
</dict>
<!-- Regel 3: Auf Cellular verbinden -->
<dict>
<key>Action</key>
<string>Connect</string>
<key>InterfaceTypeMatch</key>
<string>Cellular</string>
</dict>
<!-- Regel 4: Standardregel -->
<dict>
<key>Action</key>
<string>Disconnect</string>
</dict>
</array>
Ich empfehle immer die Kombination von Adguard Pro und Adguard Home (was Hardware wie einen Raspi voraussetzt), aber man kann auch Adguard Pro nutzen und den zusätzlich über einen spezifischen öffentlichen DNS Server wie dnsforge schleifen.
Ich habe den Support von eM Client kontaktiert und das Engineering hat sich das Verhalten angeschaut und mit der nächsten App Version beseitigt. Es ist gut, ab und zu einmal durch die App-Datenschutzberichte seiner Apps zu schauen.