VPN Einrichtung · 16 min read · Dec 20, 2025

So richten Sie ein Peer-to-Peer-VPN mit Tinc auf Ubuntu 22.04 ein

Tinc ist eine kostenlose und Open-Source-VPN-Software, die verwendet werden kann, um Mesh-VPN-Netzwerke zu erstellen. Es ist ein kleiner und leistungsstarker VPN-Daemon, der auf mehreren Plattformen installiert werden kann. Tinc verwendet Verschlüsselungen und Tunneling, um ein sicheres privates Netzwerk zwischen mehreren Hosts zu erstellen.

Tinc bietet zusätzliche Funktionen wie Verschlüsselung, Kompression und automatisches Mesh-Routing. Dies ermöglicht es Ihnen, sichere und verteilte private Netzwerke zwischen Servern an verschiedenen Standorten zu erstellen.

In diesem Tutorial richten Sie einen Peer-to-Peer-VPN-Server mit Tinc unter Verwendung mehrerer Ubuntu 22.04-Server ein. Sie werden ein Peer-to-Peer-VPN mit drei verschiedenen Servern einrichten. Jeder Server kann über eine sichere VPN-Verbindung verbinden.

Am Ende dieses Tutorials überprüfen Sie die Installation des Tinc-Peer-to-Peer-VPN, um sicherzustellen, dass jeder Server über die sichere interne VPN-Verbindung miteinander kommunizieren kann.

Voraussetzungen

Um dieses Tutorial abzuschließen, müssen Sie die folgenden Anforderungen erfüllen:

  • Zwei oder mehr Linux-Server mit dem Betriebssystem Ubuntu 22.04 Server.
  • Ein Nicht-Root-Benutzer mit Sudo-/Root-Administratorrechten.

Dieses Beispiel verwendet drei verschiedene Ubuntu-Server. Im Folgenden sind die detaillierten Server aufgeführt:

Hostname        Externe IP  
------------------------------  
tinc-ubuntu     192.168.5.30  
client1         192.168.5.120  
client2         192.168.5.122

Das war’s. Wenn diese Anforderungen bereit sind, können Sie mit der Installation von Tinc auf jedem Server beginnen.

Installation von Tinc VPN

tinc ist ein kleiner und leistungsstarker Daemon für Virtuelle Private Netzwerke (VPN), der auf mehreren Betriebssystemen wie Linux, BSD, MacOS oder sogar Windows installiert werden kann. Tinc ermöglicht es Ihnen, ein Mesh-VPN-Netzwerk zu erstellen, ohne auf einen zentralen Knoten angewiesen zu sein. Tinc VPN verwendet Tunneling und Verschlüsselung, um ein sicheres privates Netzwerk zwischen Hosts im Internet zu erstellen.

In diesem Schritt installieren Sie den Tinc-VPN-Server auf allen Ihren Ubuntu-Servern.

Standardmäßig ist das Tinc-Paket im Ubuntu-Repository verfügbar. Bevor Sie beginnen, aktualisieren und aktualisieren Sie Ihr Ubuntu-Paket-Index, indem Sie den folgenden Befehl ‘apt update’ eingeben.

sudo apt update

Überprüfen Sie das Paket ‘tinc‘, das im Ubuntu 22.04-Repository verfügbar ist, mit dem folgenden apt-Befehl.

sudo apt info tinc

Zum Zeitpunkt des Schreibens bietet das Ubuntu 22.04-Repository Tinc v1.0.36.

Ausgabe:

zeige tinc-Paket

Installieren Sie das Paket ‘tinc‘, indem Sie den Befehl ‘apt install’ unten eingeben. Wenn Sie dazu aufgefordert werden, geben Sie y ein, um zu bestätigen, und drücken Sie ENTER, um fortzufahren.

sudo apt install tinc

Ausgabe:

installiere tinc

Mit installiertem Tinc VPN richten Sie als Nächstes die UFW-Firewall ein und öffnen den Standardport, der von Tinc verwendet wird.

Konfigurieren der UFW-Firewall

In diesem Schritt richten Sie die Standardfirewall UFW auf allen Ihren Ubuntu-Servern ein. Sie fügen den OpenSSH-Dienst hinzu, fügen den Tinc-VPN-Port hinzu und starten und aktivieren dann die UFW-Firewall.

