ID.nl logo
Chatten zonder pottenkijkers
© Reshift Digital
Huis

Chatten zonder pottenkijkers

Je privacy op internet ligt al jaren ernstig onder vuur: bedrijven en overheden proberen alles mee te lezen. Met de juiste opensource-tools maak je het pottenkijkers echter knap lastig om je privégesprekken te volgen. In deze cursus pakken we je chatverkeer aan, zodat conversaties privé blijven.

Als je in Skype (of vroeger Windows Live Messenger) chatgesprekken voert, sta je er waarschijnlijk niet bij stil dat die gesprekken onderschept kunnen worden. Door andere mensen op hetzelfde netwerk, door Microsoft of door overheids- en veiligheidsdiensten. Een chatgesprek is dan ook niet zo privé als je zou denken.

Zoals we in het vorige deel van deze cursusreeks al beargumenteerden, krijg je meer zekerheid dat de softwaremaker je niet bespioneert als je voor opensource-software kiest. Daarom chat je maar beter met een opensource-chatprogramma zoals Pidgin, dat niet alleen voor Windows, maar ook voor OS X en Linux bestaat.

Dat volstaat echter niet om overheden of spionnen op je netwerk tegen te gaan. Daarvoor heb je encryptie nodig. Dat kunnen we in principe met een systeem als OpenPGP, dat we vorige maand gebruikten om je e-mails te versleutelen. Voor onze chatgesprekken kiezen we echter voor een systeem dat veel verder gaat: Off-the-Record Messaging (OTR).

©PXimport

Vrees je achterdeurtjes in je chatsoftware, kies dan voor een opensource-programma zoals Pidgin.

Off-the-Record

Veel (zogenoemde asymmetrische) encryptiesystemen hebben twee eigenschappen: ze kunnen een bericht versleutelen zodat onbevoegden het niet kunnen lezen (encryptie) en ze kunnen je verzekeren dat je te maken hebt met de juiste persoon (authenticatie). OpenPGP maakt bijvoorbeeld beide aspecten mogelijk.

Maar OTR gaat verder dan OpenPGP. Als een onbevoegde een van de gebruikte OTR-sleutels te pakken krijgt, kan die daarmee je vorige versleutelde conversaties niet ontcijferen. Alles wat je ooit via OTR gezegd hebt, blijft dus gegarandeerd geheim.

Daarnaast hebben OTR-boodschappen geen digitale handtekening. Tijdens een conversatie ben je wel zeker van elkaar dat je met de juiste persoon te maken hebt, maar zodra een conversatie over is, kan niemand bewijzen dat de berichten die je ingetypt hebt van je afkomstig zijn. Vandaar ook de naam 'Off-the-Record' voor het systeem: het is ideaal voor journalisten en klokkenluiders om conversaties te voeren, waarvan ze later liever niet als bron aangewezen worden.

©PXimport

Off-the-Record Messaging (OTR) biedt meer garanties voor je privacy dan OpenPGP.

Pidgin

We installeren eerst het chatprogramma Pidgin, dat gratis te downloaden is. Het installatieprogramma ondersteunt ook Nederlands en kiest automatisch Nederlands als de taal voor Pidgin. Als je spellingscontrole in je conversaties wil, moet je nog wel Dutch aanvinken. Pidgin ondersteunt allerlei chatnetwerken. Je kunt bijvoorbeeld je Microsoft-account (vroeger je account bij Windows Live Messenger) in Pidgin gebruiken, je Google Talk-account of zelfs nog ICQ.

Na de installatie voeg je het account toe waarmee je veilig wil chatten. Let op: om OTR te gebruiken, moet je gesprekspartner een account op hetzelfde netwerk hebben. Je kunt dus niet via je Microsoft-account chatten met een vriend die Google Talk gebruikt. Zodra je account is aangemaakt, zie je je contactpersonen die online zijn. Probeer eens of chatten werkt.

Als dit lukt, kunnen we encryptie inschakelen. Daarvoor download je eerst de plug-in pidgin-otr van de website van OTR. Na installatie open je in het menu Extra van Pidgin Plug-ins en vink je het vakje bij Off-the-Record Messaging aan. Klik dan onderaan op Plug-in instellen. Kies nu in de lijst het account waarmee je veilig wil chatten. De standaard OTR-instellingen laat je maar beter staan, want die zijn prima. Zo worden privégesprekken die je via OTR voert niet gelogd, anders kan de inhoud immers nog altijd gelekt worden.

Wat je wel één keer per chataccount moet doen, is op Genereer klikken. Daarmee creëer je een privésleutel waarmee je conversaties versleuteld worden. Wanneer dat gebeurd is, staat in het venster de 'vingerafdruk' van je sleutel in plaats van Geen sleutel gevonden.

©PXimport

Voeg een chataccount toe in Pidgin.

