Dezentrales VPN mit Tinc

Seite 2: Es wird eingerichtet

Inhaltsverzeichnis

Seine Einrichtungsdateien sucht Tinc unter Linux im Ordner /etc/tinc. Auf Windows erwartet es sie im Programmverzeichnis, das sich in der Regel unter c:\Programme\tinc\ findet. Die Einstellungen lassen sich als Profile zusammenfassen und später gezielt aufrufen: Dazu erzeugt man ein neues Verzeichnis mit einem frei wählbaren Namen – beispielsweise MeinTincVPN – und erstellt darin das Unterverzeichnis hosts/ sowie die Da-tei tinc.conf, in der der Tinc-Knoten einige grundlegende Parameter erwartet:

Device=/dev/net/tun
Interface=MeinTincVPN-dev
AddressFamily=ipv4
Mode=switch
Name=TincKnoten1
PrivateKeyFile=/etc/tinc/MeinTincVPN/rsa_key.priv

Wer die VPN-Verbindung unter Windows explizit angeben will, gibt ihr einen eindeutigen Namen und teilt ihn Tinc über die Konfigurationsvariable Interface mit.

Der Eintrag Device gibt das TUN/TAP-Pseudo-Device vor, Interface benennt das VPN-Interface. Fehlt diese Option unter Linux, benennt Tinc das Interface nach dem Profilnamen. Windows benötigt den Eintrag Device nicht, es sucht sich das passende Interface automatisch. Wer die VPN-Schnittstelle jedoch vorgeben will, kann die zum "TAP-Win32 Adapter V8" gehörende Netzwerkverbindung beispielsweise in TINC-VPN umbenennen und die Option Interface=TINC-VPN setzen. Mit AddressFamily=ipv4 hört tinc ausschließlich an den IPv4-Adressen des Rechners und Mode legt fest, wie Tinc Pakete zum Ziel leitet. Über den Wert switch erzeugt Tinc anhand der Hardware-Adressen (MAC) eine Routing-Tabelle. Ähnlich wie ein echter Switch leitet die Software Unicast-, Broadcast- und Multicast-Anfragen weiter, sodass sich einzelne Ethernet-Segmente überbrücken lassen. Nutzt Tinc dagegen hub, erstellt die Software keine Routing-Tabelle und alle Pakete werden per Broadcast an alle anderen Tinc-Knoten verschickt. Per Vorgabe arbeitet Tinc jedoch als Router, der nur die Subnetz-Angaben der einzelnen Knoten für die Routing-Tabelle auswertet.

In dieser Betriebsart funktionieren jedoch keine Broad- oder Multicast-Anfragen. Der Parameter Name benennt den Tinc-Knoten, der sich gegenüber anderen mittels eines Schlüsselpaares ausweist. PrivateKeyFile zeigt dabei auf den absoluten Pfad der privaten Schlüsseldatei, die Tinc gemeinsam mit dem öffentlichen Schlüssel über den Befehl tincd -K -n MeinTincVPN erzeugt. Das Programm legt den privaten Schlüssel per Vorgabe in der Datei rsa_key.priv im Profilverzeichnis (MeinTincVPN) ab. Den öffentlichen Schlüssel sichert es standardmäßig in einer Datei im hosts-Verzeichnis. Wenn nicht anders gewünscht, benennt Tinc die Datei mit dem Knotennamen, den man zuvor in der Datei tinc.conf festgelegt hat.