Tinc: Unterschied zwischen den Versionen

Aus Freifunk Kiel
Zur Navigation springen Zur Suche springen
(*despam*)
Zeile 1: Zeile 1:
comment6, ******* purchase viagra no prescription,  01271,
+
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.
  
Compromised by SpamBot. Please fix this.
+
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.
 +
 
 +
== Verzeichnisbaum 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' '<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'
 +
 
 +
== Key bekanntgeben ==
 +
Jetzt musst Du noch den Public Key in die zentrale tinc-Config eintragen.
 +
 
 +
Das geht am, indem Du mit der [[Vorlage:Node|Node-Vorlage]] eine Seite für den Node anlegst. Ein gutes Beispiel ist die Seite des [[Nodes/tpnode|tpnode]]. Ein Skript auf [[Nodes/toppoint|dem zentralen VPN-Knoten]] extrahiert regelmäßig alle so bekanntgegebenen Keys und fügt sie der tinc-Config hinzu. Sobald dein Key unter http://freifunk.in-kiel.de/tinc/ auftaucht, sollte dein Node sich verbinden können.
 +
 
 +
Den Public-Key findest Du unter
 +
 
 +
/etc/tinc/kiel.freifunk.net/hosts/
 +
 
 +
in der Datei, die den Namen Deines Routers trägt.

Version vom 27. Oktober 2011, 22:12 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.

Verzeichnisbaum 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' '<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'

Key bekanntgeben

Jetzt musst Du noch den Public Key in die zentrale tinc-Config eintragen.

Das geht am, indem Du mit der Node-Vorlage eine Seite für den Node anlegst. Ein gutes Beispiel ist die Seite des tpnode. Ein Skript auf dem zentralen VPN-Knoten extrahiert regelmäßig alle so bekanntgegebenen Keys und fügt sie der tinc-Config hinzu. Sobald dein Key unter http://freifunk.in-kiel.de/tinc/ auftaucht, sollte dein Node sich verbinden können.

Den Public-Key findest Du unter

/etc/tinc/kiel.freifunk.net/hosts/

in der Datei, die den Namen Deines Routers trägt.