©PXimport

Configureer de OTR-plug-in van Pidgin om je gesprekken veilig te houden.

Veilig chatten op Android en iOS

Zodra je veilig chatten op je computer gewend bent, wil je uiteraard ook hetzelfde op je smartphone. Gelukkig bestaan er wel enkele apps met ondersteuning voor OTR. De bekendste is ChatSecure, die zowel voor Android (vroeger onder de naam Gibberbot) als voor iOS bestaat. ChatSecure is opensource en compatibel met alle desktop-clients die OTR ondersteunen, maar heeft wel enkel de chatprotocols XMPP en AIM ingebouwd.

Google Talk (en diens opvolger Google Hangouts) zijn echter gebaseerd op XMPP, dus zolang jij en je gesprekspartner een Google-account hebben, kun je met ChatSecure op een veilige manier chatten. De eerste keer dat je de app opstart, kiest je je Google-account. Daarna verschijnen je contactpersonen in je vriendenlijst. Je kunt beginnen met chatten, maar zult een melding zien dat de identiteit van je gesprekspartner niet geverifieerd is. Druk daarvoor op de menuknop en dan op Verify. Ga na of de getoonde vingerafdruk juist is en bevestig.

©PXimport

Ook op Android en iOS kun je veilig chatten, dankzij de opensource-app ChatSecure.

Gesprek starten

Dubbelklik nu op je contactpersoon in de vriendenlijst om een gesprek te beginnen. Als zowel jij als je contactpersoon de OTR-plug-in geïnstalleerd hebben en een sleutel aangemaakt hebben, zie je onderaan rechts een knop Niet privé. Dat is het teken dat je conversatie op dit moment niet versleuteld wordt. Klik daarom op het knopje en kies Start privé gesprek. Wanneer je nu een boodschap typt, krijgt je gesprekspartner die te zien. Op de achtergrond wisselen de OTR-plug-ins van jou en van je gesprekspartner sleutels uit en versleutelen ze de rest van de conversatie, waardoor die niet af te luisteren is door pottenkijkers.

De status onderaan is nu echter veranderd van Niet privé naar Onbekend. Dat betekent dat je nog niet zeker weet of je contactpersoon wel is wie hij beweert te zijn. Pidgin geeft dan ook de melding dat je je contactpersoon maar beter kunt authentiseren. Klik daarvoor rechtsonder in het gespreksvenster op Onbekend en kies dan Authentiseer vriend. Dat authentiseren kan op drie manieren. Als je Vraag en antwoord kiest, dan vul je een vraag in die enkel je contactpersoon kan beantwoorden en geeft het antwoord in, waarna Pidgin die vraag stelt en je contactpersoon enkel toelaat als het antwoord overeenkomt.

Kies je voor de optie Gedeeld geheim, dan moet je beiden dezelfde wachtwoordzin ingeven. Een derde optie is om de vingerafdruk van de privésleutel van je contactpersoon te verifiëren. Klik tot slot op Authentiseer. Als je contactpersoon de overeenkomende gegevens ingeeft, is de authenticatie succesvol en verandert de status van het gesprek naar Privé.

©PXimport

Je gesprek wordt wel versleuteld, maar je weet nog altijd niet zeker wie je contactpersoon is.

©PXimport

Authentiseer je contactpersoon, zodat je zeker weet dat je met de juiste persoon chat.

Chatprogramma's met ingebouwde OTR

Bij Pidgin moet je OTR nog als plug-in installeren, maar sommige chatprogramma's beschikken standaard al over ondersteuning voor OTR. Gebruik je bijvoorbeeld Adium onder OS X, dan is OTR daar eenvoudig in te schakelen door eerst een privésleutel te genereren en dan op het icoontje van de sleutel te klikken. En ook Jitsi, waarop we in Computer!Totaal 2 ingaan, ondersteunt OTR om veilig te chatten.

Blijf echter weg van programma's met een zelfontwikkeld encryptiesysteem. Goede encryptie is immers extreem moeilijk te creëren. Zo biedt Trillian bijvoorbeeld met SecureIM niet eens authenticatie, maar enkel encryptie, en dan nog een heel zwakke soort die gemakkelijk te kraken is. Bovendien kun je dan ook niet rekenen op de off-the-record eigenschappen van OTR. De Nederlander Thijs Alkemade, de hoofdontwikkelaar van Adium, ontdekte dat de encryptie van WhatsApp elementaire fouten bevat. Je mag er dus van uitgaan dat je WhatsApp-berichten niet privé zijn.

Opletten als je veilig wil chatten

