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:
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 "<secret_key>"; 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.