Zuerst fügen Sie den OpenSSH-Dienst mit dem folgenden UFW-Befehl hinzu. Eine Ausgabe ‘Regeln aktualisiert‘ bestätigt, dass die neue Regel zu UFW hinzugefügt wurde.

sudo ufw allow OpenSSH

Fügen Sie den Port 655 hinzu, der von Tinc VPN verwendet wird, indem Sie den folgenden Befehl eingeben.

sudo ufw allow 655

Führen Sie jetzt den folgenden UFW-Befehl aus, um die UFW-Firewall zu starten und zu aktivieren. Wenn Sie dazu aufgefordert werden, geben Sie y ein, um zu bestätigen, und drücken Sie ENTER, um fortzufahren.

sudo ufw enable

Eine Ausgabemeldung ‘Firewall ist aktiv und beim Systemstart aktiviert‘ bestätigt, dass die UFW-Firewall läuft und aktiviert ist, was bedeutet, dass UFW auch automatisch beim Systemstart ausgeführt wird.

Ausgabe:

einrichten von ufw

Überprüfen Sie schließlich den Status der UFW-Firewall, indem Sie den folgenden Befehl eingeben. Die Ausgabe ‘Status: aktiv‘ bestätigt, dass die Firewall läuft. Außerdem ist jede Verbindung zum Port 655 erlaubt.

sudo ufw status

Ausgabe:

überprüfen der ufw

Mit installiertem Tinc VPN und aktivierter UFW-Firewall auf allen Servern sind Sie bereit, das Peer-to-Peer-VPN zwischen diesen Servern einzurichten und zu konfigurieren.

Konfigurieren des Tinc VPN-Servers

In diesem Schritt richten Sie einen Peer-to-Peer-VPN-Server zwischen drei verschiedenen Ubuntu-Servern über Tinc VPN ein.

Im Folgenden finden Sie die Liste der Aufgaben, die Sie auf jedem Server ausführen müssen:

  • Erstellen Sie ein neues Verzeichnis, das zur Speicherung der Tinc-VPN-Konfigurationen verwendet wird, und ein neues ‘hosts‘-Verzeichnis zur Speicherung der detaillierten Hostkonfigurationen.
  • Erstellen Sie die Tinc-VPN-Konfiguration ‘tinc.conf‘ als die Hauptkonfiguration von Tinc auf jedem Server.
  • Erstellen Sie die Hostkonfiguration für jeden Server.
  • Generieren Sie öffentliche und private Schlüssel, die von Tinc VPN verwendet werden.
  • Erstellen Sie einfache Bash-Skripte, die verwendet werden, um die ‘tinc-up‘- oder ‘tinc-down’-VPN-Schnittstelle und das Netzwerk zu aktivieren oder zu deaktivieren. Außerdem müssen Sie sicherstellen, dass diese Skripte ‘tinc-up‘ und ‘tinc-down‘ ausführbar sind.

Mit diesem Wissen lassen Sie uns nun mit der Konfiguration des Tinc-VPN-Servers beginnen.

Konfigurieren des ersten Servers: tinc-ubuntu

Zuerst richten Sie Tinc auf dem ersten Knoten/Server ‘tinc-ubuntu‘ ein.

Führen Sie den folgenden Befehl aus, um ein neues VPN-Projektverzeichnis ‘/etc/tinc/testVPN/‘ zu erstellen. Außerdem erstellen Sie im Verzeichnis ‘/etc/tinc/testVPN/‘ das Verzeichnis ‘hosts‘.

Mit dem Verzeichnis ‘/etc/tinc/testVPN’ richten Sie den VPN-Server mit dem Namen ‘testVPN‘ ein.

mkdir -p /etc/tinc/testVPN/hosts

Erstellen Sie als Nächstes eine neue Tinc-VPN-Konfigurationsdatei ‘/etc/tinc/testVPN/tinc.conf’ mit dem folgenden Befehl des Nano-Editors.

nano /etc/tinc/testVPN/tinc.conf

Fügen Sie die folgenden Zeilen in die Datei ein. Mit diesen Konfigurationen benennen Sie diesen Server als ‘tinc_ubuntu‘ und richten den Schnittstellennamen für Tinc VPN als ‘tun0‘ ein und verwenden IPv4.