Chatten met OTR is niet zo moeilijk. Je hoeft immers maar één keer een privésleutel voor je account aan te maken en het authentiseren hoef je maar één keer bij elke contactpersoon te doen. Daarna zijn de vingerafdrukken van de sleutels van geauthentiseerde vrienden in de instellingen van de OTR plug-in te zien in het tabblad Bekende vingerafdrukken. Het enige waarin een gesprek met OTR daarna verschilt van een niet-beveiligd gesprek is de status. Als een gesprek als niet-privé aangeduid staat, gaat het om een gewoon onversleuteld chatgesprek. En als je contactpersoon geen OTR-plug-in heeft, is er geen status te zien.

Je kunt zo dus perfect met één chatprogramma zowel met personen chatten die hun privacy belangrijk vinden en gebruikmaken van OTR, als met anderen (waarschijnlijk de meerderheid) die daar niet om malen. De OTR-plug-in van Pidgin schiet pas in actie als hij merkt dat je contactpersoon ook OTR gebruikt. Bovendien hoef je niet van account te veranderen, want je kunt gewoon je bestaande account van Microsoft of Google Talk blijven gebruiken in Pidgin. Dat maakt de combinatie van Pidgin en OTR dus de ideale gebruiksvriendelijke manier om veilig te chatten zonder je contactpersonen met extra last op te zadelen.

Een nadeel van OTR is wel dat het geen groepchats ondersteunt. Als je dus met meer dan twee personen tegelijk op een veilige manier wil chatten, zal je een andere manier moeten vinden. Die zal dan waarschijnlijk niet de off-the-record eigenschappen van OTR hebben.

Andere plug-ins

Niet alleen Pidgin beschikt over een OTR-plug-in. Ook voor Miranda IM, net zoals Pidgin een opensource-programma dat diverse chatprotocols ondersteunt, bestaat er een plug-in: MirOTR. Hetzelfde geldt voor Psi, Gajim, X-Chat en nog enkele andere programma's. De ontwikkelaars van OTR richten zich echter vooral op Pidgin.

De plug-ins voor andere clients zijn door anderen gemaakt en dus niet gegarandeerd van dezelfde kwaliteit. Maar als je al een van die andere clients gebruikt, kun je de OTR-plug-in altijd eens proberen. Als je liever geen Pidgin gebruikt of als OTR je te moeilijk klinkt, is de verleiding misschien groot om een plug-in voor een ander soort encryptie uit te proberen.

Geen van de andere plug-ins heeft echter de off-the-record-eigenschappen die OTR biedt, zodat je er niet helemaal dezelfde veiligheid mee verkrijgt. Zo zorgt de plug-in Pidgin-Encryption enkel voor encryptie en authenticatie in Pidgin.

©PXimport

OTR wordt niet alleen in Pidgin ondersteund, maar ook in heel wat andere software.

©PXimport

De plug-in Pidgin-Encryption biedt niet dezelfde veiligheid als OTR.

▼ Volgende artikel
AMD hint naar komst van nieuwe Xbox in 2027
© Reshift Digital BV
Huis

AMD hint naar komst van nieuwe Xbox in 2027

AMD lijkt te hinten naar de mogelijkheid dat de volgende generatie Xbox-console in 2027 verschijnt.

Tijdens de bekendmaking van fiscale kwartaalcijfers meldde Lisa Su, de ceo van AMD, het volgende (via PC Mag): "Qua producten loopt Valve op schema om begin dit jaar de op AMD-technologie draaiende Steam Machine uit te brengen, en de ontwikkeling van Microsofts volgende generatie van Xbox met een deels op maat gemaakte SoC boekt progressie om een release in 2027 te ondersteunen."

Met SoC bedoelt Su 'system-on-a-chip', waarbij de meeste componenten die nodig zijn voor een computer of console op een allesomvattend circuit geplaatst worden. Dit is meestal de standaard bij spelcomputers.

2027 of later?

Microsoft kondigde eerder al aan dat het samen met AMD aan een nieuwe console werkt, maar een precieze releasedatum werd toen niet gegeven. Gezien Su's opmerking, lijkt AMD dus te verwachten dat de spelcomputer in 2027 verschijnt.

Dit terwijl de PlayStation 6 - Sony's nieuwe console - volgens geruchten mogelijk intern wordt uitgesteld zodat het pas later dit decennium verschijnt. Dit deels vanwege de stijgende kosten voor RAM in verband met de benodigdheden voor het draaiende houden van AI in combinatie met het huidige economische milieu. Officieel is niet bekend wanneer de PS6 uit moet komen, maar in deze column stelden we onlangs dat het geen slecht idee is om de console pas over een aantal jaar uit te brengen.

Wat weten we over de nieuwe Xbox?

Microsoft bevestigde eerder al dat de volgende Xbox veel eigenschappen zal delen met pc's. Zo zouden er meerdere gamewinkels op beschikbaar komen naast de Xbox Store zelf - net zoals de uitgekomen ROG Xbox Ally dus. Dat zou betekenen dat bijvoorbeeld Steam en Epic Games Store ook op het apparaat te bezoeken zijn, en er via die weg pc-games gekocht kunnen worden.

