keekbe

PiVPN op een Raspberry Pi: je eigen WireGuard-server in een klein kastje

Met PiVPN wordt een Raspberry Pi een VPN-server met WireGuard of OpenVPN. PiVPN is een verzameling scripts die de installatie en het beheer regelen: één commando installeert de server, pivpn add maakt een profiel per toestel en pivpn -qr toont de QR-code voor de gsm. Het werkt ook op andere systemen met Debian of Ubuntu. Sinds april 2024 wordt het project op best-effort-basis onderhouden. Deze gids legt uit wat je nodig hebt, hoe de installatie verloopt en wat je daarna zelf bijhoudt.

Of: een klein wachthuisje naast een grote poort

Wie zelf een VPN-server wil bouwen zonder een nieuwe router of NAS te kopen, komt snel bij de Raspberry Pi uit: een computer op een printplaat van ongeveer creditcardformaat, die dag en nacht kan blijven draaien. PiVPN maakt er een VPN-server van, met WireGuard of OpenVPN, zonder dat je de configuratie zelf moet schrijven.

Het korte antwoord: het werkt, het vraagt weinig materiaal en je leert er veel van. De prijs betaal je in onderhoud. Bij een router of NAS werkt de fabrikant de software bij; bij een Raspberry Pi ben jij de fabrikant, de beheerder en de helpdesk.

WireGuard-server op een Raspberry Pi: wat je nodig hebt

PiVPN raadt de recentste versie van Raspberry Pi OS Lite aan, de versie zonder grafische omgeving. Het werkt volgens de makers ook op de meeste systemen met Debian of Ubuntu, zelfs op een virtuele server bij een cloudprovider. Die laatste brengt je wel niet in je kantoornetwerk: een VPN-server in een datacenter is een uitgang naar het internet, geen ingang naar je eigen kast.

Voor een VPN naar kantoor heb je nodig:

  • een Raspberry Pi met Raspberry Pi OS Lite, met een netwerkkabel aan de router;
  • een vast lokaal IP-adres voor de Pi, bijvoorbeeld met een DHCP-reservering op je router, zodat de doorgestuurde poort hem altijd vindt;
  • een doorgestuurde UDP-poort voor WireGuard op je router (in de voorbeelden van PiVPN is dat 51820);
  • een publiek IP-adres, of een DNS-naam die ernaar verwijst.

De installatie

De standaardinstallatie is één commando:

1
curl -L https://install.pivpn.io | bash

Dat commando haalt een script van het internet en voert het meteen uit. Wie eerst wil lezen wat hij uitvoert, kan de repository klonen en het script auto_install/install.sh openen voor hij het start; de README beschrijft die methode ook.

Het script zet de server op en bewaart de instellingen in een configuratiebestand. Een van die instellingen is het adres waarop toestellen de server zoeken: het publieke IP-adres of een DNS-naam, in de variabele pivpnHOST in /etc/pivpn/wireguard/setupVars.conf. Verander je dat adres later, dan moet je volgens de documentatie van PiVPN ook de regel Endpoint aanpassen in de profielen die je al uitdeelde. Een DNS-naam is dus handiger dan een IP-adres dat kan veranderen.

Toestellen toevoegen en intrekken

Daarna beheer je alles met het commando pivpn:

CommandoWat het doet
pivpn addeen profiel aanmaken voor een nieuw toestel
pivpn -qrde QR-code van een profiel tonen, voor de WireGuard-app op de gsm
pivpn listalle profielen tonen
pivpn -ctonen welke toestellen nu verbonden zijn
pivpn removeeen profiel verwijderen, zodat dat toestel niet meer binnen kan
pivpn debugeen foutopsporing starten
pivpn -bkeen back-up maken van de configuratie en de profielen
pivpn -upde scripts van PiVPN bijwerken

WireGuard zelf werkt bij via de pakketbeheerder van het systeem, zoals andere software. Een profiel per toestel is geen detail: gaat er een laptop verloren, dan trek je met pivpn remove alleen die ene sleutel in.

Een project op best-effort-basis

In april 2024 publiceerde de maintainer versie 4.6.0 met als titel „The end”: PiVPN zou stoppen. Ruim een week later volgde versie 4.6.1, met de mededeling dat PiVPN op best-effort-basis onderhouden blijft. Het script wordt aangepast aan nieuwe versies van de besturingssystemen, maar grote nieuwe functies zijn onwaarschijnlijk, tenzij iemand ze zelf aanlevert. Sindsdien verschenen nog nieuwe versies; op 12 november 2026 was de recentste 4.11.1, uit september 2025.

Wat betekent dat voor je zaak? De VPN-software zelf, WireGuard of OpenVPN, komt uit de pakketbronnen van je besturingssysteem en krijgt daar zijn beveiligingsupdates. PiVPN is vooral de installatiehulp en het beheercommando. Ik zou het zo bekijken: een handig gereedschap, geen product met een leverancier erachter. Zet automatische beveiligingsupdates aan op de Pi, en maak met pivpn -bk een back-up van je configuratie.

Kmo-Kristof: Een computertje zo groot als een bankkaart als VPN-server. Wat kan er misgaan?

Security-Sofie: Niets, zolang iemand het bijhoudt.

Kmo-Kristof: Wie?

Security-Sofie: Dat is de vraag die je stelt voor je het koopt. Niet erna.

Voor wie het past

Een zelfstandige IT-consultant die thuis al een paar Linux-toestellen beheert, zet dit zonder veel moeite op en weet hoe hij het bijhoudt. Een kmo van tien mensen zonder iemand die Linux kent, kiest beter een router of NAS waarvan de fabrikant de updates verzorgt, of een dienst die het beheer overneemt.

De poort op je router

De Pi werkt pas als je router de WireGuard-poort naar hem doorstuurt. Hoe dat bij de Belgische providers gaat, en wat je doet zonder publiek IP-adres, staat bij poort openzetten voor de Pi.

Al een NAS in huis?

Heb je een Synology NAS, dan kan die zelf VPN-server spelen, zonder extra toestel. De mogelijkheden staan bij een Synology NAS op afstand.

Geen poort, geen Pi

Kun je geen poort openzetten, of wil je geen server onderhouden, dan is een mesh-VPN een alternatief. Dat lees je bij Tailscale of ZeroTier.