Außerdem müssen Sie sicherstellen, dass der ‘Name‘ des Tinc-VPN-Knotens keine ‘-‘ oder Minuszeichen verwendet. Sie können das ‘-‘ Minuszeichen durch ‘_’ Unterstrich ersetzen.

Name = tinc_ubuntu  
AddressFamily = ipv4  
Interface = tun0

Speichern Sie die Datei ‘/etc/tinc/testVPN/tinc.conf‘ und beenden Sie sie, wenn Sie fertig sind.

Erstellen Sie als Nächstes eine neue Hostkonfiguration ‘/etc/tinc/testVPN/hosts/tinc_ubuntu‘ mit dem folgenden Befehl des Nano-Editors. Sie müssen sicherstellen, dass der Dateiname der Hostkonfiguration mit dem ‘Name’ des Hosts übereinstimmt, den Sie in der Datei ‘tinc.conf‘ definiert haben.

nano /etc/tinc/testVPN/hosts/tinc_ubuntu

Fügen Sie die folgenden Zeilen in die Datei ein. Die ‘Address‘ hier ist die externe IP-Adresse dieses Servers. Und die ‘Subnet‘ ist eine interne IP-Adresse, die verwendet wird, um Tinc VPN auszuführen. Sie können die IP-Adressen nach Ihren Gegebenheiten ändern und anpassen.

Address = 192.168.5.30  
Subnet = 10.0.0.1/32

Speichern Sie die Datei ‘/etc/tinc/testVPN/hosts/tinc_ubuntu‘ und schließen Sie sie, wenn Sie fertig sind.

Führen Sie als Nächstes den folgenden Befehl ‘tincd‘ aus, um den RSA-öffentlichen und privaten Schlüssel zu generieren. Der RSA-öffentliche Schlüssel wird automatisch in der Hostkonfigurationsdatei ‘/etc/tinc/testVPN/hosts/tinc_ubuntu‘ gespeichert, und der RSA-private Schlüssel wird in ‘/etc/tinc/testVPN/rsa_key.priv‘ gespeichert.

sudo tincd -n testVPN -K4096

Ausgabe:

generiere RSA-Schlüssel

Nachdem der RSA-öffentliche und private Schlüssel generiert wurde, erstellen Sie als Nächstes ein neues Bash-Skript, das verwendet wird, um das Tinc-VPN-Netzwerk zu aktivieren und zu deaktivieren.

Erstellen Sie ein neues Bash-Skript ‘/etc/tinc/testVPN/tinc-up‘ mit dem folgenden Befehl des Nano-Editors. Dieses Skript wird verwendet, um die Tinc-VPN-Netzwerkschnittstelle zu aktivieren.

sudo nano /etc/tinc/testVPN/tinc-up

Fügen Sie die folgenden Zeilen in die Datei ein. Stellen Sie sicher, dass Sie das Subnetz der IP-Adresse unten mit Ihrem definierten VPN-Netzwerksubnetz in der Datei ‘tinc.conf‘ ändern.

#!/bin/sh  
ip link set $INTERFACE up  
ip addr add 10.0.0.1/32 dev $INTERFACE  
ip route add 10.0.0.0/24 dev $INTERFACE

Speichern Sie die Datei ‘/etc/tinc/testVPN/tinc-up‘ und schließen Sie sie, wenn Sie fertig sind.

Erstellen Sie nun ein neues Bash-Skript ‘/etc/tinc/testVPN/tinc-down‘, das verwendet wird, um die Tinc-VPN-Netzwerkschnittstelle zu deaktivieren.

sudo nano /etc/tinc/testVPN/tinc-down

Fügen Sie die folgenden Zeilen in die Datei ein.

#!/bin/sh  
ip route del 10.0.0.0/24 dev $INTERFACE  
ip addr del 10.0.0.1/32 dev $INTERFACE  
ip link set $INTERFACE down

Speichern Sie die Datei ‘/etc/tinc/testVPN/tinc-down’ und schließen Sie sie, wenn Sie fertig sind.

Führen Sie nun den chmod-Befehl unten aus, um beide Bash-Skripte ‘/etc/tinc/testVPN/tinc-up‘ und ‘/etc/tinc/testVPN/tinc-down’ ausführbar zu machen.

sudo chmod +x /etc/tinc/testVPN/tinc-*

