WireGuard VPN: Grundlagen (2024)

FlashMovieShutterstock

WireGuard ist eine freie Software zum Aufbau eines virtuellen privaten Netzwerks (VPN). Mithilfe eines VPN öffnet man einen virtuellen Tunnel zwischen zwei Maschinen im Internet. Die Netzwerkverbindung läuft durch den Tunnel, so als wären die Maschinen direkt durch ein Netzwerkkabel verbunden. VPNs werden oft von großen Organisationen wie Forschungseinrichtungen, Ministerien und Unternehmen genutzt. So lässt sich der Zugriff auf bestimmte Ressourcen im Netzwerk regulieren und der Datenstrom der Nutzer nach außen hin abschotten.

Mit IPsec, OpenVPN, L2TP und PPTP existiert bereits eine Reihe an ausgereiften VPN-Protokollstapeln. Anbieter von VPN-Services bauen auf diesen Protokollen auf, um ihren Nutzern die Möglichkeit zu geben, den eigenen Internetverkehr durch das VPN zu leiten. Immer mehr VPN-Anbieter integrieren WireGuard aufgrund der Vorzüge des Protokolls in ihre Anwendungen.

Inhaltsverzeichnis

  1. Was ist WireGuard?
    1. Was sind die Features von WireGuard?
    2. Was sind die Vorteile von WireGuard?
  2. Wie funktioniert WireGuard?
  3. Erste Schritte mit WireGuard
    1. WireGuard auf dem eigenen System installieren
    2. WireGuard-Schlüssel erzeugen
    3. Netzwerkeinstellungen für WireGuard konfigurieren

Was ist WireGuard?

WireGuard ist eine Anwendung und ein Netzwerkprotokoll für den Aufbau verschlüsselter VPN-Tunnels. Die Software ist unter der GPLv2-Lizenz als freie Software lizensiert und plattformübergreifend verfügbar. WireGuard ist in den Sprachen „C“ und „Go“ geschrieben und läuft unter Windows, macOS, BSD, iOS und Android.

Mit WireGuard baut man einen verschlüsselten Tunnel auf. Datenströme werden durch den Tunnel geleitet und sind somit vor dem Zugriff Unbefugter geschützt. Neben dem Fokus auf starke Verschlüsselung bietet WireGuard Optimierungen für mobile Systeme und „Internet of Things (IoT)“-Geräte.

Seit dem Frühjahr 2020 ist WireGuard direkt in den Linux-Kernel integriert. Da Linux als Standard-Betriebssystem auf Milliarden von vernetzten Geräten weltweit läuft, kann WireGuard so gut wie überall eingesetzt werden. Der breiten Verwendung kommt ebenfalls zugute, dass die Software relativ schlank ist und nur geringe Anforderungen an die Hardware stellt.

Was sind die Features von WireGuard?

Das zentrale Feature des WireGuard-Protokolls ist das sogenannte Cryptokey Routing. Dabei werden dem öffentlichen Schlüssel eines Verbindungspartners die innerhalb eines Tunnels erlaubten IP-Adressbereiche zugeordnet. Eingehende Pakete eines Verbindungspartners werden mithilfe des öffentlichen Schlüssels entschlüsselt. Ein eingehendes Paket wird nach der Entschlüsselung nur dann zugestellt, wenn es von einer zum Schlüssel korrespondierenden IP-Adresse stammt. Andernfalls wird das Paket verworfen.

Anders als die etablierten VPN-Protokollstapel IPsec und OpenVPN handelt es sich bei WireGuard nicht um ein agiles Protokoll: Anstatt während der Handshake-Phase beim Verbindungsaufbau die zu nutzenden kryptografischen Grundlagen einzeln auszuhandeln, beschränkt sich WireGuard auf wenige Optionen. Die eingesetzten kryptografischen Funktionen werden zusammengefasst versioniert. Sollte eine der kryptografischen Grundlagen in der Zukunft kompromittiert werden, wird eine neue, sichere Version des WireGuard Protokolls veröffentlicht. Setzen beide Kommunikationspartner die neue Version ein, wird der Datenstrom abgesichert.

Zum Zeitpunkt der Artikelerstellung kommen die folgenden Protokolle und Verschlüsselungstechnologien zum Einsatz:

  • Noise protocol framework
  • Curve25519
  • ChaCha20
  • Poly1305
  • BLAKE2
  • SipHash24
  • HKDF

Was sind die Vorteile von WireGuard?

Als einer der größten Vorteile von WireGuard gilt die aufgeräumte Codebasis. Der Umfang des gesamten Kernel-Codes beläuft sich auf nur ca. 4.000 Code-Zeilen. Zum Vergleich: die Code-Größe einer Implementation von OpenVPN oder IPsec liegt bei ca. 100.00 bis 600.000 Zeilen. Eine kleinere Codebasis ist inhärent sicherer, da sich Bugs so leichter finden lassen und die Angriffsfläche minimiert wird.

