Die Koalition der Willigen (Die Provider Telekom, Vodafone/Arcor, Alice, O2 und Kabel Deutschland) wird in Deutschland langsam aktiv. Nachdem die Einwilligung von der Leyens Pläne umzusetzen von allen großen Providern voreilig verkündet wurde, macht sich Vodafone als erster auf die Zensur umzusetzen.

Im UMTS-Netz von Vodafone werden nach Informationen von zdnet seit Juli 2009 DNS-Anfragen auf Port 53 zwangsweise auf die eigenen DNS-Server umgeleitet, so kann der Provider garantieren dass die eigenen DNS-Server nicht umgangen werden können, selbst wenn Anwender alternative DNS-Server einstellen. Es ist nur eine Frage der Zeit, bis dieser Feldtest auf die DSL-Anschlüsse des Anbieters ausgeweitet wird. Netzneutralität ade… Hallo Zensurstaat!

Wer nun meint, dass Pädophilen somit tatsächlich der Zugang zu einschlägig bekannten Domains unmöglich gemacht wird, der irrt. Es macht nur ein bisschen mehr Arbeit… Löschen statt Sperren wäre immer noch der einzig richtige Ansatz, aber das würde ja Geld kosten und den Bestrebungen unserer Regierung, Deutschland zu einem Überwachungsstaat auszubauen, nicht so gut ins Spiel passen…

Zwar kann man in den Netzwerkeinstellungen aller gängigen Betriebssysteme die DNS-Einstellungen schnell ändern, doch den Port – über den die DNS-Anfragen laufen sollen – zu wechseln, ist meist nicht möglich. Versucht man dies etwa mit Ubuntu und dem NetworkManager, so weigert sich der NM die Einstellungen zu übernehmen.

DNS-Einstellungen des NetworkManagers
DNS-Einstellungen des NetworkManagers

Um die Zensurmaßnahme der Frau von der Leyen zu umgehen ist jedoch nur ein eigener DNS-Server nötig, denn bei beispielsweise bind9 ist es völlig problemlos möglich höhere DNS-Server über andere Ports als Port 53 abzurufen. Der Artikel auf zdnet geht ausführlich auf Windows als Betriebssystem ein und streif Linux nur kurz, ich ziehe das Pferd mal von der Ubuntu oder Debian Seite auf.

Installation von bind9

Die Installation kann auf Eurem Internet-Router oder auch auf Eurem Desktop erfolgen, als DNS-Server bietet sich bind9 an:sudo apt-get install bind9. Nach der Installation des Paketes, könnt Ihr an die die Konfiguration von bind9 gehen. Ihr müsst nur die Konfigurationsdatei /etc/bind/named.conf.options bearbeiten, alles andere ist eigentlich schon passend vorkonfiguriert.

$ sudo nano /etc/bind/named.conf.options

Dort können nun die vom eigenen DNS-Server zu nutzenden nicht zensierenden DNS-Server der German Privacy Foundation e.V., des FoeBuD e.V. oder des Chaos Computer Club e.V. eingetragen werden. Eine Liste mit unzensierten Servern findet sich auf den Seite der Privacy Foundation e.V. oder auf wikileaks.org. Die Einträge müssen letztendlich so ähnlich aussehen.

options {
[...]
        forward only;
        forwarders {
                87.118.100.175 port 110;
                62.141.58.13 port 110;
                87.118.104.203 port 110;
        };
[...]
};

Natürlich könnt Ihr einen Server Eurer Wahl verwenden. Die Portangabe ist bislang nur im UMTS-Netz von Vodafone nötig. Wer verhindern möchte, dass der DNS-Server von anderen Rechnern im lokalen Netzwerk angesprochen werden kann, der sollte noch die allow-query Option setzen.

options {
[...]
        allow-query { localhost; };
[...]
};

Dadurch ist bind9 vollständig eingerichtet, ein Neustart von bind9 mit sudo /etc/init.d/bind9 restart liest die neue Konfiguration ein, so dass die gerade getroffenen Einstellungen aktiv werden.

Eigenen DNS-Server im System verankern

Nun muss nur noch verhindert werden, dass das System die vom Internetprovider vermittelten DNS-Server verwendet, sondern brav den eigenen DNS-Server benutzt.

Bei DSL und pppoeconf