Sie können jetzt die Liste der Dateien im Verzeichnis ‘/etc/tinc/testVPN/‘ über den folgenden tree-Befehl überprüfen.

tree /etc/tinc/testVPN/

Sie sollten eine Ausgabe wie diese erhalten:

Liste der Dateien tinc-ubuntu

Damit haben Sie die Tinc-VPN-Konfiguration auf dem ersten Server ‘tinc-ubuntu’ abgeschlossen. Als Nächstes richten Sie Tinc VPN auf den Servern ‘client1‘ und ‘client2‘ ein.

Konfigurieren des zweiten Servers: client1

Führen Sie den folgenden Befehl aus, um ein neues VPN-Projektverzeichnis ‘/etc/tinc/testVPN/‘ zu erstellen. Außerdem erstellen Sie im Verzeichnis ‘/etc/tinc/testVPN/‘ das Verzeichnis ‘hosts‘.

Mit dem Verzeichnis ‘/etc/tinc/testVPN’ richten Sie den VPN-Server mit dem Namen ‘testVPN‘ ein.

mkdir -p /etc/tinc/testVPN/hosts

Erstellen Sie als Nächstes eine neue Tinc-VPN-Konfigurationsdatei ‘/etc/tinc/testVPN/tinc.conf’ mit dem folgenden Befehl des Nano-Editors.

nano /etc/tinc/testVPN/tinc.conf

Fügen Sie die folgenden Zeilen in die Datei ein. Mit diesen Konfigurationen benennen Sie diesen Server als ‘client1‘ und richten den Schnittstellennamen für Tinc VPN als ‘tun0‘ ein und verwenden IPv4. Außerdem erlauben Sie Tinc VPN ‘client1‘, sich mit dem Tinc VPN ‘tinc_ubuntu‘ und ‘client2‘ zu verbinden.

Name = client1  
AddressFamily = ipv4  
Interface = tun0  
  
ConnectTo = tinc_ubuntu  
ConnectTo = client2

Speichern Sie die Datei ‘/etc/tinc/testVPN/tinc.conf’ und beenden Sie sie, wenn Sie fertig sind.

Erstellen Sie als Nächstes eine neue Hostkonfiguration ‘/etc/tinc/testVPN/hosts/client1‘ mit dem folgenden Befehl des Nano-Editors. Sie müssen sicherstellen, dass der Dateiname der Hostkonfiguration mit dem ‘Name’ des Hosts übereinstimmt, den Sie in der Datei ‘tinc.conf‘ definiert haben.

sudo nano /etc/tinc/testVPN/hosts/client1

Fügen Sie die folgenden Zeilen in die Datei ein. Die ‘Address‘ hier ist die externe IP-Adresse dieses Servers. Und die ‘Subnet‘ ist eine interne IP-Adresse, die verwendet wird, um Tinc VPN auszuführen. Sie können die IP-Adressen nach Ihren Gegebenheiten ändern und anpassen.

Address = 192.168.5.120  
Subnet = 10.0.0.2/32

Speichern Sie die Datei ‘/etc/tinc/testVPN/hosts/client1‘ und schließen Sie sie, wenn Sie fertig sind.

Führen Sie als Nächstes den folgenden Befehl ‘tincd’ aus, um den RSA-öffentlichen und privaten Schlüssel zu generieren. Der RSA-öffentliche Schlüssel wird automatisch in der Hostkonfigurationsdatei ‘/etc/tinc/testVPN/hosts/client1’, und der RSA-private Schlüssel wird in ‘/etc/tinc/testVPN/rsa_key.priv‘ gespeichert.

sudo tincd -n testVPN -K4096

Ausgabe:

generiere rsa-Schlüssel client1

Nachdem der RSA-öffentliche und private Schlüssel generiert wurde, erstellen Sie als Nächstes ein neues Bash-Skript, das verwendet wird, um das Tinc-VPN-Netzwerk zu aktivieren und zu deaktivieren.

Erstellen Sie ein neues Bash-Skript ‘/etc/tinc/testVPN/tinc-up‘ mit dem folgenden Befehl des Nano-Editors. Dieses Skript wird verwendet, um die Tinc-VPN-Netzwerkschnittstelle zu aktivieren.

sudo nano /etc/tinc/testVPN/tinc-up