Begin dit jaar kwamen er ook geruchten naar buiten dat de nieuwe Xbox-interface zou draaien op de Full Screen Experience van de Xbox pc-app, dat onderdeel uitmaakt van Windows. De volgende Xbox zou volgens geruchten draaien op de AMD Magnus APU, die inderdaad CPU en GPU in één chip combineert.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.

▼ Volgende artikel
Je NAS veilig bereiken via een VPN-server, Tailscale of Cloudflare-tunnel
© ER | ID.nl
Huis

Je NAS veilig bereiken via een VPN-server, Tailscale of Cloudflare-tunnel

Wil je een NAS op afstand gebruiken, dan doe je dat liefst natuurlijk veilig. Bijvoorbeeld door een VPN-server op te zetten, of een tunnel met extra toegangscontrole. Hiervoor zijn diensten als Tailscale en Cloudflare heel geschikt. In deze masterclass nemen we de beste opties met je door. We leggen uit wat de voor- en nadelen zijn en hoe je ze kunt gebruiken in combinatie met een NAS.

Een NAS is breed inzetbaar en bij veel huishoudens de spil in het netwerk. Je kunt niet alleen je documenten centraal bewaren, maar ook bijvoorbeeld media streamen naar je tv, foto’s bekijken op je tablet en talloze extra toepassingen installeren. Heb je (een deel van) deze toepassingen ook af en toe op afstand nodig? Het openzetten van een poortje in de router of het gebruik van een reverse proxy kan daarvoor een prima optie zijn. Maar publieke toegang is niet altijd nodig. Er zijn betere opties als je vooral voor jezelf goed beveiligde externe toegang tot je NAS nodig hebt. Een eenvoudige optie is een cloudservice van de fabrikant, zoals Synology QuickConnect. Betere en veiligere opties zijn een VPN-server met een protocol als OpenVPN of WireGuard, Tailscale (dat op de achtergrond met WireGuard werkt) of een Cloudflare-tunnel. In deze masterclass leggen we uit hoe je ze gebruikt. Wat je kiest, hangt ook af van je doel. Bij elke optie behandelen we de eventuele beperkingen. Voordat je begint, is het ook verstandig de beveiliging van je NAS nog even door te lichten (zie kader).

Optimale beveiliging voor je NAS

Bij het openstellen van je NAS is een goede beveiliging extra belangrijk. Ongeoorloofde toegang tot je NAS zul je altijd willen voorkomen. Gebruik altijd sterke wachtwoorden voor je gebruikersaccounts. Deactiveer bovendien de algemene accounts zoals admin en guest. Zet tweestapsverificatie aan. Hierbij wordt na het inloggen om een extra toegangscode gevraagd die je kunt genereren met een app op je smartphone. Op vertrouwde apparaten hoef je dat maar één keer te doen. Bij Synology vind je deze opties in je configuratiescherm, onder Beveiliging / Account. Je kunt kiezen voor welke gebruikers dit moet worden ingeschakeld. Bij QNAP ga je hiervoor in je configuratiescherm naar Systeem / Beveiliging. Open dan het tabblad Verificatie in 2 stappen. Maak ook gebruik van de ingebouwde firewall van je NAS, waarin je toegangsregels kunt instellen! In deze masterclass geven we daar tips voor. Zorg ten slotte dat je een goede back-upstrategie hebt voor de bestanden op je NAS.

Het is verstandig om tweestapsverificatie aan te zetten op je NAS.

Wat is een cloudservice?

Via een cloudservice kun je toegang tot een NAS vereenvoudigen door een soort tunnel op te zetten. Bij Synology heet dit QuickConnect, QNAP noemt het myQNAPcloud link. Hierbij wordt vanaf de NAS een uitgaande verbinding opgezet met een server, waardoor het firewalls omzeilt (ook die in je NAS!). De NAS geef je een herkenbare naam, ook wel QuickConnect ID of QNAP ID genoemd, die je ook gebruikt om te verbinden. Hierbij wordt eerst geprobeerd rechtstreeks verbinding te maken, wat ook het meest efficiënt is. Als dat mislukt, wordt de verbinding automatisch omgeleid via een relayserver, die als tussenpersoon het verkeer doorstuurt. De snelheid kan dan minder hoog zijn. We noemen hieronder alleen de dienst van Synology, omdat het een betere bescherming biedt en een betere reputatie heeft dan myQNAPcloud link. Zorg wel altijd zelf voor een goede basisbeveiliging. Overweeg veiligere methoden zoals een VPN of Tailscale. Het is veiliger en je bent niet afhankelijk van andere partijen (zoals een relayserver).

