|
|
(17 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
| '''topic''' - Kurzbeschreibung | | '''IPv6 Privacy Extensions''' - RFC 4941 |
|
| |
|
| == Privacy Extensions nach RFC 4941 == | | == Beschreibung == |
| ; Erzeugung des Interface-Identifiers
| | ; Privacy Extensions nach RFC 4941 |
| | Erzeugung des Interface-Identifiers |
| * Die Erzeugung des Interface-Identifiers aus der global eindeutigen MAC-Adresse ermöglicht die Nachverfolgung von Benutzern | | * Die Erzeugung des Interface-Identifiers aus der global eindeutigen MAC-Adresse ermöglicht die Nachverfolgung von Benutzern |
|
| |
|
Zeile 60: |
Zeile 61: |
| * man muss es aber per Hand aktivieren | | * man muss es aber per Hand aktivieren |
|
| |
|
| ==== Windows ===
| | === Windows === |
| ; Ohne dass der Nutzer eingreifen muss
| | [[IPv6/Privacy Extension/Windows]] |
| Richten die Desktop-Versionen von Windows per Stateless Autoconfiguration bereits temporäre IPv6-Adressen ein.
| |
| * Wie im RFC vorgesehen wechselt Windows diese Adressen in Intervallen
| |
| * die sich wie auch andere IPv6-Parameter über das Kommando netsh einstellen lassen
| |
|
| |
|
| ; Wechselnde Adressen auf Servern wenig sinnvoll
| | === Linux === |
| Daher hat Microsoft die Privacy Extensions auf Windows-Server-Versionen nicht eingeschaltet
| | [[IPv6/Privacy Extension/Linux]] |
| * Anders als andere erzeugen Windows-Rechner ihre statische IPv6-Adresse auch nicht aus der
| |
| Hardware-Adresse der jeweiligen Schnittstelle.
| |
| * Stattdessen würfelt Windows die Adresse einmal, meist bei der Installation, aus
| |
|
| |
|
| ; Abschalten
| | === Android === |
| Dieses Verhalten lässt sich als Administrator ändern
| | [[IPv6/Privacy Extension/Android]] |
| * Mit folgendem Befehl nutzt Windows für seine statische, globale IPv6-Adresse nun die MAC der Netzwerkschnittstelle
| |
| netsh interface ipv6 set global randomizeidentifiers=disabled
| |
|
| |
|
| ; Nachschauen
| | === Mac OS X === |
| Die aktuelle Einstellung zeigt das folgende Kommando in der Ausgabezeile an
| | [[IPv6/Privacy Extension/Mac OS X]] |
| netsh interface ipv6 show global
| |
|
| |
|
| ; Aktuelle IPv6-Adressen aller Netzwerkkarten
| | === iPhone und iPad (IOS) === |
| | [[IPv6/Privacy Extension/IOS]] |
|
| |
|
| netsh interface ipv6 show addresses
| | <noinclude> |
|
| |
|
| ; Vorgaben für die Privacy Extensions ausgeben
| | == Anhang == |
| | | === Siehe auch === |
| netsh interface ipv6 show privacy
| | {{Special:PrefixIndex/{{BASEPAGENAME}}}} |
| Der aktive Status wird abgefragt...
| | === RFC === |
| Parameter für temporäre Adressen
| | {| class="wikitable sortable options big" |
| ------------------------------------------------
| | |- |
| Temporäre Adresse verwenden : enabled
| | ! RFC !! Titel |
| Versuch, doppelte Adr. zu entdecken : 5
| | |- |
| Maximale Gültigkeitsdauer : 7d
| | | [https://www.rfc-editor.org/info/rfc4941 4941] || Privacy Extensions for Stateless Address Autoconfiguration in IPv6 |
| Maximale bevorzugte Gültigkeitsdauer: 1d
| | |} |
| Regenerationszeit : 5s
| |
| Maximale Verzögerungszeit : 10m
| |
| Verzögerungszeit : 0s
| |
| | |
| [[File:ipv6Adressierung20.png|600px]]
| |
| | |
| Windows erzeugt seine feste IPv6-Adresse nicht über die MAC, die Privacy Extensions hat Microsoft ab Werk aktiviert.
| |
| | |
| ; Die Ausgabe bestätigt, dass die Privacy Extensions (Temporäre Adresse verwenden)
| |
| aktiv sind.
| |
| | |
| ; Maximale bevorzugte Gültigkeitsdauer
| |
| * legt fest, nach welcher Zeit (hier in Tagen) der Rechner eine neue temporäre Adresse erzeugt und für ausgehende Pakete auch einsetzt.
| |
| | |
| ; Maximale Gültigkeitsdauer
| |
| * Eingehende Verbindungen akzeptiert der Rechner deutlich länger auf einer temporären Adresse, was etwa für Peer-to-Peer-Anwendungen nützlich sein kann.
| |
| | |
| ; Temporären IPv6-Adressen vollständig abschalten
| |
| netsh interface ipv6 set privacy state=disabled
| |
| | |
| ; Gültigkeitsdauer setzen
| |
| netsh interface ipv6 set privacy maxpreferredlifetime=12h
| |
| | |
| * Schlüssel maxpreferredlifetime und maxvalidlifetime
| |
| * Zeitangaben in Tagen (d), Stunden (h), Minuten (m) und Sekunden (s)
| |
| | |
| ==== Linux ==== | |
| ; Alle großen Linux-Distributionen aktivieren IPv6, die Privacy Extensions jedoch nicht
| |
| * Das bemerkt man schnell an den aus der Hardware-Adresse abgeleiteten Adressen, die im hinteren Teil die Bytes ff und fe enthalten.
| |
| | |
| ; Die Privacy Extensions lassen sich über das Sysctl-System dauerhaft einschalten
| |
| * Am einfachsten gelingt das, wenn man für jede Netzwerkschnittstelle im Computer eine Zeile in die Datei /etc/sysctl.conf nachträgt.
| |
| net.ipv6.conf.IF.use_tempaddr = 2
| |
| | |
| Den Platzhalter IF müssen Sie dabei durch die Schnittstellenbezeichnung ersetzen, also etwa eth0 für die erste Ethernet-Karte oder wlan0 für das WLAN-Interface.
| |
| | |
| ; Testweise können Sysctl-Werte auch über die Shell eingeben werden
| |
| sysctl net.ipv6.conf.wlan0.use_tempaddr=2
| |
| | |
| * Damit Linux die Netzwerkschnittstelle mit einer temporären IPv6-Adresse versorgt, müssen Sie die Schnittstelle einmal aus- und wieder einschalten (etwa über den Network Manager).
| |
| * Anschließend zeigt ifconfig an der Schnittstelle eine weitere IPv6-Adresse, deren hinterer Teil
| |
| nicht mehr aus der Hardware-Adresse abgeleitet wurde.
| |
| * Dass es sich tatsächlich um eine temporäre Adresse handelt, zeigt der Befehl ip -6 addr show
| |
| über den Bezeichner "temporary" in seinen Ausgaben an.
| |
| * Bei Ubuntu muss zusätzlich der Wert net.ipv6.conf.default.use_tempaddr=2 in der Datei
| |
| /etc/sysctl.conf setzen.
| |
| | |
| ; Vorgaben ändern
| |
| | |
| ; Vorgaben zum Wechseln der temporären IPv6-Adresse lassen sich via sysctl
| |
| anpassen
| |
| * Die Sysctl-Schlüssel
| |
|
| |
|
| net.ipv6.conf.IF.temp_valid_lft
| | === Links === |
| net.ipv6.conf.IF.temp_prefered_lft
| | ==== Projekt ==== |
| | | ==== Weblinks ==== |
| * setzen die maximale Zeit in Sekunden, in der Linux die Adresse für eingehende und
| |
| ausgehende Anfragen nutzt.
| |
| * Der letzte Schlüssel hat typischerweise den Wert 86400 (24 Stunden), eingehende Pakete
| |
| akzeptiert Linux sieben Tage an dieser Adresse.
| |
| * Den Platzhalter IF müssen Sie dabei wie oben durch den Schnittstellennamen ersetzen.
| |
| | |
| ==== Android ====
| |
| ; Googles Smartphone-Betriebssystem setzt auf Linux auf
| |
| * das zufällige und wechselnde IPv6-Adressen erzeugen kann
| |
| * Andererseits hat Google die dafür nötigen Vorgaben nicht gesetzt, sodass bislang jede Android-
| |
| Version ohne die Privatsphäre schützenden IPv6-Adressen auskommen muss.
| |
| * Auch lassen sie sich nicht einfach einschalten, denn die Mobilfunk-Provider und Handy-Hersteller
| |
| vernageln den dafür nötigen Root-Zugang.
| |
| * Zwei Befehle genügen und ein gerootetes Android surft über die wechselnden und nicht aus der
| |
| Hardware abgeleitetden IPv6-Adressen.
| |
| * Wie auch auf iPhones bleibt nur der Weg über das nachträgliche
| |
| Freischalten des Root-Zugangs oder über die Installation von
| |
| Custom-ROMs:
| |
| * Mit dem für solche Verwaltungsaufgaben nötigen Root-Benutzer
| |
| lassen sich dann wieder die Sysctl-Werte setzen, die die
| |
| Privacy Extensions für IPv6 aktivieren.
| |
| * Steht auf dem Telefon das Kommando sysctl bereit, reichen die Befehle
| |
| | |
| su
| |
| sysctl -w net.ipv6.conf.default.use_tempaddr=2
| |
| sysctl -w net.ipv6.conf.all.use_tempaddr=2
| |
| | |
| * Nach einem Neustart vergisst Android diese Einstellungen jedoch wieder.
| |
| * Man kann die beiden Befehle allerdings in eine Datei namens /data/local/userinit.sh schreiben.
| |
| * Existiert diese Datei, führt Cyanogenmod die darin aufgelisteten Befehle beim Systemstart aus.
| |
| | |
| ==== Mac OS X ====
| |
| ; Auch Apples Betriebssystem Mac OS X über die Privacy Extensions ermittelte IPv6-
| |
| ; Adressen erzeugen und einsetzen
| |
| * Allerdings hat Apple dafür keinen Schalter vorgesehen.
| |
| * Das Programm IPv6 Anonymizer von c't
| |
| ** zeigt den Status der Privacy Extensions,
| |
| ** schaltet sie an oder aus und
| |
| ** sorgt dafür, dass die Funktion auch
| |
| beim Neustart zur Verfügung steht.
| |
| | |
| ; Kommandozeile
| |
| * Die Privacy Extensions lassen sich im Terminal (im Dienstprogramme-Ordner) mit einem Befehl aktivieren
| |
| | |
| sudo sysctl -w net.inet6.ip6.use_tempaddr=1
| |
| | |
| * Damit das klappt, müssen Sie mit einem Benutzer angemeldet sein, der den Mac verwalten darf.
| |
| * Leider verschwindet die Einstellung nach einem Neustart.
| |
| | |
| ==== iPhone und iPad (IOS) ====
| |
| ; Noch schlechter als auf dem Apple-Desktop sah es bis vor kurzem unter den Mobil-
| |
| ; Betriebssystemen für iPhones und iPads aus
| |
| * Bis zur Version 4.3 waren auch dort die Privacy Extensions abgeschaltet. Erst das Update aktiviert die
| |
| Erweiterung.
| |
| * Im Unterschied zu Mac OS X steht aber auf den Mobilbetriebssystemen für iPhone und iPad kein vom
| |
| Hersteller vorgesehener Weg offen, die Privacy Extensions zu aktivieren oder abzuschalten.
| |
| * Will man auf Geräten mit der IOS-Version kleiner als 4.3 die Privacy Extensions einschalten, hat man
| |
| nur dann eine Chance, wenn man einen Administrator-Zugang zum Betriebssystem hat (Jailbreak): In
| |
| diesem Fall reicht der Aufruf von
| |
| | |
| sudo sysctl -w net.inet6.ip6.use_tempaddr=1
| |
| | |
| * respektive der Eintrag in die Datei /etc/sysctl.conf:
| |
| net.inet6.ip6.use_tempaddr=1
| |
| | |
| * Starten Sie dazu im Terminal einen Editor mit root-Rechten und fügen Sie die Zeile am Ende der Datei
| |
| an.
| |
| sudo pico /etc/sysctl.conf
| |
| | |
| * Nach einem Neustart der WLAN-Schnittstelle respektive einem Neustart des Geräts sollte die
| |
| Webseite http://ct.de/ip die zweite, über die Privacy Extensions erzeugte IPv6-Adresse anzeigen.
| |
| | |
| <noinclude>
| |
| === Anhang ===
| |
| ==== Siehe auch ====
| |
| {{Special:PrefixIndex/{{BASEPAGENAME}}}}
| |
| ===== Dokumentation =====
| |
| ===== Links =====
| |
| ====== Projekt ======
| |
| ====== Weblinks ======
| |
|
| |
|
| [[Kategorie:IPv6/Adresse]] | | [[Kategorie:IPv6/Adresse]] |
|
| |
|
| </noinclude> | | </noinclude> |
IPv6 Privacy Extensions - RFC 4941
Beschreibung
- Privacy Extensions nach RFC 4941
Erzeugung des Interface-Identifiers
- Die Erzeugung des Interface-Identifiers aus der global eindeutigen MAC-Adresse ermöglicht die Nachverfolgung von Benutzern
- Privacy-Extensions (PEX, RFC 4941)
- hebt die permanente Kopplung der Benutzeridentität an die IPv6-Adressen auf
- Zufällig generiert und regelmäßig gewechselt
- Indem der Interface-Identifier zufällig generiert wird und regelmäßig wechselt, soll ein Teil der Anonymität von IPv4 wiederhergestellt werden
- Täglich wechselndes Präfix wünschenswert
- Im Privatbereich lässt das Präfix allein recht sicher auf einen Nutzer schließen
- Daher ist aus Datenschutzgründen ein vom Provider dynamisch zugewiesenes Präfix wünschenswert
- in Verbindung mit den Privacy Extensions
- z. B. täglich wechselnd
- Whois-Datenbank
- Statische Adresszuteilung erfordern meist ein Eintrag in der öffentlichen Whois-Datenbank
- In Deutschland hat der Deutsche IPv6-Rat Datenschutzleitlinien formuliert, die auch eine dynamische Zuweisung von IPv6-Präfixen vorsehen
Stateless Address Autoconfiguration (SLAAC)
Nutzt auf einigen Betriebssystemen per Vorgabe die Hardware-Adresse der Netzwerkschnittstelle
- Solche Adressen sind im Internet leicht wiederzuerkennen
- Abhilfe schaffen die Privacy Extensions
- die zusätzliche, über Zufallszahlen generierte und wechselnde IPv6-Adressen erzeugen
- Stateless Address Autoconfiguration
- schiebt in der Mitte der nur 48 Bit langen MAC-Adresse zusätzlich die Bytes ff:fe ein
- erzeugt daraus den Local Identifier, also die hinteren 64 Bit einer IPv6-Adresse
- Die ersten 64 Bit gehören dem Netzwerk-Präfix, das der IPv6-Router im Netzwerk bekannt gibt und das der Rechner in die globale IPv6-Adresse übernimmt.
Betriebsysteme
- Linux
leiten ohne Eingriff ihre globale IPv6-Adresse aus der Hardware ab
damit offenbaren sie Informationen über den Benutzer
- Windows
erzeugt immer eine temporäre IPv6-Adresse
die dem Nutzer mehr Privatheit verschafft
- Den IPv6-Entwicklern fiel schnell auf dass dieses Verfahren die Privatsphäre von Rechner und Nutzer gefährdet
- Solche statischen IPv6-Adressen wirken wie eine eindeutige Hardware-ID, die der Rechner bei jedem Kontakt zu einem IPv6-tauglichen Server überträgt.
- Brisant ist das bei Geräten wie Tablets oder Smartphones, denn sie werden in der Regel nur von einer Person genutzt.
- Die für jeden Serverbetreiber und Netzbeobachter zugängliche MAC-Adresse erlaubt es damit, diese Person wiederzuerkennen.
- Privacy Extensions for Stateless Address Autoconfiguration in IPv6
- Daher definierten sie nachträglich das Verfahren "Privacy Extensions for Stateless Address Autoconfiguration in IPv6" (RFC 4941)
- mit dem sich zusätzlich zu diesen statischen Adressen temporäre erzeugen lassen
- die der Rechner für seine Anfragen ins IPv6-Internet einsetzt
- Der Host Identifier dieser Adressen wird über Zufallszahlen ermittelt
- Allerdings setzen längst nicht alle aktuellen Betriebssysteme diese Erweiterung ab Werk ein
- Derzeit hat einzig Windows die Privacy Extensions eingeschaltet
- Andere wie Mac OS und Linux beherrschen das Verfahren
- man muss es aber per Hand aktivieren
Windows
IPv6/Privacy Extension/Windows
Linux
IPv6/Privacy Extension/Linux
Android
IPv6/Privacy Extension/Android
Mac OS X
IPv6/Privacy Extension/Mac OS X
iPhone und iPad (IOS)
IPv6/Privacy Extension/IOS
Anhang
Siehe auch
RFC
RFC |
Titel
|
4941 |
Privacy Extensions for Stateless Address Autoconfiguration in IPv6
|
Links
Projekt
Weblinks