Howto/Tinc-Keys generieren
< Howto
Version vom 6. November 2017, 01:12 Uhr von Florian (Diskussion | Beiträge) (Hinweis, dass wir inzwischen fastd nutzen, eingefügt)
ACHTUNG - in unserem Freifunk-Netz nutzen wir inzwischen fast statt tincd
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.