Android-Tutorial: Google-IP-Adressen mit WireGuard über RethinkDNS tunneln

Ursprünglich veröffentlicht: https://www.kuketz-blog.de/android-tutorial-google-ip-adressen-mit-wireguard-ueber-rethinkdns-tunneln/

In Diskussionen wird häufig gefragt, wie man seine IP-Adresse vor Google verbergen kann. Eine mögliche Lösung ist die Nutzung eines VPN-Providers in Kombination mit einer angepassten WireGuard-Konfiguration und der Android-App RethinkDNS. Dabei wird ausschließlich der Google-Traffic über das VPN geleitet, sodass beispielsweise euer Android-Gerät gegenüber Google eine andere IP-Adresse verwendet, während der restliche Netzwerkverkehr unberührt bleibt. Diese Maßnahme ist jedoch nur dann sinnvoll, wenn keine Google-Dienste genutzt werden, bei denen bereits personenbezogene Daten hinterlegt sind. Falls Google beispielsweise Zugriff auf eure E-Mail-Adresse, Telefonnummer oder andere persönliche Informationen hat, kann das Unternehmen Rückschlüsse auf eure Identität ziehen – unabhängig von der…

Wenn ich die IP gegenüber Google verschleiere, ist es dann ebenso effektiv gegen Tracking als wenn ich die Verbindung ganz blocke?
Natürlich ist keine Verbindung zu Google immer besser…

Ich denke an meinen Junior dem das blocken / freigeben der Verbindungen in Rethink noch sehr schwer fällt. Er hat „momentan“ noch nicht die Geduld seine Spiele gemäß Rethink zu filtern.

Wäre dies also eine Möglichkeit für meinen Junior?

Guten Morgen,
Es geht um diese Anleitung: https://www.kuketz-blog.de/android-tutorial-google-ip-adressen-mit-wireguard-ueber-rethinkdns-tunneln/
ich habe die bei ProtonVPN erstellte WireGuard Konfiguration mit dem Script von Mike mit den Google IPs ergänzt, aber wenn ich diese bei RethinkDNS importiere bekomme ich kein Internet („Kein Internet mit Wireguard“).
Das Problem besteht sowohl auf GOS als auch auf meinem Tablet mit LineageOS.
Importiere ich die Original Konfiguration gibt es keine Probleme. Jemand eine Idee? Fehlt eine Einstellung bei Rethink?
Freue mich über Rückmeldungen.
Gruß Dirk
Ergänzungen: Ich habe mir die Konfigurationsdateien angeschaut. Der einzige Unterschied sind die allowed IPs. Sonst ist alles gleich.

Du hast vermutlich „Verbindungen ohne VPN blockieren“ in den Android-Einstellungen aktiv. Dann würde mit dem aktuellen Setup nur noch Google (über das VPN) erreichbar sein, daher die Meldung kein Internet.

Guten Abend,
ich kann das geschilderte Problem von @dirksche bestätigen. Die Option „Verbindungen ohne VPN blockieren“ ist in Android deaktiviert. Trotzdem lässt sich die Verbindung über RehtinkDNS nicht aufbauen. Ich verwende ebenfalls ProtonVPN.

Hat jemand weitere Ideen?

Achtet bitte darauf, das Profil unter dem Tab Fortgeschritten zu importieren bzw. den Fortgeschritten-WireGuard-Modus zu aktivieren. Nach dem Import tippt ihr auf die WireGuard-Konfiguration und aktiviert den Schieberegler Always-on.

Sollte es dann noch nicht funktionierten, startet RethinkDNS neu.

Auch ich habe dieses Setup versucht umzusetzen. Habe das gleiche Problem wie @ursus.cerritus und @dirksche.

EDIT: Ich habe soeben entdeckt warum es nicht geht. @ursus.cerritus und @dirksche schaut mal ob bei euch die Option „Never proxy DNS“ gesetzt ist. Wenn nicht, dann setzt diese Option mal und schaut ob es dann funktioniert. Zu finden im DNS Reiter fast ganz unten…

Bei mir geht es jetzt. @kuketzblog ich hoffe das die Option die richtige war und Du das auch so hast? Kurzes Feedback wäre cool.

2 „Gefällt mir“