Selbst der für seinen bissigen Schreibstil und gelegentliche Wutausbrüche bekannte Linux-Erfinder Linus Torvalds reagierte nach Inspektion der WireGuard-Codebasis mit ausdrücklichem Lob:

Zitat

„Maybe the code isn’t perfect, but I’ve skimmed it, and compared to the horrors that are OpenVPN and IPSec, it’s a work of art.“ – Quelle: netdev - Re: [GIT] Networking

Übersetzung: „Der Code ist vielleicht nicht perfekt, aber ich habe ihn überflogen, und verglichen mit dem furchtbaren Code von OpenVPN und IPSec handelt es sich um ein Kunstwerk.“

Neben der erhöhten Sicherheit bedingt die geringere Komplexität der Software auch eine höhere Performanz. WireGuard liefert in Benchmarks eine höhere Übertragungsgeschwindigkeit und niedrigere Latenz als konkurrierende Protokolle. Ferner ist WireGuard kein „schwatzhaftes“ Protokoll („it is not a chatty protocol“): Solange der Nutzer keine Daten durch den Tunnel schickt, ruht WireGuard. So wird weniger Strom verbraucht, was der Akkulaufzeit zugutekommt.

Die Energieeffizienz ist besonders wichtig für mobile Geräte, und auf diesem Gebiet ist WireGuard in mehrfacher Hinsicht gut aufgestellt. So unterstützt das Protokoll Roaming, also den automatischen Wechsel von WLAN zum Handynetz und vice versa. Sollte es dennoch zu einem Verbindungsabbruch kommen, ist der Wiederaufbau der Verbindung mit WireGuard für gewöhnlich schneller als mit konkurrierenden Protokollen.

Wie funktioniert WireGuard?

Vom Prinzip her handelt es sich bei WireGuard um ein dezentrales Peer-to-Peer-VPN-Protokoll. Anstatt zwingend einen Server zu benötigen, lässt sich mit WireGuard direkt ein Tunnel zwischen zwei Maschinen öffnen. Ein WireGuard-„Server“ ist einfach eine Maschine, auf der Verbindungskonfigurationen für mehrere Peers hinterlegt sind.

Der Verbindungsaufbau mit WireGuard funktioniert ähnlich wie bei Secure Shell (SSH): Die Nutzer („Peers“) erzeugen mit WireGuard öffentliche Schlüssel und tauschen diese untereinander aus. Mithilfe der Schlüssel authentifizieren sich die Peers gegenseitig und verschlüsseln die Datenpakete für das jeweilige Gegenüber.

Neben der Erzeugung der kryptografischen Schlüssel müssen auf jedem Peer verschiedene Netzwerkeinstellungen vorgenommen werden – siehe dazu unsere Anleitung zur Einrichtung von WireGuard weiter unten. Zum Datenaustausch werden auf den Peers erlaubte IP-Adressbereiche mit dem kryptografischen Schlüssel verknüpft. Nicht den erlaubten Adressbereichen entstammende Pakete werden verworfen. Der Datenversand mit WireGuard läuft über das User Datagram Protocol (UDP).

Auf der Maschine eines Peers wird die Konfiguration mithilfe des WireGuard-Kommandozeilen-Tools und weiterer, standardmäßig auf Linux vorhandener Bordmittel vorgenommen. Obwohl die Konfiguration der Software als relativ einfach gilt, dient WireGuard nur als Grundlage; eine auf dem Protokoll aufbauende App kann dem Nutzer bei den einzelnen Schritten der Konfiguration und des Verbindungsaufbaus unter die Arme greifen. Nutzer von kommerziellen VPN-Diensten kommen so auch ohne Kommandozeile in den Genuss des modernen VPN-Protokolls.

Erste Schritte mit WireGuard

Prinzipiell lässt sich WireGuard auf einem Linux-System mit geringem Aufwand installieren und konfigurieren. So können Sie sich z.B. einen eigenen VPN-Server mit Raspberry Pi einrichten. Jedoch unterscheidet sich das genaue Vorgehen je nach Einsatzzweck, eingesetztem Betriebssystem und bestehender Netzwerkumgebung. Wir können hier daher nur das ungefähre Vorgehen skizzieren. Bitte nutzen Sie unsere Anleitungen nur für Tests.

Tipp

Installieren Sie WireGuard auf dem IONOS vServer und schaffen Sie sich damit ein eigenes VPN.

WireGuard auf dem eigenen System installieren

Führen Sie die folgenden Befehle auf der Kommandozeile aus, um WireGuard auf Ihrem Linux-System zu installieren:

# für Ubuntu ab Version 19.10sudo apt install wireguard# für Ubuntu-Version unterhalb 19.10sudo add-apt-repository ppa:wireguard/wireguardsudo apt-get updatesudo apt-get install wireguard

Hinweis

Hier wird die Installation unter Ubuntu-Linux gezeigt. Auf anderen Systemen müssen Sie den Code ggf. anpassen.

WireGuard-Schlüssel erzeugen

Ähnlich wie bei SSH und PGP bilden kryptografische Schlüssel die Grundlage für den Einsatz von WireGuard. Wie üblich gibt es einen privaten Schlüssel, der unbedingt geheim zu halten ist. Ferner wird aus dem privaten Schlüssel ein öffentlicher Schlüssel erzeugt und mit Peers geteilt. Damit können die Peers Daten verschlüsseln und versenden. Schließlich nutzen Sie Ihren privaten Schlüssel, um die verschlüsselten Daten zu entschlüsseln.

Führen Sie die folgenden Befehle auf der Kommandozeile aus, um einen privaten und öffentlichen WireGuard-Schlüssel zu erzeugen:

# Verzeichnis für Schlüssel anlegen# ACHTUNG: nur für Testzwecke, da nicht abgesichert!mkdir ~/.wireguard/ && cd ~/.wireguard/# Dateirechte setzenumask 077# privaten Schlüssel erzeugenwg genkey > privatekey# öffentlichen Schlüssel aus dem privaten Schlüssel erzeugenwg pubkey < privatekey > publickey

Netzwerkeinstellungen für WireGuard konfigurieren

Bei der Installation von WireGuard und der Schlüssel-Erzeugung handelt es sich um grundlegende Vorbereitungen, die auf jedem System mehr oder weniger gleich ablaufen. Demgegenüber ist die Konfiguration von WireGuard abhängig von den existierenden lokalen Netzwerk-Einstellungen. Wir können hier daher nur das generelle Schema skizzieren und empfehlen Ihnen für eine tiefergehende Betrachtung die Quick-Start-Anleitung des WireGuard-Projekts.

Das generelle Vorgehen für die Einrichtung einer Netzwerk-Verbindung mit WireGuard folgt diesem Schema:

# WireGuard Netzwerk-Interface hinzufügenip link add dev wg0 type wireguard# IP-Adressen konfigurierenip address add dev wg0 192.168.2.1 peer 192.168.2.2# Netzwerk-Interface unter Nutzung der Konfigurationsdatei konfigurierenwg setconf wg0 myconfig.conf# Netzwerk-Interface aktivierenip link set up dev wg0

Fazit

WireGuard ist ein moderner und schlanker Anwärter auf die Position der in die Jahre gekommenen VPN-Protokollstapel IPsec und OpenVPN und könnte diese in absehbarer Zeit weitgehend ersetzen.

  • Tools
  • Sicherheit

Ähnliche Artikel

WireGuard VPN: Grundlagen (2)evvShutterstock

Raspberry Pi als VPN-Server einrichten: Tutorial mit OpenVPN

Wer seinen eignen VPN-Server einrichtet, kann von jeder Internetverbindung aus auf sein lokales Netzwerk zugreifen und sich zudem auch in öffentlichen WLANs sicherer und verschlüsselt im Internet bewegen. Dies Tutorial zeigt, dass bereits der Mini-Computer Raspberry Pi und das Programm OpenVPN ausreichen, um preiswert einen VPN-Server zu erstellen und zu betreiben.

Raspberry Pi als VPN-Server einrichten: Tutorial mit OpenVPN
WireGuard VPN: Grundlagen (2024)

FAQs

How do I know if WireGuard VPN is working? ›

To check if WireGuard Server is working properly

Enable the connection, check if the phone has Internet access and whether its IP address is the IP of your WireGuard Server. There are several common reasons cause failed: The Internet Service Provider doesn't assign you a public IP address, please check here.

Why not to use WireGuard? ›

It is extensible that new cryptographic primitives can be added. WireGuard does not have that. That means WireGuard will break at some point, because one of the cryptographic primitives will weaken or entirely break at some point.

How strong is WireGuard encryption? ›

Overall, WireGuard's encryption is far simpler and much less susceptible to downgrade attacks. Faster speeds. WireGuard is typically faster than OpenVPN because it uses efficient, modern cryptography, kernel-level operation for reduced overhead, and a simplified protocol structure that enhances performance. Less code.

Does WireGuard mask your IP? ›

The main drawback of the WireGuard protocol is that it was not built for anonymity and privacy. Its privacy is primarily questioned because it requires users to log their data. Instead of assigning a different IP address to the user, it gives the same IP address each time.

How do you check if your VPN is actually working? ›

How do I check if a VPN is working? Visit websites such as WhatIsMyIP or IPLocation to see your original IP address. After connecting to a VPN, revisit the IP address checking website to recheck your IP address. The VPN works if the displayed IP address differs from your original IP address.

