Inleiding tot OpenVPN
05 oktober 2022 - César Daniel Barreto

Internet is net zo belangrijk als elke andere openbare dienst in de wereld van vandaag. Het eerste waar iedereen aan denkt bij het kopen van een nieuw huis of het openen van een bedrijf op een nieuwe locatie is een betrouwbare internetverbinding, gevolgd door elektriciteit, verwarming, vuilnisophaaldienst en (maar niet noodzakelijk) een telefoondienst.
Sommigen beweren misschien dat de term "derde wereld" onjuist en beledigend is. Dankzij programma's als "Eén laptop per kind" en initiatieven van bedrijven als Facebook en Google hebben veel zogenaamde derdewereldlanden nu toegang tot internet zonder stromend water of riolering.
Maar met het goede komt ook het slechte. Hoewel iedereen een website kan opzetten, een Facebookaccount kan aanmaken of een Twitteraccount kan openen, doet niet iedereen dat met goede bedoelingen, inclusief hackers en criminelen. Wanneer er veel gebruikers zijn, is er een verhoogd risico dat iemand het systeem probeert te misbruiken voor persoonlijk gewin.
OpenVPN is een open-source project dat begon in 2002 met de bedoeling om een volledige SSL VPN-oplossing te creëren. OpenVPN versleutelt gegevens die over netwerken worden verzonden, wat vooral belangrijk is als veel gebruikers zich op hetzelfde netwerk bevinden.
De geschiedenis van onderscheppingen en hoe ze zich in de loop der tijd hebben ontwikkeld
Vroeger kon je erop vertrouwen dat een bericht ongewijzigd bleef als het in een met was verzegelde brief werd afgeleverd door een betrouwbaar iemand. Naarmate de tijd verstreek, werd het onderscheppen van correspondentie echter eenvoudiger: de verzender kon het lezen of ermee knoeien voordat hij het doorgaf.
Dankzij technologische vooruitgang tijdens de Tweede Wereldoorlog konden beide partijen hun gegevens beter beschermen, bijvoorbeeld met de Enigma-machine en Navajo codekrakers. Na de oorlog gebruikte de Amerikaanse overheid deze en andere technieken om haar informatie te beschermen.
Naarmate de tijd verstreek en de technologie evolueerde, waren er nieuwe manieren nodig om gegevens veilig te houden, en dat is waar OpenVPN om de hoek komt kijken. OpenVPN gebruikt een combinatie van public-key cryptografie en SSL/TLS voor sleuteluitwisseling. OpenVPN kan worden uitgevoerd via User Datagram Protocol (UDP) of Transmission Control Protocol (TCP). OpenVPN biedt vele mogelijkheden, zoals het tunnelen van IPv4- of IPv6-verkeer, het draaien over één poort en meer.
Gemeenschapseditie & OpenVPN-tunnelingprotocol
OpenVPN is beschikbaar in twee versies: OpenVPN Gemeenschapseditiedat vrij en open-source is, en OpenVPN Tunneling Protocol, wat een commercieel product is.
OpenVPN Gemeenschapseditie
OpenVPN is een open-source project waaraan iedereen kan bijdragen en draait onder een GPL-licentie. Het opzetten van CE is gratis als je bekend bent met Linux en de opdrachtregelinterface.
De OpenVPN Community Edition kan worden gedownload van de OpenVPN website.
OpenVPN-tunneling protocol
Het OpenVPN-tunnelingprotocol gebruikt SSL-encryptie om te garanderen dat de gegevens beschermd zijn. Dit komt omdat AES-256 encryptie wordt gebruikt, wat een standaard is die wordt gebruikt door de Amerikaanse overheid. De code voor audits is voor iedereen beschikbaar. Dit betekent dat mensen kwetsbaarheden kunnen vinden en verhelpen. Daarnaast zorgt het protocol voor snellere verbindingen en kan het langs de meeste firewalls.
Andere voordelen van het OpenVPN Tunneling Protocol zijn onder andere:
- Ondersteunt: Windows, macOS, Linux, iOS, Android
- Verbindt: Tot 5 apparaten met hogere snelheden met OpenVPN 2.4P
- Tunneling: Het OpenVPN-tunnelingprotocol kan door firewalls en NAT's tunnelen
- API: Gebruiksvriendelijke API voor ontwikkelaars
Wat is een VPN?
Een beheerder kan een paar PC's op verschillende netwerken samenvoegen om de illusie te creëren dat ze hetzelfde lokale netwerk delen. De machines kunnen zich in dezelfde kamer bevinden, aan weerszijden van de wereld of gebruik maken van verschillende verbindingstypes, zoals draadloze uplinks, satelliet- en inbelverbindingen.
De letter "P" in VPN staat voor privacy, dus het virtuele netwerk wordt een VPN genoemd. De (VPN-)tunnel verwijst naar netwerkverkeer dat door een VPN reist, terwijl al het andere verkeer buiten de tunnel wordt genoemd.
De volgende grafiek toont hoe het netwerkverkeer door verschillende delen van een netwerk en het internet reist. Omdat HTTPS en SSH veiligere communicatieprotocollen zijn, is het analyseren van dit soort gegevens veel eenvoudiger. Iemand moet het netwerkverkeer aanvallen om te bepalen welk type verbinding wordt gemaakt van welke computer naar welke server, zelfs als ze gezien kunnen worden.
Wanneer een VPN wordt gebruikt, is het verkeer binnen de tunnel niet langer identificeerbaar.
Welk verkeer kan worden omgeleid via een VPN?
Het virtuele privénetwerk (VPN) kan elk type verkeer versleutelen en ondertunnelen, inclusief foto's, films, surfen op het web, e-mailen en sms'en. Enkele populaire programma's die VPN's gebruiken zijn:
Pinautomaten: Door gebruik te maken van een VPN kunnen geldautomaten met verhoogde veiligheid verbinding maken met banksystemen.
Openbaar Wi-Fi: Openbare Wi-Fi-netwerken zijn potentiële broeinesten voor beveiligingsaanvallen. Door een VPN te gebruiken, kun je je verkeer versleutelen zodat niemand je gegevens kan bespioneren.
Thuisnetwerken: Je kunt een VPN gebruiken om overal verbinding te maken met je thuisnetwerk. Dit is vooral handig als je een smart home hebt met apparaten die verbonden moeten worden met je thuisnetwerk, zoals een beveiligingscamera of een domoticasysteem.
Landelijke censuur omzeilen: Voor mensen die in onderdrukkende regimes leven, zoals Noord-Korea of China, is censuur door overheidsblokkades een dringende zorg. De "Grote Firewall van China" verhindert burgers toegang te krijgen tot de buitenwereld en nieuws en informatie te krijgen die tot opstand zouden kunnen aanzetten-VPN's bieden een manier om deze beperkingen te omzeilen.
Zakelijke netwerken: Bedrijven en andere organisaties kunnen een VPN gebruiken om meerdere kantoorlocaties of zelfs hele datacenters met elkaar te verbinden. Zo kunnen ze de communicatie en samenwerking tussen werknemers verbeteren en tegelijkertijd gevoelige gegevens beschermen.
GeoIP-diensten: Verschillende websites, waaronder Hulu, YouTube en Netflix, gebruiken GeoIP-databases en andere gegevens om inhoud te leveren op basis van locatie. U kunt toegang krijgen tot materiaal dat niet beschikbaar is in uw regio door uw computerverbinding te "stuiteren" via een VPN-server die zich dichter bij de gewenste geografische regio bevindt. Daarnaast beschermt een VPN u tegen eventuele juridische sancties in verband met het bekijken van verboden films of tv-programma's waar auteursrecht op rust.
De privétunnel is volledig afgesloten van het openbare internet. Hoewel het VPN zelf over het internet reist zoals in de afbeelding hierboven, kunnen apparaten langs de route alleen het VPN-verkeer zien; ze weten niet wat er binnen de beveiligde tunnel wordt verzonden. Dat komt omdat een VPN niet alleen het verkeer binnen het VPN versleutelt, maar ook individuele gegevensstromen van andere gebruikers buiten het VPN. Met andere woorden, zelfs als iemand in staat zou zijn om een van deze gegevensstromen te onderscheppen, zouden ze niet in staat zijn om het te decoderen omdat het VPN het nog steeds zou versleutelen.
De routers en firewalls aan beide kanten creëren de tunnel. Als je geen speciale maatregelen neemt om VPN-verkeer te controleren, zal al het netwerkverkeer dat door de VPN-tunnel gaat alle gebruikelijke beveiligingsmaatregelen overslaan.
Gegevensencryptie en -verificatie
VPN's gebruiken versleuteling en verificatie om te voorkomen dat andere mensen je gegevens kunnen zien. Versleuteling maakt de gegevens moeilijk te begrijpen en verificatie zorgt ervoor dat alleen de juiste mensen de gegevens kunnen zien.
De eerste beveiligingslaag is authenticatie, die controleert of alleen bevoegde gebruikers toegang hebben tot de dienst. Dit kan gedaan worden met certificaten voor elke gebruiker of een gebruikersnaam en wachtwoord. Daarna kunnen gebruikers hun eigen beperkingen instellen, zoals bepaalde routes of firewallinstellingen. Deze zijn over het algemeen beperkt tot één installatie; ze kunnen echter worden aangepast.
Ten tweede moeten we het communicatiekanaal beter beschermen. Om dit te doen, zullen we elk pakket dat wordt verzonden ondertekenen. Dit betekent dat elk systeem controleert of de VPN-pakketten die het ontvangt op de juiste manier zijn ondertekend. Door pakketten die versleuteld zijn te verifiëren, kan een systeem verwerkingstijd besparen door pakketten die niet aan de verificatiecriteria voldoen niet te ontsleutelen. Als we de ondertekeningssleutels veilig houden, voorkomt dit denial-of-service aanvallen!
PPTP vs OpenVPN
PPTP (Point-to-Point Tunneling Protocol) is ontwikkeld door Microsoft en is een van de oudste en meest gebruikte VPN-protocollen. OpenVPN is iets moderner en kan veiliger zijn als het correct wordt geconfigureerd.
OpenVPN gebruikt SSL/TLS voor encryptie, dezelfde technologie die uw webbrowser gebruikt om verbinding te maken met beveiligde websites. OpenVPN is flexibeler en kan worden geconfigureerd voor verschillende gebruikssituaties, terwijl PPTP zeer eenvoudig in te stellen is maar minder flexibel.
Hoewel OpenVPN veiliger is dan PPTP, kan het moeilijker zijn om op te zetten. Als u het niet gemakkelijk vindt om een VPN te configureren, kunt u beter PPTP gebruiken.
Hoe gebruik je OpenVPN?
Voor Windows-platforms
Eerst moet je de OpenVPN-client downloaden. Windows- en Mac-gebruikers kunnen de nieuwste versie, V3, vinden, hier.
Nadat u de OpenVPN-client hebt geïnstalleerd, start u deze en importeert u het .ovpn-bestand uit de
Zodra u de OpenVPN-client hebt geïnstalleerd, moet u een configuratiebestand downloaden. Dit bestand vertelt de OpenVPN-client hoe hij verbinding moet maken met de VPN-server. U kunt dit bestand krijgen van uw VPN-provider.
Zodra u het configuratiebestand hebt gedownload, opent u het met de OpenVPN-client. De OpenVPN-client vraagt u om uw gebruikersnaam en wachtwoord. Nadat u deze hebt ingevoerd, maakt de OpenVPN-client verbinding met de VPN-server.
OpenVPN draait nu op de achtergrond. U kunt dit controleren door uw IP-adres te controleren. Ga hiervoor naar watismijnip.nl. Je zou moeten zien dat je IP-adres veranderd is.
Voor macOS-platforms
Als je een Mac gebruikt, kun je de OpenVPN-client voor macOS gebruiken. De nieuwste versie kan worden gedownload hier.
Zodra u de OpenVPN-client hebt geïnstalleerd, moet u een configuratiebestand downloaden. Dit bestand vertelt de OpenVPN-client hoe hij verbinding moet maken met de VPN-server. U kunt dit bestand krijgen van uw VPN-provider.
Nadat u het configuratiebestand hebt gedownload, opent u het met de OpenVPN-client. De OpenVPN-client zal u om uw gebruikersnaam en wachtwoord vragen. Nadat u deze hebt ingevoerd, maakt de OpenVPN-client verbinding met de VPN-server.
OpenVPN draait nu op de achtergrond. U kunt dit controleren door uw IP-adres te controleren. Ga hiervoor naar whatismyip.com. Je zou moeten zien dat je IP-adres is veranderd.
Voor Linux-platforms
Als je Linux gebruikt, kun je de OpenVPN-client voor Linux gebruiken. De nieuwste versie kan worden gedownload hier.
Installatie voor Debian en Ubuntu
Als je Debian of Ubuntu gebruikt, kun je OpenVPN installeren met het volgende commando:
- Open de Terminal door op ctrl + alt + T
- Voer het volgende commando in de Terminal in:
sudo apt apt-transport-https installeren
. Voer vervolgens het root-wachtwoord in. - Voer het volgende commando in:
sudo wget https://swupdate.openvpn.net/repos/openvpn-repo-pkg-key.pub
. Dit zal de OpenVPN repository sleutel downloaden die gebruikt wordt door de OpenVPN 3 Linux pakketten. - Voer het volgende commando in de Terminal in:
sudo apt-key toevoegen openvpn-repo-pkg-key.pub
- Voer het volgende commando in de Terminal in:
sudo wget -O /etc/apt/sources.list.d/openvpn3.list https://swupdate.openvpn.net/community/openvpn3/repos/openvpn3-$DISTRO.list
. Afhankelijk van uw Debian/Ubuntu-distributie moet u het volgende vervangen $DISTRO met de juiste releasenaam uit de onderstaande tabel. - Voer het volgende commando in de Terminal in:
sudo apt update
- Voer het volgende commando in de Terminal in:
sudo apt installeer openvpn3
. Deze code installeert het OpenVPN 3 pakket.
Installatie met .ovpn-profiel
Als u een OpenVPN-profiel (.ovpn-bestand) van uw VPN-provider hebt, kunt u dit profiel gebruiken om verbinding te maken met de VPN-server.
- Om een eenmalig configuratieprofiel te maken, typ je het volgende commando in Terminal:
openvpn3 session-start --config ${MY_CONFIGURATION_FILE}.
- Typ het volgende commando in de Terminal om een configuratiebestand te importeren en een VPN-sessie te starten:
openvpn3 config-import --config ${MY_CONFIGURATION_FILE}
. - Gebruik het volgende commando om een nieuwe VPN-verbinding te maken vanuit een geïmporteerd profiel:
openvpn3 session-start --config ${CONFIGURATION_PROFILE_NAME}
.
Installatie voor Red Hat Enterprise Linux of Scientific Linux
Als u Red Hat Enterprise Linux of Scientific Linux 7 gebruikt, kunt u OpenVPN installeren met het volgende commando:
- Ga naar de zoekbalk en typ "terminal."
RHEL/CentOS 6:sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
RHEL/CentOS 7:
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Op RHEL 7 wordt ook aangeraden om de optionele, extra en HA repositories in te schakelen, omdat EPEL-pakketten afhankelijk kunnen zijn van pakketten uit deze repositories:sudo subscription-manager repos --enable "rhel-*-optional-rpms" --enable "rhel-*-extras-rpms" --enable "rhel-ha-for-rhel-*-server-rpms".
RHEL/CentOS 8:
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Schakel de vereiste services in op Red Hat 8.codeready-builder-for-rhel-8-${ARCH}-rpms repository omdat EPEL-pakketten hiervan afhankelijk kunnen zijn: sudo ARCH=$( /bin/arch ) gevolgd door sudo subscription-manager repos --enable "codeready-builder-for-rhel-8-${ARCH}-rpms".
Daarnaast is het voor CentOS 8 gebruikers aan te raden om de PowerTools repository te activeren, omdat sommige EPEL pakketten afhankelijk kunnen zijn van aanvullende pakketten uit deze repository:
sudo dnf config-manager --set-enabled PowerTools
- Installeer eerst de module yum copr. Voer hiervoor het volgende commando uit:
sudo yum installeer yum-plugin-copr
. - Zet de OpenVPN 3 Copr repository aan met de Copr module geactiveerd. Gebruik hiervoor het volgende commando:
sudo yum copr inschakelen dsommers/openvpn3
- Na de installatie kan de OpenVPN 3 Linux-client worden gestart met het volgende commando:
sudo yum installeer openvpn3-client
OpenVPN is een krachtig en flexibel hulpmiddel dat kan worden gebruikt om uw hele internetverbinding te beveiligen. Het is belangrijk om de basisbeginselen van de werking van VPN's te begrijpen voordat u er een gaat gebruiken, maar als u dat eenmaal doet, kan OpenVPN een geweldige manier zijn om uw gegevens veilig te houden.

César Daniel Barreto
César Daniel Barreto is een gewaardeerd schrijver en expert op het gebied van cyberbeveiliging, die bekend staat om zijn diepgaande kennis en zijn vermogen om complexe onderwerpen op het gebied van cyberbeveiliging te vereenvoudigen. Met zijn uitgebreide ervaring in netwerk beveiliging en gegevensbescherming draagt hij regelmatig bij aan inzichtelijke artikelen en analyses over de nieuwste cyberbeveiligingstrends, waarmee hij zowel professionals als het publiek voorlicht.