Fügen Sie die folgenden Zeilen in die Datei ein. Stellen Sie sicher, dass Sie das Subnetz der IP-Adresse unten mit Ihrem definierten VPN-Netzwerksubnetz in der Datei ‘tinc.conf‘ ändern.

#!/bin/sh  
ip link set $INTERFACE up  
ip addr add 10.0.0.2/32 dev $INTERFACE  
ip route add 10.0.0.0/24 dev $INTERFACE

Speichern Sie die Datei ‘/etc/tinc/testVPN/tinc-up’ und schließen Sie sie, wenn Sie fertig sind.

Erstellen Sie nun ein neues Bash-Skript ‘/etc/tinc/testVPN/tinc-down‘, das verwendet wird, um die Tinc-VPN-Netzwerkschnittstelle zu deaktivieren.

sudo nano /etc/tinc/testVPN/tinc-down

Fügen Sie die folgenden Zeilen in die Datei ein.

#!/bin/sh  
ip route del 10.0.0.0/24 dev $INTERFACE  
ip addr del 10.0.0.2/32 dev $INTERFACE  
ip link set $INTERFACE down

Speichern Sie die Datei ‘/etc/tinc/testVPN/tinc-down’ und schließen Sie sie, wenn Sie fertig sind.

Führen Sie nun den chmod-Befehl unten aus, um beide Bash-Skripte ‘/etc/tinc/testVPN/tinc-up‘ und ‘/etc/tinc/testVPN/tinc-down’ ausführbar zu machen.

sudo chmod +x /etc/tinc/testVPN/tinc-*

Sie können jetzt die Liste der Dateien im Verzeichnis ‘/etc/tinc/testVPN/‘ auf dem Knoten ‘client1‘ über den folgenden tree-Befehl überprüfen.

tree /etc/tinc/testVPN/

Sie sollten eine Ausgabe wie diese erhalten:

Liste der Dateien

Damit haben Sie die Tinc-VPN-Konfiguration auf dem zweiten Server ‘client1‘ abgeschlossen. Als Nächstes richten Sie Tinc VPN auf dem Server ‘client2‘ ein.

Konfigurieren des dritten Servers: client2

Führen Sie den folgenden Befehl aus, um ein neues VPN-Projektverzeichnis ‘/etc/tinc/testVPN/‘ zu erstellen. Außerdem erstellen Sie im Verzeichnis ‘/etc/tinc/testVPN/‘ das Verzeichnis ‘hosts‘.

Mit dem Verzeichnis ‘/etc/tinc/testVPN‘ richten Sie den VPN-Server mit dem Namen ‘testVPN‘ ein.

mkdir -p /etc/tinc/testVPN/hosts

Erstellen Sie als Nächstes eine neue Tinc-VPN-Konfigurationsdatei ‘/etc/tinc/testVPN/tinc.conf’ mit dem folgenden Befehl des Nano-Editors.

nano /etc/tinc/testVPN/tinc.conf

Fügen Sie die folgenden Zeilen in die Datei ein. Mit diesen Konfigurationen benennen Sie diesen Server als ‘client2‘ und richten den Schnittstellennamen für Tinc VPN als ‘tun0‘ ein und verwenden IPv4. Außerdem erlauben Sie Tinc VPN ‘client2‘, sich mit dem Tinc VPN ‘tinc_ubuntu‘ und ‘client1‘ zu verbinden.

Name = client2  
AddressFamily = ipv4  
Interface = tun0  
  
ConnectTo = tinc_ubuntu  
ConnectTo = client1

Speichern Sie die Datei ‘/etc/tinc/testVPN/tinc.conf’ und beenden Sie sie, wenn Sie fertig sind.

Erstellen Sie als Nächstes eine neue Hostkonfiguration ‘/etc/tinc/testVPN/hosts/client2‘ mit dem folgenden Befehl des Nano-Editors. Sie müssen sicherstellen, dass der Dateiname der Hostkonfiguration mit dem ‘Name’ des Hosts übereinstimmt, den Sie in der Datei ‘tinc.conf‘ definiert haben.

sudo nano /etc/tinc/testVPN/hosts/client2

Fügen Sie die folgenden Zeilen in die Datei ein. Die ‘Address‘ hier ist die externe IP-Adresse dieses Servers. Und die ‘Subnet‘ ist eine interne IP-Adresse, die verwendet wird, um Tinc VPN auszuführen. Sie können die IP-Adressen nach Ihren Gegebenheiten ändern und anpassen.