Solltet Ihr einen eigenen Rechner als Router benutzen, der via pppoeconfig die DSL-Verbindung aufbaut, oder Euren Desktop-Rechner direkt an das DSL-Modem angeschlossen haben und ebenfalls pppoeconf nutzen, so würde ich die zu nutzenden DNS-Server über resolvconf bestimmen. Dazu installiert Ihr das benötigte Paket…

$ sudo apt-get install resolvconf

…und bearbeitet die Datei /etc/network/interfaces.

$ sudo nano /etc/network/interfaces

Hier tragt Ihr die IP des eigenen DNS-Servers ein über die Option „dns-nameservers“ ein. Sollte der Einwahlrechner identisch mit dem DNS-Server sein, so reicht der Eintrag der IP des localhosts.

[...]
auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth1 up # line maintained by pppoeconf
provider dsl-provider
dns-nameservers 127.0.0.1
[...]

Nach einem Neustart der Netzwerkeinstellungen über $ sudo /etc/init.d/networking restart sollten die Einstellungen korrekt sein. In der Datei /etc/resolv.conf wird der zu benutzende Nameserver stehen.

$ grep nameserver  /etc/resolv.conf
nameserver 127.0.0.1

Die DNS-Server Eures DSL-Anbieters dürfen hier nicht mehr gelistet werden.

Mit dem NetworkManager

Sollte man den NetworkManager zum Verbindungsaufbau benutzen, so würde ich persönlich nicht die /etc/network/interfaces anpassen. Klickt ihr mit der rechten Maustaste auf das Icon des NetworkManagers im Panel, so seid Ihr in der Lage Eure Netzwerkeinstellungen zu konfigurieren. Dort könnt ihr auch die zu benutzenden DNS-Server einstellen. Wieder tragt ihr die IP eures DNS-Servers ein.

Wird der eigene DNS-Server auch benutzt?

Jetzt solltet Ihr noch überprüfen, ob der eigene Nameserver auch wirklich benutzt wird. Mittels dig könnt ihr die DNS-Einträge einer Domain bestimmen. Ihr bekommt auch gesagt von welchem DNS-Server diese stammen. In meinem Fall läuft der Nameserver auf dem eigenen Rechner, somit kommt die Antwort vom localhost.

$ dig linuxundich.de
[...]
;; Query time: 4 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon Sep 28 13:19:53 2009
;; MSG SIZE  rcvd: 168
Vorheriger ArtikelPiratenpartei in Karlsruhe und die Bundestagswahl 2009
Nächster ArtikelUbuntu Netbook Remix und Canonical Moblin 2.0
Hallo, ich bin Christoph - Linux-User, Blogger und pragmatischer Fan freier Software. Wie ihr ohne Zweifel bemerkt haben solltet, schreibe ich hier über Linux im Allgemeinen, Ubuntu im Speziellen sowie Android und andere Internet-Themen. Wenn du Freude an meinen Artikel gefunden haben solltest, dann kannst du mir über Facebook, Twitter oder natürlich dem Blog folgen.

