Änderungen

Zeile 1: Zeile 1: −
{{Hinweis
+
[[Datei:Freifunk Antenne.jpeg|miniatur|rechts|Eine selbstgebastelte Richtfunkantenne zur Erhöhung der Reichweite. Für den Einstieg reichen aber auch die Stabantennen vom Hersteller.]]
|Titel=Achtung
+
=Anleitungen zur Teilnahme am Netz von Freifunk Mainz/Freifunk Wiesbaden=
|Text=Diese Anleitung ist bei weitem noch nicht fertig. Sie wird gerade aus dem [http://www.freifunk-mainz.de/wiki/doku.php?id=howto:tinc_node_konfiguration_v2 alten Wiki] umgezogen.
+
Der Teilnahme am Freifunk-Netz bist du nur noch 2 kleine Schritte entfernt:
}}
+
#Besorge dir einen Router. Hier findest du eine Liste der [http://wiki.freifunk.net/Freifunk_Firmware_Gluon/Hardware unterstützten Geräte]. Wir [[Welchen Router kaufe ich|empfehlen diese Geräte]] von TP-Link.
 +
#Installiere darauf die Freifunk-Software. Folge '''[https://www.freifunk-mainz.de/GluonFlash.html dieser Anleitung]''' auf unserer Webseite, wenn du ein Neugerät mit Original-Software mit der Freifunk-Firmware bespielen willst.
   −
Dies soll eine allgemeine Anleitung zur Router-Konfiguration auf OpenWRT-Basis für die Teilnahme am Netz von Freifunk Mainz werden.
+
== Fortgeschrittene Anleitungen==
 
+
* Willst du die Konfiguration deines Freifunk-Routers nochmal ändern, so folge [[Howto/Gluon_Konfig_Aendern | dieser Anleitung]].
Dieser Prozess umfasst mehrere Schritte:
+
*[[:Datei:Wohin mit den Freifunk-Router.pdf|Hier]] findest du außerdem eine Anleitung, wo du den Router am Besten aufstellst.
__TOC__
  −
 
  −
= Router Flashen =
  −
Eine grobe Übersicht, wie das flashen vor sich geht [[Howto/Flashen | findet man hier]].
  −
{{Todo|Link nach Domainumzug rausnehmen/anpassen.}}
  −
Wir verwenden als Grundlage für die Router das Betriebssystem [https://openwrt.org/ OpenWRT]. Um den Prozess einfacher zu machen, und da der Speicherplatz auf den Plasterouter sehr begrenzt ist, haben wir '''vorkompilierte Images''' im Angebot:
  −
Die jeweils aktuelle Version für deinen Router liegt unter [http://images.freifunk-mainz.de images.freifunk-mainz.de] (bzw. unter [http://images.freifunk.lacerta.uberspace.de images.freifunk.lacerta.uberspace.de] bis zum Domainumzug).
  −
 
  −
Alternativ kann dem Router auch ein "normales" OpenWRT verpasst werden, dann muss man jedoch die benötigten Pakete von Hand nachinstallieren:
  −
 
  −
$ opkg update
  −
$ opkg install kmod-batman-adv tinc
  −
 
  −
= Router einrichten =
  −
 
  −
Nachdem OpenWRT erfolgreich auf den Router geflasht ist, bezieht dieser die IP-Adresse <code>192.168.1.1</code>. Da bereits ein DHCP Server initial auf den Kisten läuft musst du dir keine eigene IP-Adresse setzen
  −
 
  −
== Passwort setzen ==
  −
Wie bei OpenWRT üblich, sollte das erste Einloggen per Telnet erfolgen, um das Root-Passwort zu ändern.
  −
 
  −
$ telnet 192.168.1.1
  −
 
  −
$ passwd <enter>
  −
$ > Neues Passwort eingeben:
  −
$ > Neues Passwort wiederholen:
  −
 
  −
Danach ist Telnet aus und SSH an.
  −
Nach einem Reboot muss der Login per SSH erfolgen
  −
 
  −
$ reboot -f
  −
 
  −
Die weiteren Einlogvorgänge erfolgen dann über SSH als Benutzer root:
  −
 
  −
$ ssh root@192.168.1.1
  −
 
  −
oder von einem Windows-PC mittels PUTTY - Hier Login per IP Adresse und SSH (Port 22)
  −
 
  −
==Empfehlung: Sicherung der wichtigsten Dateien==
  −
 
  −
Die Praxis zeigt, dass es gut ist, später nochmal einen Blick in die Original-Dateien werfen zu können, wenn es um definierte Hardware Eigenschaften geht. Wer mag legt Kopien an von:
  −
 
  −
$ mkdir -p /etc/config/originals
  −
$ cp -R /etc/config/* /etc/config/originals
  −
 
  −
Weiterhin gibt es im OpenWrt.org einen Artikel der beschreibt, wie man den Bootloader als Backup sichert und wieder zurück spielt. Zugegeben, versteht sicher nicht jeder.
  −
 
  −
Nachlesen: '''[http://wiki.openwrt.org/doc/howto/generic.backup Backup des Bootloaders]'''
  −
 
  −
==Netzwerk konfigurieren==
  −
 
  −
Leider unterscheiden sich die Addressierungen der Netzwerkinterfaces der Router je nach Modell und Hardware-Revision.
  −
Im folgenden der Anleitung werden die Interfaces als <span style="background: #{{Color|Blau}}; " ><WAN-IF></span> und <span style="background: #{{Color|Gelb}};"><SWITCH-IF></span> bezeichnet.
  −
{{Todo|Tabelle mit allen Routermodellen auffüllen.}}
  −
{| class="wikitable sortable"
  −
! Router-Modell
  −
! HW-Revision
  −
! style="background: #{{Color|Blau}}; " | WAN-Interface
  −
! style="background: #{{Color|Gelb}};" | Switch-Interface
  −
! 2,4 GHz
  −
! 5 GHz
  −
|-
  −
| tl-wr741nd
  −
| v5
  −
| eth1
  −
| eth0
  −
| Ja
  −
| Nein
  −
|-
  −
| tl-wr841nd
  −
| v7 (v8.x nicht geeignet)
  −
| eth0
  −
| eth1
  −
| Ja
  −
| Nein
  −
|-
  −
| tl-wr1043nd
  −
| v 1.x
  −
| eth0.2
  −
| eth0.1
  −
| Ja
  −
| Nein
  −
|-
  −
| tl-wdr3500
  −
| v1
  −
| eth1
  −
| eth0
  −
| Ja
  −
| Ja
  −
|-
  −
| tl-wdr3600
  −
| v1
  −
| eth1
  −
| eth0
  −
| Ja
  −
| Ja
  −
|}
  −
 
  −
Laden der Datei ''network'' in den Editor. Eine Hilfe gibt es:
  −
[http://www.linux-fuer-alle.de/doc_show.php?docid=29 hier]
  −
 
  −
$ vi /etc/config/network
  −
 
  −
Einige Teile der Datei müssen ausgetauscht, andere ergänzt werden.
  −
 
  −
Gehen wir die Blöcke einfach mal durch:
  −
 
  −
{{Config-Block
  −
|Zeile=config interface 'loopback'
  −
|Aktion=Der ganze Block bleibt erhalten
  −
|}}
  −
 
  −
{{Config-Block
  −
|Zeile=config globals 'globals'
  −
|Aktion=Der ganze Block (2 Zeilen) fliegt raus!
  −
|strike=true
  −
|}}
  −
 
  −
An dieser Stelle fügen wir ein:
  −
 
  −
config interface 'vpn'
  −
        option ifname 'freifunk_vpn'
  −
        option mtu '1500'
  −
        option proto 'batadv'
  −
        option mesh 'bat0'
  −
 
  −
config interface 'mesh'
  −
        option ifname 'adhoc0'
  −
        option mtu '1528'
  −
        option proto 'batadv'
  −
        option mesh 'bat0'
  −
 
  −
{{Config-Block
  −
|Zeile=config interface 'lan'
  −
|Aktion=Dieser Block wird entfernt. Vorher die Zeile '''option ifname''' suchen und den Namen des Interfaces mit der Tabelle oben vergleichen. Dieser Name ist das <span style="background: #{{Color|Gelb}};"><SWITCH-IF></span>.'''Block danach löschen'''.
  −
|strike=true
  −
|}}
  −
 
  −
An dieser Stelle einsetzen:
  −
Für Router nur mit 2,4 GHz ...
  −
 
  −
config interface 'freifunk'
  −
        option ifname '<span style="background: #{{Color|Gelb}};"><SWITCH-IF></span> bat0 freifunk_wlan'
  −
        option type 'bridge'
  −
        option proto 'static'
  −
        #  Eure IP-Addresse aus dem WIKI bei ipaddr ersetzen
  −
        option ipaddr  '10.37.X.X'
  −
        option netmask '255.255.0.0'
  −
        option dns    '10.37.4.1'
  −
 
  −
Für Router mit 2,4 GHz '''und''' 5 GHz ...
  −
 
  −
config interface 'freifunk'
  −
        option ifname '<span style="background: #{{Color|Gelb}};"><SWITCH-IF></span> bat0 freifunk_wlan freifunk_wlan2'
  −
        option type 'bridge'
  −
        option proto 'static'
  −
        #  Eure IP-Addresse aus dem WIKI bei ipaddr ersetzen
  −
        option ipaddr  '10.37.X.X'
  −
        option netmask '255.255.0.0'
  −
        option dns    '10.37.4.1'
  −
 
  −
{{Config-Block
  −
|Zeile=config interface 'wan'
  −
|Aktion=Dieser Block bleibt erhalten
  −
|}}
  −
 
  −
{{Config-Block
  −
|Zeile=config interface 'wan6'
  −
|Aktion=Der ganze Block (3 Zeilen) fliegt raus!
  −
|strike=true
  −
|}}
  −
 
  −
{{Config-Block
  −
|Zeile=config switch...
  −
|Aktion=Diese (beiden) Blöcke bleiben erhalten
  −
|}}
  −
 
  −
Speichern und raus:  Bei 'vi' mit ESC  :wq 
  −
 
  −
{{Todo|Kommandos des VI Editors sammeln/referenzieren.}}
  −
 
  −
==DNS Ausschalten==
  −
 
  −
DNS abschalten durch einmaliges Absetzen des folgenden Befehls
  −
 
  −
$ /etc/init.d/dnsmasq disable
  −
 
  −
 
  −
==WLAN konfigurieren==
  −
 
  −
Laden der Datei ''wireless'' in den Editor. Eine Hilfe für den vi-editor gibt es:
  −
[http://www.linux-fuer-alle.de/doc_show.php?docid=29 hier ]
  −
 
  −
$ vi /etc/config/wireless
  −
 
  −
Der Inhalt wird modifiziert und ergänzt. Gehen wir wieder die Blöcke durch
  −
 
  −
{{Config-Block
  −
|Zeile=config wifi-device radio0
  −
|Aktion=Dieser Block bleibt erhalten. Hier folgende Zeile korrigieren: '''option channel  11'''.
  −
|}}
  −
 
  −
Danach das WLAN einschalten (im selben Block '''config wifi-device radio0'''):
  −
 
  −
{{Config-Block
  −
|Zeile=option disabled 1
  −
|Aktion=diese Zeile entfernen oder mit # vorne versehen.
  −
|strike=true
  −
|}}
  −
 
  −
In der Original-Datei gibt es dahinter nun einen Block:
  −
 
  −
{{Config-Block
  −
|Zeile=config wifi-iface
  −
|Aktion=Dieser ganze Block wird entfernt und statt dessen durch gleich zwei Blöcke ersetzt!
  −
|strike=true
  −
|}}
  −
 
  −
Einfügen an dieser Stelle:
  −
 
  −
config wifi-iface
  −
        option device    'radio0'
  −
        option encryption 'none'
  −
        option ssid      'mesh'
  −
        option ifname    'adhoc0'
  −
        option mode      'adhoc'
  −
        option bssid      '02:ca:ff:ee:ba:be'
  −
 
  −
config wifi-iface
  −
        option device    'radio0'
  −
        option mode      'ap'
  −
        option encryption 'none'
  −
        option ifname    'freifunk_wlan'
  −
        option ssid      'Freifunk Mainz'
  −
        option network    'freifunk'
  −
        option isolate    '1'
  −
 
  −
 
  −
Nur bei einem Dualband Router mit 2,4 und 5 GHz geht es in der Originaldatei weiter. Alle anderen speichern jetzt und sind fertig mit der Bearbeitung dieser Datei.
  −
 
  −
Bei Routern mit zusätzlichem 5 GHz-Band gibt es jetzt noch einmal die gleichen Blöcke für "radio1".
  −
 
  −
{{Config-Block
  −
|Zeile=config wifi-device  radio1
  −
|Aktion=Dieser Block bleibt erhalten.
  −
|}}
  −
 
  −
Danach das WLAN einschalten (im selben Block '''config wifi-device radio1'''):
  −
 
  −
{{Config-Block
  −
|Zeile=option disabled 1
  −
|Aktion=diese Zeile entfernen oder mit # vorne versehen.
  −
|strike=true
  −
|}}
  −
 
  −
In der Original-Datei gibt es dahinter wieder nur einen Block:
  −
 
  −
{{Config-Block
  −
|Zeile=config wifi-iface
  −
|Aktion=Dieser ganze Block wird entfernt und statt dessen durch gleich zwei Blöcke ersetzt!
  −
|strike=true
  −
|}}
  −
 
  −
Der letzte Block wird wieder entfernt und durch diese Blöcke ersetzt:
  −
 
  −
config wifi-iface
  −
      option device    'radio1'
  −
      option mode      'adhoc'
  −
      option encryption 'none'
  −
      option ifname    'adhoc0'
  −
      option ssid      'mesh'
  −
      option bssid      '02:ca:ff:ee:ba:be'
  −
 
  −
config wifi-iface
  −
      option device    'radio1'
  −
      option mode      'ap'
  −
      option encryption 'none'
  −
      option ifname    'freifunk_wlan2'
  −
      option ssid      'Freifunk Mainz'
  −
      option network    'freifunk'
  −
      option isolate    '1'
  −
 
  −
Wir speichern wieder mit ESC  :wq
  −
 
  −
==Tinc konfigurieren==
  −
 
  −
Laden der Datei ''tinc'' in den Editor. Eine Hilfe gibt es:
  −
[http://www.linux-fuer-alle.de/doc_show.php?docid=29 hier]
  −
 
  −
$ vi /etc/config/tinc
  −
 
  −
Der komplette Inhalt wird gelöscht und mit folgendem Inhalt gefüllt (NODENAME bitte austauschen):
  −
 
  −
<small>
  −
Man kann vor dem öffnen komfortabel die Datei leeren
  −
echo > /etc/config/tinc
  −
Bitte '''vorher''' ein Backup machen!
  −
</small>
  −
 
  −
config tinc-net 'ffmz'
  −
        option enabled '1'
  −
        option generate_keys '1'
  −
        # NODENAME ersetzen. Wird aus der IP im Wiki erstellt durch Entfernung der Punkte
  −
        # z.B. 10.37.1.100 wird zu  10371100. Es kann zu Doppeldeutigkeiten kommen.
  −
        option Name 'NODENAME'
  −
        option key_size '2048'
  −
        option logfile '/tmp/log/tinc.ffmz.log'
  −
        option debug '0'
  −
        # gate2 ist derzeit das einzig existierende Gateway
  −
        list ConnectTo 'gate2'
  −
        option DirectOnly '1'
  −
        option Forwarding 'off'
  −
        option Interface 'freifunk_vpn'
  −
        option Mode 'switch'
  −
        option Compression '10'
  −
 
  −
Speicher und verlassen des Editors wieder mit ESC :wq
  −
 
  −
Tinc neu starten damit einmalig die Schlüssel generiert werden (Achtung: das geht nur einmal)
  −
 
  −
/etc/init.d/tinc restart
  −
 
  −
Durch "......." wird eine Tätigkeit angezeigt. Danach finden wir ein neues Verzeichnis mit neuen Dateien.
  −
 
  −
cd /etc/tinc/ffmz
  −
 
  −
Zeigt eine '''rsa_key.priv''' und ein weiteres Unterverzeichnis '''hosts'''. Die '''rsa_key.priv''' beinhaltet den privaten Schlüssel der nicht herausgegeben, aber extern als Sicherheitskopie aufbewahrt werden sollte. Genau so verhält es sich mit dem öffentlichen Schlüssel den wir im hosts Unterverzeichnis finden.
  −
 
  −
cd /etc/tinc/ffmz/hosts
  −
 
  −
Der öffentliche Schlüssel hat den Namen den wir in der TINC Datei eben unter '''option Name 'NODENAME'''' eingetragen haben.
  −
 
  −
Dessen Inhalt auflisten (cat 1037.....) und per Mail an keys@freifunk-mainz.de zusammen mit dem NODENAMEN senden. Dieser Schlüssel muss im gate2 eingetragen werden.
  −
 
  −
Datei '''gate2''' im Verzeichnis hosts anlegen:
  −
 
  −
$vi /etc/tinc/ffmz/hosts/gate2
  −
 
  −
Befüllen mit dem Inhalt aus der unten angezeigten Tabelle - GATE2 - (Gate1 ist offline)
  −
 
  −
{{#ask: [[Freifunk-Gateway::+]]
  −
|?Node-Tinc-Key = Tinc-Key
  −
|?Node-Kommentar = Kommentar
  −
| mainlabel=Gateway
  −
| intro=In dieser Tabelle werden unsere Gateways mitsamt den dazugehörigen Tinc-Schlüsseln gelistet
  −
|}}
  −
 
  −
Wir speichern wieder mit ESC  :wq
  −
 
  −
==Firewall Datei befüllen ==
  −
 
  −
Die Firewall Datei muss neuen Inhalt bekommen.
  −
 
  −
$vi /etc/config/firewall
  −
 
  −
Alles muss raus. Neu rein der folgende Inhalt:
  −
 
  −
config defaults
  −
        option syn_flood        1
  −
        option input            ACCEPT
  −
        option output          ACCEPT
  −
        option forward          REJECT
  −
 
  −
config zone
  −
        option name            wan
  −
        option network          'wan'
  −
        option input            ACCEPT
  −
        option output          ACCEPT
  −
        option forward          REJECT
  −
 
  −
config zone
  −
        option name            freifunk
  −
        option network          'freifunk'
  −
        option input            ACCEPT
  −
        option output          ACCEPT
  −
        option forward          REJECT
  −
 
  −
config rule
  −
        option name            Reject-Telnet
  −
        option src              freifunk
  −
        option proto            tcp
  −
        option dest_port        23
  −
        option target          REJECT
  −
 
  −
Wir speichern wieder mit ESC  :wq
  −
 
  −
==Weitere Handgriffe==
  −
 
  −
Diesen Befehl noch absetzen. Für Nodename wieder den in der TINC Datei angegebenen verwenden:
  −
 
  −
$uci set system.@system[0].hostname=NODENAME
  −
 
  −
WOW - fast fertig: jetzt kommt ein Reboot. Dann heißt es "Daumen drücken" - Viel Glück
  −
 
  −
$reboot -f
  −
 
  −
PS: Am Freifunk-Router muss jetzt vom WAN Port aus ein Kabel zum privaten Router führen, damit TINC eine VPN Verbindung herstellen kann, oder ein anderer Freifunk-Router in Funkreichweite sein, damit das eben erzeugte Gerät sich damit vermeshen kann. Sonst gibt es nach dem Boot-Vorgang keine IP-Adresse vom neuen FF-Router. Ist eine VPN Verbindung notwendig, funktioniert die natürlich erst, wenn dein öffentlicher Schlüssel, den du über die E-Mail Adresse gesendet hast zusammen mit deinem NODENAME am Gateway von einem unserer Admins eingetragen ist. Geduld bitte.
  −
 
  −
= Konfiguration testen =
  −
Einen Überblick findet man unter [[Howto/Funktionstests | Funktionstests]].