Hallo zusammen,
wenn ich das Bash-Skript über das Terminal ausführe kommt bei mir folgende Meldung: Zeile 21: jq: Befehl nicht gefunden
Keine IP-Adressen gefunden.

Hi,
dann fehlt Dir das Paket: jq.
Einfach für deine Distri installieren

Bei mir läufts jetzt. Auch bevor ich die von dir erwähnte Einstellung aktiviert habe. Es braucht manchmal einfach etwas Zeit, bis die VPN Verbindung startet.
Mittlerweile hab ich ein VPNplus Abo und schütze 2 Geräte und ein Extra-Profil mit der Kombi.

Ich hab das Script von Mike angepasst, damit man das ganze Prozedere auch auf Android mit Termux durchlaufen lassen kann.
Man muss sowohl die Wireguard Konfigurationsdatei als auch das Script in die Termux Home Directory laden (ganz einfach erreichbar über den Dateimanager des Systems), noch einen Ordner namens tmp anlegen und ansonsten alles so machen wie im Tutorial beschrieben. Gegebenenfalls muss man noch das Programm jq runterladen. Das sagt einem Termux aber dann.
Hier das script:

#!/bin/bash

# Überprüfen, ob ein Parameter für die Konfigurationsdatei angegeben wurde
if [ "$#" -ne 1 ]; then
  echo "Usage: $0 /path/to/wireguard.conf"
  exit 1
fi

# WireGuard-Konfigurationsdatei aus dem ersten Parameter
WG_CONFIG="$1"
# TEMP_FILE="/tmp/google_ips.txt"
TEMP_FILE="/data/data/com.termux/files/home/tmp/google_ips.txt"
# Überprüfen, ob die angegebene Konfigurationsdatei existiert
if [ ! -f "$WG_CONFIG" ]; then
  echo "Die angegebene Konfigurationsdatei existiert nicht: $WG_CONFIG"
  exit 1
fi

# Lade die Google Services IP-Ranges (IPv4 und IPv6) und füge sie hinzu
curl -s https://www.gstatic.com/ipranges/goog.json | \
jq -r '.prefixes[] | select(.ipv4Prefix or .ipv6Prefix) | .ipv4Prefix, .ipv6Prefix' >> "$TEMP_FILE"

# Bereinige die temporäre Datei von doppelten IPs und fasse Subnetze zusammen
ALLOWED_IPS=$(sort -u "$TEMP_FILE" | grep -E '^([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(/[0-9]+)?|([0-9a-fA-F:]+(/[0-9]+)?))$' | \
awk '{print $1}' | sort -u | paste -sd, -)

# Überprüfen, ob ALLOWED_IPS nicht leer ist
if [ -n "$ALLOWED_IPS" ]; then
    # Ersetze die AllowedIPs in der WireGuard-Konfiguration
    sed -i.bak "/^AllowedIPs/c\AllowedIPs = $ALLOWED_IPS" "$WG_CONFIG"

    # Optional: Zeige die aktualisierte Konfiguration an
    cat "$WG_CONFIG"
else
    echo "Keine IP-Adressen gefunden."
fi

# Bereinige die temporäre Datei
rm "$TEMP_FILE"

Was ich gemacht habe, ist lediglich den Ort der temporären Datei in Zeile 12 auf Android bzw. Termux anzupassen.

.
Handelt es sich bei jq und folgende Programm?

jq ist ein leistungsfähiges Kommandozeilen-Tool zur Verarbeitung und Manipulation von JSON-Daten. Es bietet folgende Hauptfunktionen:

Eine recht detaillierte Erläuterung findest du hier

1 „Gefällt mir“

Hmm… im Titel steht „Android-Tutorial: Google-IP-Adressen mit WireGuard über RethinkDNS tunneln“

Gibt es auch eine Skript (google-wireguard-script.sh ), das unter Android ausgeführt werden kann?

Gibt es eine Möglichkeit, dieses geniale Skript für „alle“ BigTech Unternehmen zu erweitern? Also nicht nur für Google, sondern auch für Meta, Amazon,Apple und wie sie alle heißen.

Warum nicht der umgekehrte Weg? VPN für alles. Oder VPN für alles und nur ausgewählte datenschutzfreundliche Apps dürfen es umgehen?

2 „Gefällt mir“

@ralph In meinem obigen Beitrag habe ich genau das erklärt. Und ein abgewandeltes script angehängt.
Gutes gelingen.

1 „Gefällt mir“

Danke für die Rückmeldung!

Muss das Scrip google-wireguard-script.sh unter Linux als Admin ausgeführt werden?

Sitze jetzt gerade nicht vorm Rechner. Probiere es am besten mal aus. Du siehst direkt im Terminal, ob die IP’s abgerufen wurden. Oder schau in die veränderte config Datei, ob jetzt unter Allowed IPs ca. 50 verschiedene IPs stehen.

1 „Gefällt mir“

Hallo zusammen,
ich erhalte ebenfalls die Meldung: „Kein Internet mit Wireguard“.

Diesen Hinweis habe ich beachtet, was aber nichts ändert.

Diese Hinweise habe ich ebenfalls beachtet.

Damit funktioniert das Internet, kann mir aber irgendwie nicht vorstellen, dass das die richtige Lösung ist, oder doch?

Konnte noch jemand das Problem lösen?

Grüße :slight_smile:

Hallo an Alle,

ich bin hier gerade frisch im Forum und neu in der Thematik (angekommen).

Möchte/muss den Aurora Store benutzen.

Mir fehlt grundsätzlich das Wissen im Umgang mit dem Skript (das für Android modifizierte).

Die Hinweise habe ich so weit beachtet:

  • (Graphene OS)

  • Google Play Store/Dienste (mirrored) deaktiviert

  • Rethink in v05.05n installiert (nicht v05.05o), in FDroid Updates zu Rethink vorerst deaktiviert

  • Proton free installiert/angemeldet und WireGuard Zertifikat heruntergeladen und in Rethink installiert, auf “Fortgeschritten” gesetzt, “Always on”

  • Proton unter den VPN Einstellungen: „Verbindungen ohne VPN blockieren“ deaktiviert, “Durchgehend aktives VPN” aktiviert

  • Die Skriptzeilen in Termux eingefügt, ausgeführt (Enter) “[Process completed (code 1) - press Enter]” → Aber, in Rethink (Bild aus: RethinkDNS-Hack unter Android: Ausschließlich Google-Dienste über VPN leiten • Kuketz IT-Security Blog):

→nach dem Öffentlichen Schlüssel (Peer) sieht es bei mir anders aus:

Zulässige IPs

0.0.0.0/0, ::/0

Endpunkt

[IP-Adresse:Port] 

(konkrete IP:Port kann ich nachreichen)

->Also, sind die Google IPs, aus der im Skript angegebenen Range, nicht abgerufen und eingetragen worden.

Zurück auf der ersten Oberfläche der App ist alles deaktiviert (Proxy, DNS, Firewall, Protokolle, Apps)

Klicke ich in Rethink unten auf den Start-Button, erscheint die Meldung

Entweder fehlt die VPN-Berechtigung, oder eine andere Anwendung befindet sich…

Ist aber nur Proton-VPN („Verbindungen ohne VPN blockieren“ deaktiviert, “Durchgehend aktives VPN” aktiviert") aktiviert.

Ideen die mir so kommen:

Muss ich im Skript irgendwelche Pfade anpassen (echo Usage: $0 /path/to/wireguard.conf ODER $WG_CONFIG)? wireguard.conf kann ich über den Dateimanager nicht finden.

Termux anders ausführen, als root?

Hier ist die Rede von google-wireguard-script.sh, kann das jmd für mich einordnen? Ich habe nur die Skriptzeilen copy/paste in Termux eingefügt/ausgeführt.

Rethink scheint nur zu laufen, wenn Proton VPN deaktiviert ist (?) Rethink als VPN, statt Proton VPN, einstellen?

Also, wie ihr seht, es fehlt an grundsätzlichem Wissen hierzu, möchte aber auf die Funktion bezüglich Google nicht verzichten.

Ich würde mich sehr freuen an dieser Stelle Hilfe von Euch zu erhalten.

Danke im Voraus!

:pencil: [MOD]: Formatierung zwecks besserer Lesbarkeit angepasst