Howto/Tinc-Keys generieren
< Howto
Version vom 29. Januar 2019, 19:44 Uhr von Florian (Diskussion | Beiträge)
ACHTUNG - in unserem Freifunk-Netz nutzen wir inzwischen kein tincd mehr als VPN, sondern fastd
Um mit tincd keys zu generieren benutzt man generell:
tincd -K
Dann muss man aber manuell den Ort der beiden keys festlegen. Das ist recht hinderlich, wenn man viele Keys gleichzeitig generieren will. Aber zum Glück gibt es expect.
#!/usr/bin/bash
for i in {1..31}
do
expect -c "spawn tincd -K" -c "expect \":\"" -c "send \"/root/tinc_keys/gate$i.priv\r\"" -c "expect \":\"" -c "send \"/root/tinc_keys/gate$i\r\"" -c "interact"
temp=$((i*4))
sed -i '1i Subnet=10.37.'"$temp"'.0\/22' /root/tinc_keys/gate$i
sed -i '1i Compression=0' /root/tinc_keys/gate$i
sed -i '1i Cipher=aes-128-cbc' /root/tinc_keys/gate$i
sed -i '1i Address=gate'"$i"'.freifunk-mainz.de' /root/tinc_keys/gate$i
done
Expect startet "spawn" tincd -K, wartet auf ein ":" und schreibt dann den pfad des private keys. Danach das selbe wie für den public key. "Interact" ist notwendig, damit die Key Generierung zu ende laufen kann. Damit man die public keys direkt als host definitionen im hosts ordner von tinc verwendet werden können, werden hier auch die sonstigen configs hinzugefügt, indem mit sed eine Zeile eingefügt wird.