How reliable is WireGuard? ›

WireGuard is a very secure protocol. While it uses shorter cryptographic keys than some previous protocols, it still provides strong encryption. A longer key takes more time to crack, but it would still take millions of years to brute force WireGuard's encryption keys.

Is anything better than WireGuard? ›

Verdict on Security

There are no known security flaws in either protocol. If security is your topmost priority, the conservative option is OpenVPN. It has simply been around much longer than WireGuard, gone through more third-party security audits, and has a far longer track record than WireGuard.

Can WireGuard be hacked? ›

VPN protocols are sets of rules that define how data and traffic are routed between your device and the VPN server. Protocols such as OpenVPN, WireGuard, or IKEv2 have no known vulnerabilities and are considered secure.

What are the limitations of WireGuard? ›

WireGuard explicitly does not support tunneling over TCP, due to the classically terrible network performance of tunneling TCP-over-TCP. Rather, transforming WireGuard's UDP packets into TCP is the job of an upper layer of obfuscation (see previous point), and can be accomplished by projects like udptunnel and udp2raw.

Which VPN has the highest encryption? ›

A closer look at the best VPNs for security
  • NordVPN. NordVPN has all the essential parts of a secure VPN. ...
  • ExpressVPN. Just like the providers above, ExpressVPN offers secure encryption, protocols, RAM-only servers, a kill switch, and an audited no-logs policy. ...
  • CyberGhost. ...
  • Private Internet Access. ...
  • ProtonVPN. ...
  • Mullvad.
Mar 29, 2024

Is WireGuard the best VPN? ›

WireGuard is a secure tunneling protocol. In fact, owing to its use of modern, well-vetted cryptography, WireGuard is one of the safest VPN protocols out there. Without compromising either the VPN server or your client device, an external attacker can't figure out much about your browsing.

What is the fastest VPN for WireGuard? ›

BEST WIREGUARD VPN:NordVPN is our #1 choice. It's the fastest VPN we've tested and comes with every feature a user could ask for including the extra secure NordLynx. If you disagree, take advantage of the risk-free, 30-day money-back guarantee. Read more in our full NordVPN review.

Can police track IP with VPN? ›

With a court order, police can request the ISP to provide subscriber details. VPNs, on the other hand, mask IP addresses by routing traffic through servers. However, if a VPN keeps logs or is compelled to disclose user info, IP addresses can be traced.

Can ISP see WireGuard traffic? ›

Your VPN protocol.

VPN protocols, such as OpenVPN, WireGuard®, or IKEv2/IPsec, are responsible for safe, stable, and fast connection between your device, VPN server, and the website you want to reach. Your ISP will see which VPN protocol you're using. But it won't reveal any of your private data.

Is WireGuard a full VPN? ›

WireGuard® is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPsec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN.

How do I enable WireGuard VPN? ›

How to get started with WireGuard VPN
  1. Sign up with UpCloud. ...
  2. Deploy a new cloud server. ...
  3. Installing WireGuard. ...
  4. IP forwarding. ...
  5. Configuring firewall rules. ...
  6. Generating private and public keys. ...
  7. Generate server config. ...
  8. Starting WireGuard and enabling it at boot.

Is WireGuard always on? ›

With on-demand, encrypted WireGuard® VPN connection will always be on your phone. It seamlessly creates a protected VPN connection to keep your device away from cyber threats once you leave your home WiFi environment, and use public WiFi or mobile cellular.

How do I run WireGuard VPN? ›

Step 1 - Configure the Wireguard Instance
  1. Go to VPN ‣ WireGuard ‣ Instances.
  2. Click + to add a new Instance configuration.
  3. Configure the Instance configuration as follows (if an option is not mentioned below, leave it as the default): Enabled. Checked. Name. Call it whatever you want (eg HomeWireGuard ) Public Key.

How do I access WireGuard VPN? ›

Log into your WireGuard VPN Server

If you would like to connect an additional device or perform any changes to your VPN server, then you would need to log into the server control panel. Open up your web browser and paste in your server's IP address and port and hit 'Enter'. This will now take you to the login page.

Top Articles
Latest Posts
Article information

Author: Msgr. Refugio Daniel

Last Updated:

Views: 5293

Rating: 4.3 / 5 (74 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Msgr. Refugio Daniel

Birthday: 1999-09-15

Address: 8416 Beatty Center, Derekfort, VA 72092-0500

Phone: +6838967160603

Job: Mining Executive

Hobby: Woodworking, Knitting, Fishing, Coffee roasting, Kayaking, Horseback riding, Kite flying

Introduction: My name is Msgr. Refugio Daniel, I am a fine, precious, encouraging, calm, glamorous, vivacious, friendly person who loves writing and wants to share my knowledge and understanding with you.