Diensten als myQNAPcloud link creëren een soort tunnel naar je NAS.

Synology QuickConnect

Bij Synology QuickConnect koppel je eerst je NAS aan een Synology-account. Daarna kun je een QuickConnect ID kiezen. Je NAS is daarna bereikbaar vanuit de Synology-apps of een browser via het adres https://quickconnect.to/ met daarachter de QuickConnect ID. Dit werkt ook bij een dynamisch ip-adres, dus je hoeft niet apart een Dynamic DNS-functie (DDNS) te gebruiken. Om QuickConnect te gebruiken open je Configuratiescherm. Ga dan naar Externe toegang. Zet een vinkje bij QuickConnect inschakelen. Hierna moet je je aanmelden met je Synology-account of een nieuw account maken. Vervolgens kies je een QuickConnect ID. Via de instellingen kun je nog kiezen of de relayserver mag worden gebruikt en welke toepassingen via QuickConnect toegankelijk zijn.

Via de instellingen kies je welke toepassingen toegankelijk moeten zijn.

Wat is VPN?

Door een VPN-server te installeren, heb je een ideale voorziening om op afstand je netwerk te bereiken en alle apparaten op dat netwerk, zoals je NAS, netwerkprinters en camera’s. Je installeert de VPN-server op één systeem, zoals een router, server, Raspberry Pi of je NAS. Bij Synology kun je bijvoorbeeld standaard met OpenVPN werken en QNAP ondersteunt het snellere WireGuard. We laten zien hoe je deze opties gebruikt. Na inloggen heb je volledige toegang tot je netwerk en alle toepassingen in het netwerk, alsof je rechtstreeks op het netwerk zit. Voor toegang tot bestanden op je NAS werken daarom alle protocollen als smb, nfs en WebDAV en toepassingen als Synology Drive en QNAP File Station. Je hoeft geen poorten in je router open te zetten, behalve een enkele poort naar de VPN-server.

Bij QNAP kun je standaard werken met WireGuard.

OpenVPN op Synology

Om je Synology-NAS als VPN-server in te zetten, kun je de toepassing VPN Server installeren via Package Center. Gebruik je een firewall, controleer dan of de benodigde poorten toegankelijk zijn. Bij de installatie kun je die aanpassing via een venster direct doorvoeren. Afhankelijk van het protocol moet je ook nog één of meerdere poorten doorsturen van je router naar je NAS. De toepassing ondersteunt PPTP, OpenVPN en L2TP/IPSec. Eigenlijk is vooral OpenVPN interessant. Het is veilig en stabiel, maar niet zo snel als WireGuard. Ook geeft het soms wat uitdagingen bij het opzetten van de verbinding.

Synology ondersteunt meerdere protocollen, waaronder OpenVPN.

Activeren OpenVPN

Om OpenVPN te gebruiken open je VPN Server. Ga dan naar OpenVPN. Zet een vinkje bij OpenVPN-server inschakelen. Bij Dynamisch ip-adres zie je het subnet dat OpenVPN gebruikt. De verbonden clients krijgen een ip-adres in dat bereik. Bij Poort en Protocol zie je dat standaard udp-poort 1194 wordt gebruikt. Die poort moet je doorsturen van je router naar je NAS. Controleer of de poort toegankelijk is in de firewall van je NAS. Voor een goede balans tussen snelheid en veiligheid kun je bij Codering bijvoorbeeld AES-128-CBC kiezen en bij Verificatie de optie SHA256. De optie Compressie op de VPN-koppeling inschakelen mag uit, omdat het weinig snelheidswinst geeft. Zet de optie Clients toegang geven de LAN-server aan, zodat je andere apparaten in je thuisnetwerk kunt bereiken. Zet ook de optie Verifieer TLS auth-sleutel aan. Klik op Toepassen om de instellingen te activeren. Je kunt nu clients gaan configureren.

Bij OpenVPN kun je zelf nog enkele instellingen kiezen.

Profiel voor OpenVPN

Ga naar OpenVPN en kies Configuratie exporteren om het configuratiebestand te exporteren als zip-bestand. Hierin vind je een .ovpn-bestand dat je nodig hebt voor toegang. Je hebt ook een gebruikersaccount nodig bij het inloggen. Onder Rechten kun je aanvinken welke gebruikers toegang hebben en via welke protocollen. Maak eventueel een nieuwe gebruiker voor alleen de VPN-verbinding! Open het bestand VPNConfig.ovpn met een teksteditor. Omdat je de VPN-server extern wilt gebruiken, verander je in onderstaande regel YOUR_SERVER_IP naar je ip-adres van je internetverbinding of de hostnaam als je bijvoorbeeld Dynamic DNS gebruikt. Synology ondersteunt ook Dynamic DNS en geeft bijvoorbeeld een naam.synology.me-adres. Je kunt het activeren in je configuratiescherm onder Externe toegang / DDNS. Het gaat om deze regel:

