Tinc: Unterschied zwischen den Versionen
Wonka (Diskussion | Beiträge) (revert) |
|||
Zeile 5: | Zeile 5: | ||
== Verzeichnissbaum anlegen == | == Verzeichnissbaum anlegen == | ||
− | + | mkdir -p /etc/tinc/kiel.freifunk.net/hosts | |
== Konfigurationsdatei == | == Konfigurationsdatei == | ||
Datei /etc/tinc/kiel.freifunk.net/tinc.conf anlegen: | Datei /etc/tinc/kiel.freifunk.net/tinc.conf anlegen: | ||
− | + | Name = <nodename-eintragen> | |
− | + | ConnectTo = toppoint | |
− | + | AddressFamily = any | |
− | + | TCPOnly = yes | |
− | + | Device = /dev/net/tun | |
− | + | Interface = tincolsr | |
− | + | Mode = switch | |
− | + | PrivateKeyFile = /etc/tinc/kiel.freifunk.net/rsa_key.priv | |
− | + | Port = 2655 | |
== Schlüssel erzeugen und austauschen == | == Schlüssel erzeugen und austauschen == | ||
Zeile 34: | Zeile 34: | ||
Datei /etc/init.d/tincd anlegen: | Datei /etc/init.d/tincd anlegen: | ||
− | + | #!/bin/sh /etc/rc.common | |
− | + | START=49 | |
− | + | ||
− | + | start() { | |
− | + | /usr/sbin/tincd -n kiel.freifunk.net | |
− | + | } | |
− | + | ||
− | + | stop() { | |
− | + | killall tincd | |
− | + | } | |
Das obige Skript ausführbar machen und als Startskript beim Systemstart verwenden: | Das obige Skript ausführbar machen und als Startskript beim Systemstart verwenden: | ||
− | + | chmod u+x /etc/init.d/tincd | |
− | + | cd /etc/rc.d | |
− | + | ln -s ../init.d/tincd S49tincd | |
== Firewall anpassen == | == Firewall anpassen == |
Version vom 16. Mai 2011, 10:21 Uhr
Zur Zeit verbinden wir alleinstehende Nodes per VPN mit dem Toppoint-Node - Das ist natürlich eine Krücke. Sinn von Freifunk ist eine von kommerziellen Internet unabhängige Infrastruktur. Ziel ist es erste Inseln aus direkt verbundenen Nodes zu organisieren und das Netz nach und nach zu verdichten.
Es ergibt aber in der Anfangszeit wenig Sinn, ein Dutzend unzusammenhängender Nodes zwischen Wik und Russee zu betreiben. Per VPN können wir schon erste Erfahrungen mit dem Routing sammeln und Services testen.
Verzeichnissbaum anlegen
mkdir -p /etc/tinc/kiel.freifunk.net/hosts
Konfigurationsdatei
Datei /etc/tinc/kiel.freifunk.net/tinc.conf anlegen:
Name = <nodename-eintragen> ConnectTo = toppoint AddressFamily = any TCPOnly = yes Device = /dev/net/tun Interface = tincolsr Mode = switch PrivateKeyFile = /etc/tinc/kiel.freifunk.net/rsa_key.priv Port = 2655
Schlüssel erzeugen und austauschen
Public Key der "Zentrale" runterladen:
wget -O /etc/tinc/kiel.freifunk.net/hosts/toppoint http://freifunk.in-kiel.de/tinc/toppoint
(Falls das wget-Kommando nicht geht: Copy und Paste von http://freifunk.in-kiel.de/tinc/toppoint)
Keys generieren:
tincd --config=/etc/tinc/kiel.freifunk.net -K
Steuerungsskript
Datei /etc/init.d/tincd anlegen:
#!/bin/sh /etc/rc.common START=49 start() { /usr/sbin/tincd -n kiel.freifunk.net } stop() { killall tincd }
Das obige Skript ausführbar machen und als Startskript beim Systemstart verwenden:
chmod u+x /etc/init.d/tincd cd /etc/rc.d ln -s ../init.d/tincd S49tincd
Firewall anpassen
Freifunk-Zone um das neue tinc-Interface erweitern in /etc/config/firewall
config 'zone' option 'masq' '1' option 'input' 'ACCEPT' option 'forward' 'REJECT' option 'name' 'freifunk' option 'output' 'ACCEPT' option 'network' 'wireless0 tincolsr'
Netzwerk-Konfiguration um das neue Interface erweitern in /etc/config/network
config 'interface' 'tincolsr' option 'ifname' 'tincolsr' option 'proto' 'static' option 'ipaddr' '10.14.252.<tinc-vpn-IP-eintragen>' option 'netmask' '255.255.0.0' option 'defaultroute' '0' option 'peerdns' '0'
olsrd-Konfiguration erweitern, in /etc/config/olsrd
config 'Interface' option 'ignore' '0' option 'interface' 'tincolsr'
Luci anpassen
Mit dem folgenden Eintrag überlebt die tinc-Konfiguration auch ein Update des Routers. In /etc/config/luci
config 'extern' 'flash_keep' option 'uci' '/etc/config/' option 'dropbear' '/etc/dropbear/' option 'openvpn' '/etc/openvpn/' option 'passwd' '/etc/passwd' option 'opkg' '/etc/opkg.conf' option 'firewall' '/etc/firewall.user' option 'uploads' '/lib/uci/upload/' option 'tinc' '/etc/tinc/' option 'tincd' '/etc/init.d/tincd'