Address = 192.168.5.122  
Subnet = 10.0.0.3/32

Speichern Sie die Datei ‘/etc/tinc/testVPN/hosts/client2’ und schließen Sie sie, wenn Sie fertig sind.

Führen Sie als Nächstes den folgenden Befehl ‘tincd’ aus, um den RSA-öffentlichen und privaten Schlüssel zu generieren. Der RSA-öffentliche Schlüssel wird automatisch in der Hostkonfigurationsdatei ‘/etc/tinc/testVPN/hosts/client2‘ gespeichert, und der RSA-private Schlüssel wird in ‘/etc/tinc/testVPN/rsa_key.priv‘ gespeichert.

sudo tincd -n testVPN -K4096

Ausgabe:

generiere rsa-Schlüssel

Nachdem der RSA-öffentliche und private Schlüssel generiert wurde, erstellen Sie als Nächstes ein neues Bash-Skript, das verwendet wird, um das Tinc-VPN-Netzwerk zu aktivieren und zu deaktivieren.

Erstellen Sie ein neues Bash-Skript ‘/etc/tinc/testVPN/tinc-up‘ mit dem folgenden Befehl des Nano-Editors. Dieses Skript wird verwendet, um die Tinc-VPN-Netzwerkschnittstelle zu aktivieren.

sudo nano /etc/tinc/testVPN/tinc-up

Fügen Sie die folgenden Zeilen in die Datei ein. Stellen Sie sicher, dass Sie das Subnetz der IP-Adresse unten mit Ihrem definierten VPN-Netzwerksubnetz in der Datei ‘tinc.conf‘ ändern.

#!/bin/sh  
ip link set $INTERFACE up  
ip addr add 10.0.0.3/32 dev $INTERFACE  
ip route add 10.0.0.0/24 dev $INTERFACE

Speichern Sie die Datei ‘/etc/tinc/testVPN/tinc-up’ und schließen Sie sie, wenn Sie fertig sind.

Erstellen Sie nun ein neues Bash-Skript ‘/etc/tinc/testVPN/tinc-down‘, das verwendet wird, um die Tinc-VPN-Netzwerkschnittstelle zu deaktivieren.

sudo nano /etc/tinc/testVPN/tinc-down

Fügen Sie die folgenden Zeilen in die Datei ein.

#!/bin/sh  
ip route del 10.0.0.0/24 dev $INTERFACE  
ip addr del 10.0.0.3/32 dev $INTERFACE  
ip link set $INTERFACE down

Speichern Sie die Datei ‘/etc/tinc/testVPN/tinc-down‘ und schließen Sie sie, wenn Sie fertig sind.

Führen Sie nun den chmod-Befehl unten aus, um beide Bash-Skripte ‘/etc/tinc/testVPN/tinc-up‘ und ‘/etc/tinc/testVPN/tinc-down’ ausführbar zu machen.

sudo chmod +x /etc/tinc/testVPN/tinc-*

Sie können jetzt die Liste der Dateien im Verzeichnis ‘/etc/tinc/testVPN/‘ auf dem Knoten ‘client2‘ über den folgenden tree-Befehl überprüfen.

tree /etc/tinc/testVPN/

Sie sollten eine Ausgabe wie diese erhalten:

Liste der Dateien client2

Damit haben Sie die Tinc-VPN-Konfiguration auf dem dritten Server ‘client2‘ abgeschlossen. In den nächsten Schritten tauschen Sie den im Hostkonfigurationsdatei gespeicherten RSA-öffentlichen Schlüssel zwischen den Servern über SCP (Secure Copy via SSH) aus.

Schlüsselaustausch zwischen Hosts/Servern

In diesem Schritt kopieren Sie die Hostkonfigurationsdatei auf jedem Server gegenseitig über SCP. Dies umfasst den RSA-öffentlichen Schlüssel, der in der Hostkonfigurationsdatei gespeichert ist.

Im Folgenden sind die Details der Hostdateien aufgeführt, die Sie kopieren müssen:

  • Kopieren Sie die Hostdatei vom ‘tinc-ubuntu’-Server auf die client1- und client2-Server.
  • Kopieren Sie die Hostdatei vom ‘client1‘-Server auf die tinc-ubuntu- und client2-Server.
  • Kopieren Sie die Hostdatei vom ‘client2‘-Server auf die tinc-ubuntu- und client1-Server.