74 Kommentare

  1. Natürlich weiß ich, um welche Seiten es sich handelt und ich finde auch, dass Löschen besser ist als Sperren, nur ist beides meiner Meinung nach Zensur, aber eben eine Zensur, die unter Güterabwägung geschieht und somit gerechtfertigt ist.

    Sperren = Zensur, Löschen = Zensur. Somit ist es sehr komisch, wenn Leute nur unter Sperren eine Zensur verstehen.

  2. Barristan, es geht darum dass mit diesen Sperren eine Infrastruktur geschaffen wird, die Abseits der Jurisdiktion von der Exekutive betrieben wird und die noch dazu letztendlich ihr eigentliches Ziel völlig verfehlt.

  3. Das hat doch nichts damit zu tun, wie man den Begriff Zensur definiert.

    Wenn jetzt also das BKA alleine über die Löschung entscheiden würde, wäre das auch Zensur?

    Oder wenn das BKA sich mit den Providern in Verbindung setzt und diese es dann Löschen, wäre das dann Zensur?

    Wäre es Zensur, wenn Richter über die Sperren entschieden?

    Ich weiß nur nicht so genau, wie du und auch viele andere Zensur definieren. Für mich scheint die Definition nicht ganz schlüssig zu sein.

    Die Frage ist halt, ob es überhaupt Zensur ist, wenn man den Zugriff auf etwas verhindert bzw. erschwert (es heißt ja Zugangserschwerungsgesetz), was eh illegal ist.

    Manchmal glaube ich, dass viele im Netz zu viel Star Wars gesehen haben und hinter Schäuble den Dunklen Lord der Sith vermuten.

  4. Guter Artikel Christoph, herzlichen Dank, hab ich mir gleich n bookmark gesetzt. Die Rüstungsspirale beginnt ja schneller als ich es befürchtet habe. In einer ML gabs dazu schon mächtige Disskusionen, dass es eben immer so weiter gehn wird und immer weniger Leute die Möglichkeit haben werden sich gegen die Gängelei zu wehren. Vielleicht hilft aber dein Artikel doch ein paar Leuten mehr dazu. Es wird immer deutlicher, dass es bei offenen Systemen wie Linux eben nicht nur um Spielzeuge für Freaks geht sondern eben auch um Werkzeuge zum Schutz von Bürgerrechten. Klingt jetzt vielleicht hochgegriffen ist aber so.
    Das Problem IMHO ist, daß es eben immer wieder Teilerfolge der Sperrbefürworter sind und sie somit ihrem Ziel immer ein Stück näher rücken.
    Und so kann ich mir deine Lösung eben auf einem PC daheim noch vorstellen, aber am Laptop, auf Arbeit, an diversen mobilen Devices, an fremden Zugängen wirds schon schwieriger und so findet die mögliche Zensur letztlich vielleicht nicht 100% statt aber die Löcher schließen sich.

    Das ist Diktatur.

    @Barristan abgesehn, daß dein Einwand das Thema hier leicht verfehlt, ist der Unterschied eben, kontrolliertes nachvollziehbares einklagbares Löschen von gesetzeswiedrigen,strafbaren Inhalten ist eben was anderes als Sperrmaßnahmen die die technische Möglichkeiten zum unkontrollierten Sperren/zensieren schaffen.
    Gruß DxU

  5. Hallo Chrissss,
    vielen Dank für den super Artikel. Habe es ausprobiert und alles läuft. Dig ergibt, dass mein lokaler DNS-Server abgefragt wird. Wie kann ich jetzt aber feststellen, ob auch die alternativen Server über Port 110 genutzt werden?

  6. Kann man mit dieser Methode auch seinen DSL Router weiter nutzen (per dhcp mit dem PC verbunden) oder muss man es als Modem nutzen und sich per pppoe einwählen um davon profitieren zu können?

  7. Aha, ich dachte, da sich die fritzbox selbst einwählt und bei mir als nameserver die fritzbox angezeigt wird, das im router selbst die nameserver von der Telekom verwendet werden.
    Dem ist aber nicht so?

  8. Ich habe jetzt rausgefunden wie ich den DNS direkt in der Fritzbox ändern kann. Und zwar muss man dazu die Einstellungen sichern, damit hat man dann eine Datei auf der Festplatte die man bearbeiten kann
    Dort ersetzt man einfach

    overwrite_dns1 = 0.0.0.0;
    overwrite_dns2 = 0.0.0.0;

    mit den IP’s seines DNS seiner Wahl
    Dann muss man aber außerdem noch

    NoChecks=yes

    vor die Zeile

    **** CFGFILE:ar7.cfg

    einfügen da die Fritzbox sonst wegen falscher checksum meckert
    Dann einfach in der Fritzbox Wiederherstellen auswählen

    Damit sollte es doch dann eigentlich auch möglich sein das bind9 von seinem PC zu nutzen indem man in overwrite_dns einfach die eigene IP eintippt, z.b. 192.168.21
    Oder irre ich mich in dem Punkt?

  9. Aber dhclient überschreibt bei jedem Start die resolv.conf und trägt wieder bei nameserver die ip des routers ein
    Von daher finde ich es sinnvoller, direkt in der Fritzbox die DNS-IP’s zu ändern
    Vielleicht reden wir auch einfach nur an einander vorbei 😉

  10. > Aber dhclient überschreibt bei jedem Start die resolv.conf und trägt wieder bei nameserver die ip des routers ein…

    Wenn du das richtig machst, dann passiert das nicht. Du kannst wie beschrieben im NetworkManager die DNS-Server separat festlegen, alternativ über resolvconf und die /etc/network/interfaces.

    > Von daher finde ich es sinnvoller, direkt in der Fritzbox die DNS-IP’s zu ändern Vielleicht reden wir auch einfach nur an einander vorbei 😉

    Ich denke ja. In dem Beitrag geht es nicht nur darum andere DNS-Server zu verwenden. Dafür bräuchte es den Aufwand nicht. Es geht darum dass ISPs Port 53 auf ihre eigenen Server umleiten. D.h. selbst WENN du einen anderen DNS-Server bei dir im Router oder sonstwo einträgst, letztendlich landest du dennoch beim DNS-Server des ISPs. Daher eben der Umweg über einen anderen Port.

  11. Nennt mich paranoid, aber das setzt vorraus, dass ich dem Serverbetreiber insoweit vertraue, dass ich ihm bereitwillig mein komplettes Surfverhalten in Form von DNS-Abfragen zur Verfügung stelle. Okay, ich bin mittlerweile so weit, dass ich den oben genannten Organisationen mehr Vertrauen schenke als meinem eigenen ISP. Aber es gibt sicherlich einige, denen selbst das noch nicht reicht.

    Der einzige Ansatz hierfür aus meiner Sicht ist der Betrieb eines eigenen Root-Servers bei einem ISP im Ausland (der noch keine unsinnigen Sperrgesetze hat) und dort einen DNS-Server aufsetzen, der auf die Root-Zone forwarded und selbst nur an Clients resolved, die über ein VPN-Interface anfragen. Dann kann ich mir aber auch den Stunt mit Port 110 sparen.

  12. @Momo,
    ich glaube aber, in dem Artikel geht es primär darum, derzeitige neue Gängelung der Provider zu umgehen.
    Also Zensursulasperre soll umgangen werden durch manuelle DNS Konfiguration, dass versuchen Provider dann wieder zu verhindern durch die beschriebene Umleitung von Anfragen auf Port 53 und dazu hat Chris gezeigt wie man sich vor letzterem schützen kann, mehr nicht. Die Nutzung der alternativen DNS-Server ist ja schon als gewollt in dem Artikel vorrausgesetzt. Dein Ansatz geht am Thema vorbei

  13. Hallo,

    Meine named.conf.options [quelle: http://forum.infokrieg.tv]

    options {
    directory „/var/cache/bind“; // Cache directory
    auth-nxdomain no; // Do not set auth-flag for NX (Not Existing) domains
    listen-on-v6 { none; }; // Do not listen on any IPv6 interfaces
    listen-on { 127.0.0.1; }; // Only listen on IPv4 127.0.0.1
    allow-transfer { none; }; // Do not allow zone transfers
    allow-query { 127.0.0.1; }; // Only allow localhost to query this DNS server
    allow-recursion { 127.0.0.1; }; // Only allow localhost to do recursive DNS lookups
    recursion yes; // Enable recursion
    dnssec-enable yes; // Enable DNSSEC
    dnssec-validation yes; // Enable DNSSEC validation when looking up zones
    };

    Dann läuft der DNS Server wirklich lokal, oder?
    Ist es normal das beim 1. Query die Zeit so hoch ist?

    ;; Query time: 2130 msec
    ;; SERVER: 127.0.0.1#53(127.0.0.1)
    ;; WHEN: Tue Feb 28 03:54:30 2012
    ;; MSG SIZE rcvd: 162

    Kann man bei obiger named.conf.options auch noch den Port #53 abändern?
    Falls jemand weis bitte um Hilfe!

    PS. Geiler Blog

  14. Hallo,

    Meine named.conf.options [quelle: http://forum.infokrieg.tv]

    options {
    directory "/var/cache/bind"; // Cache directory
    auth-nxdomain no; // Do not set auth-flag for NX (Not Existing) domains
    listen-on-v6 { none; }; // Do not listen on any IPv6 interfaces
    listen-on { 127.0.0.1; }; // Only listen on IPv4 127.0.0.1
    allow-transfer { none; }; // Do not allow zone transfers
    allow-query { 127.0.0.1; }; // Only allow localhost to query this DNS server
    allow-recursion { 127.0.0.1; }; // Only allow localhost to do recursive DNS lookups
    recursion yes; // Enable recursion
    dnssec-enable yes; // Enable DNSSEC
    dnssec-validation yes; // Enable DNSSEC validation when looking up zones
    };

    Dann läuft der DNS Server wirklich lokal, oder?
    Ist es normal das beim 1. Query die Zeit so hoch ist?

    ;; Query time: 2130 msec
    ;; SERVER: 127.0.0.1#53(127.0.0.1)
    ;; WHEN: Tue Feb 28 03:54:30 2012
    ;; MSG SIZE  rcvd: 162

    Kann man bei obiger named.conf.options auch noch den Port #53 abändern?
    Falls jemand weis bitte um Hilfe!

    PS. Geiler Blog

Schreibe einen Kommentar zu Lars Antwort abbrechen

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein