Wat is WireGuard?

WireGuard is een modern, high-performance VPN-protocol ontworpen voor eenvoud en snelheid. In tegenstelling tot oudere protocollen zoals OpenVPN of IPsec, gebruikt WireGuard geavanceerde cryptografie (Curve25519 voor sleuteluitwisseling, ChaCha20 voor versleuteling en Poly1305 voor authenticatie) en draait met minimale code — ongeveer 4.000 regels in vergelijking met honderdduizenden in legacy-oplossingen. Dit slanke ontwerp maakt het gemakkelijker om te controleren, sneller om verbindingen tot stand te brengen en betrouwbaarder bij netwerkveranderingen zoals het wisselen tussen Wi-Fi en mobiele gegevens.

WireGuard werkt door versleutelde point-to-point-tunnels tussen een server en een of meer clients te creëren. Elke zijde heeft een privésleutel en kent de openbare sleutel van zijn peers. Eenmaal geconfigureerd, stroomt verkeer naadloos door de tunnel, waarbij het protocol handshakes, sleutelrotatie en keepalive-pakketten automatisch afhandelt.

Hulpmiddelbeschrijving

Dit hulpmiddel genereert kant-en-klare WireGuard-configuratiebestanden voor zowel server- als clientzijde. Het maakt automatisch cryptografisch geldige X25519-sleutelparen aan, bouwt correct opgemaakt .conf-bestanden en stelt u in staat meerdere clients vanuit één interface te beheren. U kunt elk configuratiebestand rechtstreeks downloaden of een QR-code scannen voor snelle mobiele installatie.

Voorbeelden

Serverconfiguratie-uitvoer:

[Interface]
PrivateKey = aGVsbG93b3JsZC4uLi4uLi4uLi4uLi4uLi4uLi4=
Address = 10.0.0.1/24
ListenPort = 51820
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT
SaveConfig = true

[Peer]
PublicKey = Y2xpZW50cHVibGlja2V5Li4uLi4uLi4uLi4uLi4=
AllowedIPs = 10.0.0.2/32

Clientconfiguratie-uitvoer:

[Interface]
PrivateKey = Y2xpZW50cHJpdmF0ZWtleS4uLi4uLi4uLi4uLi4=
Address = 10.0.0.2/32
DNS = 1.1.1.1, 1.0.0.1

[Peer]
PublicKey = c2VydmVycHVibGlja2V5Li4uLi4uLi4uLi4uLi4=
Endpoint = vpn.example.com:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25

Functies

  • Genereert cryptografisch geldige X25519-sleutelparen rechtstreeks in de browser met behulp van Curve25519
  • Produceert downloadbare .conf-bestanden voor zowel server als alle clients
  • Toont QR-codes voor clientconfiguraties, waardoor onmiddellijke installatie op mobiele apparaten mogelijk is
  • Ondersteunt meerdere clients met automatische IP-adrestoewijzing
  • Configureerbare MTU, PostUp/PostDown-hooks, DNS en PersistentKeepalive per client

Opties uitgelegd

  • Servernaam — een label gebruikt in de configuratiebestandsopmerking en downloadbestandsnaam
  • Serverpoort — de UDP-poort waarop WireGuard luistert (standaard: 51820)
  • Server-IP-adres — het VPN-subnetadres voor de serverinterface (bijv. 10.0.0.1/24)
  • Servereindpunt — de openbare hostnaam of IP en poort waarmee clients verbinding maken
  • MTU — maximale transmissie-eenheidsgrootte; laat leeg om de systeemstandaard te gebruiken (meestal 1420)
  • PostUp / PostDown — shell-opdrachten uitgevoerd wanneer de interface wordt ingeschakeld of uitgeschakeld (meestal gebruikt voor iptables NAT-regels)
  • Toegestane IP's — IP-bereiken die de client door de tunnel routeert; 0.0.0.0/0, ::/0 routeert al het verkeer
  • DNS — DNS-servers die de client gebruikt terwijl deze verbonden is
  • PersistentKeepalive — interval in seconden voor keepalive-pakketten, nuttig voor clients achter NAT (standaard: 25)

Gebruiksscenario's

  • Het instellen van een zelf gehoste VPN-server op een cloud-instantie om al het verkeer van laptops en telefoons te versleutelen
  • Externe kantoornetwerken verbinden via een beveiligde site-to-site WireGuard-tunnel
  • Clientconfiguraties met QR-codes genereren voor snelle onboarding van teamleden of mobiele apparaten