Das war’s.

Führen Sie auf dem ‘tinc-ubuntu’-Server den folgenden SCP-Befehl aus, um die Hostdatei ‘/etc/tinc/testVPN/hosts/tinc_ubuntu‘ auf die beiden client1- und client2-Server zu kopieren. Das Zielverzeichnis muss das ‘/etc/tinc/testVPN/hosts/‘-Verzeichnis sein.

scp /etc/tinc/testVPN/hosts/tinc_ubuntu [email protected]:/etc/tinc/testVPN/hosts/  
scp /etc/tinc/testVPN/hosts/tinc_ubuntu [email protected]:/etc/tinc/testVPN/hosts/

Ausgabe:

Auf dem ‘client1‘-Server führen Sie den folgenden SCP-Befehl aus, um die Hostdatei ‘/etc/tinc/testVPN/hosts/client1‘ auf die beiden tinc-ubuntu- und client2-Server zu kopieren. Das Zielverzeichnis muss das ‘ /etc/tinc/testVPN/hosts/‘-Verzeichnis sein.

scp /etc/tinc/testVPN/hosts/client1 [email protected]:/etc/tinc/testVPN/hosts/  
scp /etc/tinc/testVPN/hosts/client1 [email protected]:/etc/tinc/testVPN/hosts/

Ausgabe:

scp client1

Auf dem ‘client2‘-Server führen Sie den folgenden SCP-Befehl aus, um die Hostdatei ‘/etc/tinc/testVPN/hosts/client2‘ auf die beiden tinc-ubuntu- und client1-Server zu kopieren. Das Zielverzeichnis muss das ‘/etc/tinc/testVPN/hosts/‘-Verzeichnis sein.

scp /etc/tinc/testVPN/hosts/client2 [email protected]:/etc/tinc/testVPN/hosts/  
scp /etc/tinc/testVPN/hosts/client2 [email protected]:/etc/tinc/testVPN/hosts/

Ausgabe:

scp client2

Damit sehen Sie drei Hostdateien im Verzeichnis ‘/etc/tinc/testVPN/hosts/‘ auf jedem Server. Überprüfen Sie die Liste der Dateien in ‘/etc/tinc/testVPN/hosts/‘ mit dem folgenden tree-Befehl.

tree /etc/tinc/testVPN/hosts/

Ausgabe - Sie sollten die Hostdatei ‘tinc_ubuntu‘, ‘client1‘ und ‘client2‘ auf jedem Server sehen.

Liste der Hostdateien

Zu diesem Zeitpunkt haben Sie Tinc VPN auf allen Servern konfiguriert und die Hostdatei sowie den RSA-öffentlichen Schlüssel auf alle Server kopiert. Damit sind Sie bereit, die Tinc-VPN-Installation für Peer-to-Peer-Verbindungen zwischen mehreren Knoten/Servern zu überprüfen.

Testen des Peer-to-Peer-VPN-Servers

In diesem Schritt überprüfen Sie die Tinc-VPN-Installation, indem Sie Tinc manuell über den Befehl ausführen und von einem Server zum anderen mit der lokalen IP-Adresse der tun0-Schnittstelle vom Tinc-VPN-Server pingen.

Führen Sie den Tinc-VPN-Server auf jedem Server mit dem folgenden Befehl aus.

sudo tincd -n testVPN -D -d3

Im Folgenden finden Sie die detaillierte Ausgabe von drei Ubuntu-Servern tinc-ubuntu, client1 und client2.

teste tinc peer-to-peer vpn

Öffnen Sie als Nächstes eine neue Terminal-Sitzung und verbinden Sie sich mit dem ‘tinc-ubuntu‘-Server. Führen Sie dann den Ping-Befehl zur internen IP-Adresse von client1 ‘10.0.0.2’ und client2 ‘10.0.0.3’ aus.

ping 10.0.0.1 -c3  
ping 10.0.0.2 -c3

Wenn es erfolgreich ist, sollten Sie eine Antwort von jedem Server erhalten.

ping tinc-ubuntu

