[[https://projects.universe-factory.net/projects/fastd/wiki|Fastd]] ist ein Programm um einen VPN-Tunnel auszubauen. Mit einer Server-Instanz gibt es einen Knoten zu dem sich z.B. Router verbinden können. Vorteile von fastd: * aktive Entwicklung * minimale Abhängigkeiten (besonders crypto) * automatisches einpflegen von Schlüsseln unbekannter Knoten * wird von anderen Freifunk-Gruppen genutzt * über peer groups kann sich fastd mit einer Anzahl zufälliger Knoten aus einer gegebenen Menge verbinden Zum Installieren gibt es verschiedene Möglichkeiten: Direkt über ein zur Distribution passendes Repository (das sollte man bevorzugen, Abschnitt a), manuell bauen aus den Releasequellen (Abschnitt b) oder manuell bauen aus dem Quellcode-Repository (Abschnitt c). **a. Installation über Debian-Repositories:** echo "deb http://repo.universe-factory.net/debian/ sid main" >> /etc/apt/sources.list apt-get update apt-get install fastd **b. Installation aus den Release-Paketen:** apt-get install git cmake-curses-gui libnacl-dev flex bison libcap-dev pkg-config zip wget http://git.universe-factory.net/fastd/snapshot/fastd-12.zip unzip fastd-12.zip wget http://git.universe-factory.net/libuecc/snapshot/libuecc-3.zip unzip libuecc-3.zip cd libuecc-3/ cmake . make make install cd .. cd fastd-12 cmake . make make install Wenn beim Kompilieren von fast linux/if_alg.h nicht gefunden wirde müssen mittels "ccmake ." die Optionen deaktiviert werden die auf _LINUX enden. **c. Installation aus dem Quellcode-Repository:** git clone http://git.universe-factory.net/fastd git clone http://git.universe-factory.net/libuecc zu a/b: Kompilieren und Installieren: apt-get install git cmake-curses-gui libnacl-dev flex bison libcap-dev pkg-config zip mkdir fastd_build mkdir libuecc_build cd libuecc_build cmake ../libuecc make make install cd .. cd fastd_build cmake ../fastd make make install cd .. rm -rf fastd* libuecc* **Konfiguration:** Zuerst wird ein Benutzer nobody für fastd angelegt (falls er nicht bereits existiert): useradd --system --no-create-home --shell /bin/false nobody Jetzt muss fastd konfiguriert werden: mkdir -p /etc/fastd/vpn/peers Inhalt von /etc/fastd/vpn/fastd.conf: bind 0.0.0.0:1234 interface "eth0"; interface "fastd_mesh"; user "nobody"; mode tap; method "salsa2012+gmac"; method "xsalsa20-poly1305"; mtu 1406; secret ""; log level debug; #folgende Zeile sorgt dafuer das jeder Peer akzeptiert wird on verify "true"; include peers from "peers"; on up " ip link set up fastd_mesh batctl if add fastd_mesh "; Der secret key kann mittels fastd --generate-key generiert werden. Der dazugehörige public key muss auf den Router. **Start der fastd-Instanz:** fastd --config /etc/fastd/fastd.conf --daemon **Notizen:** * fastd --generate-key generiert neue Schlüsselpaare. * Hier gibt es die OpenWRT-Pakete: https://git.metameute.de/lff/pkg_fastd/