remote YOUR_SERVER_IP 1194

Je ziet ook de onderstaande optie. Haal hier eventueel het commentaarteken weg als je wilt dat ál het verkeer, dus ook het normale internetverkeer, via de VPN-server gaat. Dat geeft minder goede prestaties, maar is wel veiliger als je bijvoorbeeld een openbare wifi-hotspot gebruikt. Dit is de regel waar je het commentaarteken weg kunt halen:

#redirect-gateway def1

Gebruik dit profiel om verbinding te maken vanaf andere apparaten. Zet hierbij de optie aan dat zonder certificaat verbinding mag worden gemaakt.

WireGuard op QNAP

We zullen laten zien hoe je WireGuard op je QNAP-NAS gebruikt in combinatie met een Windows-client. Voor meer informatie over WireGuard en het opzetten van een aparte VPN-server verwijzen we je naar een eerder artikel dat je kunt lezen via www.kwikr.nl/wgvpn waarin dat uitgebreid aan bod komt. Zorg bij QNAP dat de toepassing QVPN Service is geïnstalleerd via App Center. Open dan de toepassing en ga naar WireGuard. Zet een vinkje bij WireGuard VPN-server inschakelen. Vul een naam in achter Servernaam. Klik achter Persoonlijke sleutel op Codeparen genereren. Noteer de waarde bij Openbare sleutel: die is straks nodig bij de configuratie van clients. Achter Luisterpoort zie je de poort (udp) die je moet doorsturen in de router. Bij DNS Server vul je een openbare DNS-server in (zoals 8.8.8.8) óf een DNS-server in je lokale netwerk. Klik op Toepassen om de instellingen te bewaren. Klik op Peer toevoegen. Hier kun je clients toevoegen (zie volgende stap).

De instellingen voor WireGuard bij een NAS van QNAP.

Client instellen

Elk apparaat dat verbinding met WireGuard maakt, is een zogenoemde peer. Voor het toevoegen van een apparaat kies je bij QNAP de optie Peer toevoegen. Vul een herkenbare naam in. De waarde bij Openbare sleutel komt bij deze ‘peer’ vandaan, die gaan we nu eerst instellen. Installeer en open de Windows-client en kies de optie Add Empty Tunnel. Er worden een privé- en openbare sleutel gegenereerd. Er opent een configuratiebestand met de privésleutel waarin je onder andere deze twee regels ziet:

[Interface]

PrivateKey = +MSQ3D2+M71SotRrWC3hnPyzYSTWNuaxWwc920=

Vul deze configuratie verder aan zoals in het voorbeeld hieronder. Bij Address kies je een vrij ip-adres binnen het VPN-subnet, dat nog niet door een andere peer wordt gebruikt. Je kunt dit voor elke client ophogen, dus 198.18.7.2/32, 198.18.7.3/32, en zo verder. Belangrijk is dat je bij PublicKey de openbare sleutel die QNAP laat zien invult. Bij Endpoint vervang je ipadres door het ip-adres (of de hostnaam) van je internetverbinding thuis. Dit is de configuratie die je moet aanpassen:

[Interface]

PrivateKey = +MSQ3D2+M71SotRrWC3hnPyzYSTWNuaxWwc920=

ListenPort = 51820

Address = 198.18.7.2/32

DNS = 1.1.1.1

[Peer]

PublicKey = KsCc+cRucH4F8T3VdyatvZXjqvunEerBZapulE=

AllowedIPs = 0.0.0.0/0

Endpoint = ipadres:51820

Bewaar de configuratie met Save. Kopieer nu de waarde bij Public key van deze client. Je leest deze af in het hoofdvenster van WireGuard (zorg dat de bewuste tunnel is geselecteerd). Plak deze in QNAP bij Openbare sleutel bij de configuratie van deze peer. Je kunt nu verbinding maken met je Windows-client!

Voltooi de configuratie voor de Windows-client voor WireGuard.

Firewall instellen voor je NAS

Een firewall op je NAS biedt extra bescherming. Bij Synology open je daarvoor Configuratiescherm. Ga dan naar Beveiliging en open het tabblad Firewall. Zet een vinkje bij Firewall inschakelen en kies Toepassen. Bij Firewallprofiel kun je een profiel kiezen of bewerken. Kies Regels bewerken om het huidige profiel aan te passen. Begin met een regel die alle apparaten op het lokale netwerk toestaat. Kies bij die regel bij Poorten de optie Alles. Bij Bron-IP kies je Specifiek ip. Klik daarachter op Selecteren en kies Subnet. Je moet hier het netwerkbereik van je router kennen. In veel gevallen is dat iets als 192.168.1.0 met subnetmasker 255.255.255.0. Dit omvat dan alle adressen van 192.168.1.0 t/m 192.168.1.255. Voeg hierna nog specifieke regels toe voor toepassingen die van buitenaf toegang moeten hebben. In dit voorbeeld staan we bijvoorbeeld SSH toe vanaf een bepaald ip-adres. Heel belangrijk is dat je als laatste een regel toevoegt die alles blokkeert. De regels worden namelijk van boven naar beneden doorlopen en bij de eerste match stopt de verwerking. Het configuratiescherm van QNAP biedt ook een firewall, maar dat is meer een soort toegangsfilter. Voor uitgebreidere opties kun je QuFirewall installeren via App Center.