Öffnen Sie jetzt eine neue Terminal-Sitzung und verbinden Sie sich mit dem ‘client1‘-Server. Führen Sie dann den Ping-Befehl zur internen IP-Adresse von tinc-ubuntu ‘10.0.0.1’ und client2 ‘10.0.0.3’ aus.

ping 10.0.0.1 -c3  
ping 10.0.0.3 -c3

Wenn es erfolgreich ist, sollten Sie eine Antwort von jedem Server erhalten.

ping client1

Zuletzt öffnen Sie erneut die neue Terminal-Sitzung, verbinden Sie sich mit dem ‘client2‘-Server. Führen Sie dann den Ping-Befehl zur internen IP-Adresse von tinc-ubuntu ‘10.0.0.1’ und client1 ‘10.0.0.2’ aus.

ping 10.0.0.1 -c3  
ping 10.0.0.2 -c3

Wenn es erfolgreich ist, sollten Sie eine Antwort von jedem Server erhalten.

ping client2

Jetzt, da jeder Server über eine interne IP-Adresse von Tinc VPN mit dem anderen verbinden kann. Das bedeutet, dass die Bereitstellung von Tinc VPN zur Erstellung eines Peer-to-Peer-VPN-Servers abgeschlossen und erfolgreich ist.

Wechseln Sie zurück zu jeder Terminal-Sitzung und drücken Sie ‘Ctrl + \’, um den Terminal für den Tinc-VPN-Prozess zu schließen. Im nächsten Schritt starten und aktivieren Sie Tinc VPN als Systemd-Dienst.

Starten und Aktivieren des Tinc-VPN-Dienstes

Führen Sie das folgende Systemctl-Befehlsdienstprogramm aus, um den Tinc-VPN-Dienst zu starten und zu aktivieren. Stellen Sie sicher, dass Sie diesen Befehl auf allen Ihren Ubuntu-Servern ausführen. In diesem Beispiel ist der VPN-Name hier ‘testVPN‘. Sie können diesen Namen mit Ihrem bevorzugten Namen ändern.

Damit sollte der Tinc-VPN-Server im Hintergrund ausgeführt werden und auch automatisch beim Systemstart gestartet werden.

sudo systemctl start tinc@testVPN  
sudo systemctl enable tinc@testVPN

Überprüfen Sie den Tinc-VPN-Dienst, indem Sie das Systemctl-Befehlsdienstprogramm unten eingeben.

sudo systemctl status tinc@testVPN

Sie sollten eine Ausgabe wie diese erhalten - Die Ausgabe ‘aktiv (laufend)‘ bestätigt, dass das Tinc-VPN läuft, während die Ausgabe ‘…; aktiviert;…‘ bestätigt, dass das Tinc-VPN aktiviert ist und automatisch beim Systemstart ausgeführt wird.

starte tinc vpn dienst

Sie können auch die Schnittstelle tun0 überprüfen, die vom Tinc-VPN-Server erstellt wurde. Geben Sie den folgenden IP-Befehl auf jedem Server ein, um die Details der tun0-Schnittstelle zu überprüfen.

ip addr show tun0

Auf dem ‘tinc-ubuntu’-Server sollten Sie die tun0-Schnittstelle mit der IP-Adresse 10.0.0.1 sehen. Auf der Maschine ‘client1‘ sollten Sie die tun0-Schnittstelle mit der IP-Adresse 10.0.0.2 sehen. Schließlich sollten Sie auf der Maschine client2 die tun0-Schnittstelle mit der IP-Adresse 10.0.0.3 erhalten.

Fazit

In diesem Tutorial haben Sie gelernt, wie Sie ein Peer-to-Peer-VPN mit dem Tinc-VPN-Server auf Ubuntu 22.04-Servern erstellen und einrichten. Sie haben detaillierte Prozesse zum Einrichten von Tinc VPN mit aktivierter Firewall auf mehreren Ubuntu-Servern gelernt.

Tinc ist eine einfache, aber leistungsstarke VPN-Server-Software, die auf mehreren Betriebssystemen installiert werden kann. Sie können weitere Server/Knoten zu Ihrer aktuellen Tinc-VPN-Bereitstellung hinzufügen. Außerdem können Sie ein Mesh-VPN erstellen, ohne auf einen zentralen Knoten angewiesen zu sein.

Erfahren Sie mehr über den Tinc-VPN-Server in der offiziellen Dokumentation von Tinc.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.