Het is raadzaam om de firewall op je NAS te gebruiken voor toegangsbeperking.

Wat is Tailscale?

Met Tailscale kun je een virtueel privénetwerk maken tussen al je apparaten. Dit gebeurt op basis van identiteit, met bijvoorbeeld een standaard Google-account voor autorisatie. Je kunt alle toegevoegde apparaten benaderen via een intern ip-adres of de toegekende hostnaam. Tailscale gebruikt dezelfde technologie als WireGuard, wat het snel, veilig en betrouwbaar maakt. Je hebt geen centrale server nodig en hoeft ook geen poorten in je router open te zetten. Wel moet je elk apparaat in principe afzonderlijk aan je privénetwerk toevoegen. Dat is eenvoudig, ook voor een NAS, zoals je hieronder ziet. Als alternatief kun je Tailscale ook op één apparaat in je netwerk installeren en dat apparaat als subnetrouter instellen, zodat je via dat ene systeem toegang hebt tot alle andere apparaten in je netwerk. In dat geval hoef je Tailscale niet op elk afzonderlijk apparaat te installeren. Meer uitleg over Tailscale vind je in dit artikel.

Met Tailscale kun je een privénetwerk voor je apparaten maken.

Eerste stappen

Ga naar https://tailscale.com en kies de optie Get started. Log in met een van de ondersteunde identiteitsproviders, bijvoorbeeld een standaard Google-account of een van de andere opties. Hierna wordt automatisch je Tailscale-netwerk, of kortweg tailnet, gemaakt. Dat is een soort privé-VPN-netwerkje waar jouw apparaten deel van uit gaan maken. Als je op een ander apparaat inlogt met datzelfde account, is het bereikbaar vanuit je andere apparaten in dit tailnet. Een gratis account ondersteunt tot drie gebruikers en honderd apparaten.

Log in bij Tailscale met bijvoorbeeld je Google-account.

Apparaten toevoegen

Het toevoegen van apparaten is eenvoudig. Het volstaat om de software te installeren en in te loggen met dezelfde identiteitsprovider. Om Tailscale bijvoorbeeld op een iPad te gebruiken, installeer je eerst de toepassing via de App Store. Hierbij wordt een VPN-configuratie voor je iPad gemaakt. Daarna log je in en zie je een lijst met apparaten in je privénetwerkje, waarbij je ook de namen af kunt lezen.

Op een iPad maakt Tailscale een VPN-profiel aan.

Tailscale op je NAS

Je kunt Tailscale ook op een NAS installeren. Bij Synology zoek je daarvoor in Package Center naar Tailscale. Bij QNAP kun je in App Center terecht. Installeer en open de toepassing. Er wordt gevraagd om in te loggen, waarbij je weer hetzelfde account als hiervoor gebruikt. Zet daarna de verbinding op via Connect. Als je nog een keer de Tailscale-app opent, kun je details zien over het bewuste apparaat, zoals het ip-adres en de hostnaam die je kunt gebruiken om verbinding te maken.

Tailscale is als pakket beschikbaar voor Synology en QNAP.

Wat is een Cloudflare-tunnel?

Bij een Cloudflare-tunnel installeer je op één systeem in je netwerk (bijvoorbeeld je NAS) een klein programma, dat van binnenuit een versleutelde verbinding opzet naar Cloudflare. Daarna kun je toepassingen individueel toevoegen die deze tunnel mogen gebruiken. Daarbij kun je elke toepassing een eigen subdomein geven, zoals nas.domein.nl voor je NAS. De tunnel laat geen netwerkprotocollen zoals SMB en NFS door en WebDAV is een uitdaging. Het is vooral bedoeld voor webverkeer. Je kunt incidenteel wel bijvoorbeeld DS File gebruiken, voor het browsen door je bestanden en kleine uploads of downloads.

Bij Cloudflare kun je gratis een tunnel opzetten voor toegang op afstand.

Domein registreren

Log in bij Cloudflare met een bestaand account of maak een nieuw gratis account. Registreer een domeinnaam via Add / Register a domain of voeg een bestaand domein toe via Add / Connect a domain. In dat laatste geval moet je de DNS-instellingen bij je huidige provider aanpassen, zodat de nameservers naar die van Cloudflare verwijzen. Afhankelijk van de extensie betaal je bij Cloudflare vanaf zo’n 6 dollar per jaar (circa 6 euro) per domein. Je kunt een domein eventueel direct voor meerdere jaren registreren of voor automatische verlenging kiezen. Betalen kan met creditcard of PayPal. In je dashboard vind je je domein terug onder Domain registration / Manage domains.

Registreer tegen lage kosten een domein bij Cloudflare.

Tunnel voorbereiden

Ga via het menu aan de linkerkant naar Zero Trust. Klik dan op Networks en kies Tunnels. Klik op Create a tunnel. Selecteer de optie Cloudflared. Geef je tunnel een naam. Vervolgens moet je een zogeheten connector installeren op één systeem in je netwerk om een tunnel te maken. Alle toepassingen die je straks via de Cloudflare-tunnel gaat publiceren, moeten bereikbaar zijn vanaf dat systeem. Dat is meestal alleen een probleem bij gescheiden netwerken of strikte firewallregels. Installeer Cloudflared volgens de instructies op een systeem dat altijd aanstaat. Dat kan een server of Raspberry Pi zijn, maar óók je NAS, zoals we hieronder toelichten. Hierna komt de tunnel automatisch online.

Maak een tunnel via de website van Cloudflare.

Tunnel op Synology-NAS

Voor de installatie op een NAS heeft Cloudflare geen instructies, maar de procedure is relatief eenvoudig. Kopieer de opdracht die je ziet bij bijvoorbeeld de Windows-installatie en plak deze in een editor. Je ziet hierin een lange string van 184 tekens die meest begint met eyJh…. Dat is de benodigde token. Om Cloudflared op een Synology-NAS te installeren open je Package Center. Ga naar Gemeenschap en kies Cloudflare Tunnel. Klik op Installeren. Nu wordt om de token gevraagd. Je hoeft geen geavanceerde opties te kiezen. Na het voltooien van de installatie is je tunnel klaar voor gebruik.

Vul de token in bij de installatie van de software op je Synology-NAS.

Tunnel bij QNAP

QNAP biedt geen softwarepakket, maar je kunt Cloudflare wel vrij eenvoudig via Docker configureren en starten. Het is het makkelijkst om met Docker Compose te werken. Installeer indien nodig Container Station en open het programma. Ga dan naar Toepassingen en klik op Maken. Bij Naam van de toepassing vul je een herkenbare naam in, zoals cloudflared. Bij YAML-code vul je de onderstaande code in. Achter TUNNEL_TOKEN vul je uiteraard jouw token in. Klik dan op Maken om de tunnel te maken. Dit is de benodigde code:

version: "3"

services:

  cloudflared:

    image: cloudflare/cloudflared:latest

    container_name: cloudflared

    restart: unless-stopped

    network_mode: "host"

    command: tunnel run

    environment:

      - TUNNEL_TOKEN=eyJh...

Bij QNAP kun je Cloudflared het beste via Docker installeren.

Toepassing toevoegen

Je kunt nu elke toepassing via de tunnel beschikbaar maken met een uniek subdomein. Om zo’n zogeheten route aan te maken, ga je binnen Zero Trust naar Networks / Tunnels. Bij Status geeft het systeem als het goed is aan dat de tunnel gezond is. Open het menu (via de drie puntjes) en kies Configure. Ga dan naar het tabblad Published application routes. We nemen de webinterface van een NAS die lokaal bereikbaar is op https://10.0.10.200:5001. Bij Subdomain vul je bijvoorbeeld nas in. Bij Domain kies je een domein. Bij Type kiezen we HTTPS en bij URL vullen we 10.0.10.200:5001 in. Bij de optie HTTPS moet je oppassen. De NAS heeft in ons geval geen echt certificaat. Daarom is het belangrijk om onder Additional application settings / TLS de optie No TLS Verify aan te vinken. Cloudflare zal dan negeren dat het certificaat niet ondertekend is. Klik op Save. Er zal automatisch een DNS-record worden gemaakt en je kunt vrijwel direct op afstand je NAS benaderen.

We maken een route voor de NAS.

Extra beveiliging bij Cloudflare

Na het openstellen van een toepassing via een subdomein kan in feite iedereen die dat adres kent de toepassing benaderen, zoals de webinterface van je NAS. Of ze ook binnenkomen, hangt af van je beveiliging. Een NAS kun je zelf extra beveiligen, bijvoorbeeld met tweestapsverificatie. Maar je kunt toegang óók beperken via Cloudflare zelf. Je kunt bijvoorbeeld regelen dat alleen jij bij de tunnel mag, via een tijdelijke code die je per e-mail ontvangt, of door te verplichten dat je eerst moet inloggen met een specifiek Google-account.