3Aug

Maak overal verbinding met uw thuisnetwerk met OpenVPN en tomaat

Een paar weken geleden behandelden we Tomato, een open-source routerfirmware, op uw Linksys WRT54GL.Vandaag bespreken we hoe je OpenVPN naast Tomato kunt installeren en hoe je het kunt instellen om overal ter wereld toegang te krijgen tot je thuisnetwerk!

Wat is OpenVPN?

Een virtueel particulier netwerk( VPN) is een vertrouwde, beveiligde verbinding tussen het ene lokale netwerk( LAN) en het andere. Denk aan uw router als de middelste man tussen de netwerken waarmee u verbinding maakt. Zowel uw computer als de OpenVPN-server( in dit geval uw router) "hand geven" met behulp van certificaten die elkaar valideren. Na validatie komen zowel de client als de server overeen om elkaar te vertrouwen en krijgt de client vervolgens toegang op het netwerk van de server.

Normaal gesproken kosten VPN-software en -hardware veel geld om te implementeren. Als je het al niet geraden hebt, is OpenVPN een open-source VPN-oplossing die( tromgeroffel) gratis is. Tomato is, naast OpenVPN, een perfecte oplossing voor diegenen die een beveiligde verbinding tussen twee netwerken willen zonder hun portefeuille te hoeven openen. Uiteraard werkt OpenVPN niet direct uit de doos. Er is een klein beetje aan veranderen en configureren nodig om het precies goed te krijgen. Maar maak je geen zorgen;we zijn er om dat proces voor u gemakkelijker te maken, dus grijp uzelf een warme kop koffie en laten we aan de slag gaan.

Bezoek voor meer informatie over OpenVPN de officiële What Is OpenVPN?pagina.

Vereisten

In deze handleiding wordt ervan uitgegaan dat u momenteel Windows 7 op uw pc gebruikt en dat u een beheerdersaccount gebruikt. Als u een Mac- of Linux-gebruiker bent, geeft deze gids u een idee van hoe de dingen werken, maar wellicht moet u zelf wat meer onderzoek doen om de dingen perfect te krijgen. We zullen ook een speciale versie van Tomato installeren genaamd TomatoUSB VPN op een Linksys WRT54GL versie 1.1-router. Als je wilt weten of je router compatibel is met TomatoUSB, bekijk dan hun Build Types-pagina.

Het begin van deze handleiding gaat ervan uit dat je:

  1. de originele Linksys-firmware hebt geïnstalleerd op je router of
  2. de Tomato-firmware die we beschreven hebben in ons laatste artikel

Neem nota van de tekst boven bepaalde stappen die aangeven of het om Linksys-firmware of Tomatofirmware gaat.

TomatoUSB installeren

In een vorig artikel hebben we besproken hoe de oorspronkelijke Tomato v1.28-firmware van de PolarCloud-website kan worden geïnstalleerd. Helaas kwam die versie van Tomato niet met OpenVPN-ondersteuning, dus we zullen een nieuwere versie installeren genaamd TomatoUSB VPN .

Het eerste dat u wilt doen, is naar de TomatoUSB-startpagina gaan en op de download Tomato USB-link klikken.

Download VPN onder de Kernel 2.4( stabiel) -sectie. Sla het. rar-bestand op uw computer op.

Je hebt een programma nodig om het. rar-bestand uit te pakken. We raden aan om WinRAR te gebruiken, omdat het gratis te proberen en gebruiksvriendelijk is. Je kunt jezelf een kopie van de gratis versie downloaden op hun website. Na het installeren van WinRAR, klik met de rechtermuisknop op het bestand dat u hebt gedownload en klik hier op Uitpakken. Je zou dan twee bestanden moeten zien genaamd CHANGELOG en tomato-NDUSB-1.28.8754-vpn3.6.trx.

Als u Linksys-firmware gebruikt. ..

Open uw browser en voer het IP-adres van uw router in( standaard is 192.168.1.1).U wordt gevraagd om een ​​gebruikersnaam en wachtwoord. De standaardinstellingen voor een Linksys WRT54GL zijn "admin" en "admin".

Klik op het tabblad Beheer bovenaan. Klik vervolgens op Firmware-upgrade zoals hieronder te zien is.

Klik op de knop Bladeren en ga naar de uitgepakte TomatoUSB VPN-bestanden. Selecteer het -tomaat-NDUSB-1.28.8754-vpn3.6.trx -bestand en klik op de knop Upgrade in de webinterface. Uw router zal TomatoUSB VPN gaan installeren en het duurt minder dan een minuut om het te voltooien. Na ongeveer een minuut opent u een opdrachtprompt en typt u ipconfig -release om het nieuwe IP-adres van uw router te bepalen. Typ vervolgens ipconfig -renew .Het IP-adres rechts van Default Gateway. .. is het IP-adres van uw router.

Opmerking : na het installeren van Tomato ga naar Beheer & gt;Configuratie en selecteer "Wis alle NVRAM. ..".

Als je Tomatofirmware uitvoert. ..

Open uw browser en voer het IP-adres van uw router in. We nemen aan dat, als je Tomato hebt geïnstalleerd, je het IP-adres van je router kent. Als je het niet zeker weet, is het waarschijnlijk ingesteld op de standaardwaarde 192.168.1.1.Typ daarna uw gebruikersnaam en wachtwoord in.

Hoewel het niet verplicht is, wil je misschien een back-up maken van je huidige tomatenconfiguratie voordat je een upgrade uitvoert naar TomatoUSB VPN, voor het geval dat. Als u uw configuratie wilt opslaan, gaat u naar Beheer & gt;Configuratie en klik op de knop Back-up. Dit zal u vragen om het. cfg-bestand op te slaan op uw computer.

Nu is het tijd om Tomato naar TomatoUSB VPN te upgraden. Klik op Upgrade in de linkerkolom en klik op de knop Bestand kiezen. Navigeer naar de bestanden die we eerder hebben geëxtraheerd en kies het -tomaat-NDUSB-1.28.8754-vpn3.6.trx -bestand. Klik vervolgens op de knop Upgrade.

U wordt gevraagd om de upgrade te bevestigen;klik gewoon op OK.

Uw router zal beginnen met het uploaden van de nieuwe firmware en zal binnen een minuut opnieuw opstarten.

Het kan hetzelfde of een ander IP-adres hebben nadat het opnieuw is opgestart. In ons geval was de routerconfiguratie nog steeds hetzelfde, dus ons IP-adres was nog steeds hetzelfde. Om het nieuwe IP-adres van uw router te bepalen, opent u een opdrachtprompt en typt u ipconfig -release .Typ vervolgens ipconfig -renew .Het IP-adres rechts van Default Gateway. .. is het adres van uw router. Als uw configuratie is teruggezet naar de standaardinstellingen, gaat u terug naar de configuratiepagina( Beheer & gt; Configuratie) en klikt u op de knop Bestand kiezen onder Configuratie herstellen. Blader naar het. cfg-bestand dat u eerder op uw computer hebt opgeslagen en klik op de knop Herstellen.

OpenVPN configureren

Of u nu Linksys-firmware of Tomatofirmware had geïnstalleerd, u zou nu de nieuwe TomatoUSB VPN op uw router geïnstalleerd moeten hebben. U zult een paar nieuwe menu's in de linkerkolom opmerken, zoals Web Usage, USB en NAS en VPN Tunnelling. Voor deze gids zijn we alleen bezig met het VPN-tunneling-menu, dus ga je gang en klik je op VPN-tunneling. Houd dit browservenster open;We komen hier binnenkort op terug.

Laten we nu naar de OpenVPN-pagina Downloads gaan en het OpenVPN Windows Installer downloaden. In deze handleiding gebruiken we de tweede nieuwste versie van OpenVPN, genaamd 2.1.4.De nieuwste versie( 2.2.0) bevat een bug waardoor dit proces nog ingewikkelder zou worden. Het bestand dat we downloaden installeert het OpenVPN-programma waarmee je verbinding kunt maken met je VPN-netwerk. Installeer dit programma dus op alle andere computers die je als client wilt gebruiken( zoals we zullen zien hoe dat te doen)later).Sla het bestand openvpn-2.1.4-install. exe op uw computer op.

Navigeer naar het OpenVPN-bestand dat we zojuist hebben gedownload en dubbelklik erop. Hiermee begint de installatie van OpenVPN op uw computer. Ren door het installatieprogramma met alle standaardinstellingen aangevinkt. Tijdens de installatie verschijnt er een dialoogvenster met de vraag om een ​​nieuwe virtuele netwerkadapter genaamd TAP-Win32 te installeren. Klik op de knop Installeren.

Nu u OpenVPN op uw computer hebt geïnstalleerd, moeten we beginnen met het maken van de certificaten en sleutels om apparaten te verifiëren.

Certificaten en sleutels maken

Klik op de Windows Start-knop en navigeer onder Accessoires. U ziet het opdrachtpromptprogramma. Klik er met de rechtermuisknop op en klik op Als administrator uitvoeren.

Typ in de opdrachtprompt cd c: \ Program Files( x86) \ OpenVPN \ easy-rsa als u 64-bits Windows 7 gebruikt, zoals hieronder wordt weergegeven. Typ cd c: \ Program Files \ OpenVPN \ easy-rsa als u 32-bits Windows 7 gebruikt. Druk vervolgens op Enter.

Typ nu init-config en druk op Enter om twee bestanden genaamd vars.bat en openssl.cnf naar de map easy-rsa te kopiëren. Houd uw opdrachtprompt bij, want we komen hier binnenkort op terug.

Navigeer naar C: \ Program Files( x86) \ OpenVPN \ easy-rsa ( of C: \ Program Files \ OpenVPN \ easy-rsa op 32-bit Windows 7) en klik met de rechtermuisknop op het bestand genaamd vars.bat .Klik op Bewerken om het in Kladblok te openen. Als alternatief raden we aan om dit bestand te openen met Notepad ++ omdat het de tekst in het bestand veel beter opmaakt. Je kunt Notepad ++ downloaden vanaf hun startpagina.

Het onderste deel van het bestand is waar het ons om gaat. Beginnend met regel 31, verander de KEY_COUNTRY -waarde, KEY_PROVINCE -waarde, enz. In uw land, provincie, enz. We hebben bijvoorbeeld onze provincie gewijzigd in "IL", stad in "Chicago", org in "HowToGeek"en e-mail naar ons eigen e-mailadres. Als u Windows 7 64-bit gebruikt, wijzigt u ook de HOME -waarde in regel 6 in % ProgramFiles( x86)% \ OpenVPN \ easy-rsa .Wijzig deze waarde niet als u 32-bits Windows 7 gebruikt. Uw bestand moet er ongeveer net zo uitzien als de onze hieronder( met uw respectieve waarden natuurlijk).Sla het bestand op door het te overschrijven als je klaar bent met bewerken.

Ga terug naar je opdrachtprompt en typ vars en druk op Enter. Typ vervolgens clean-all en druk op Enter. Typ ten slotte build-ca en druk op Enter.

Na het uitvoeren van de build-ca -opdracht, wordt u gevraagd om uw landnaam, staat, plaats enz. In te voeren. Aangezien we deze parameters al hebben ingesteld in ons vars.bat -bestand, kunnen we deze opties overslaandoor op Enter te drukken, maar! Voordat u begint weg te slaan met de Enter-toets, let op voor de parameter Common Name. U kunt alles in deze parameter ingeven( bijvoorbeeld uw naam).Zorg er wel voor dat u iets ingeeft. Deze opdracht voert twee bestanden uit( een Root CA-certificaat en een Root CA-sleutel) in de map easy-rsa / keys.

Nu gaan we een sleutel voor een klant bouwen. Typ in dezelfde opdrachtprompt build-key client1 .U kunt "client1" wijzigen in alles wat u maar wilt( zoals Acer-Laptop).Zorg ervoor dat u dezelfde naam invoert als de algemene naam als daarom wordt gevraagd. Als u bijvoorbeeld de opdracht bouwkey Acer-Laptop uitvoert, moet uw algemene naam "Acer-Laptop" zijn. Ren door alle standaardinstellingen zoals de laatste stap die we deden( behalve Common Name, natuurlijk).Aan het eind wordt u echter gevraagd om het certificaat te ondertekenen en te binden. Type "y" voor beide en klik op Enter.

Maak je ook geen zorgen als je de foutmelding "niet in staat om te schrijven" in willekeurige toestand hebt ontvangen. Ik heb gemerkt dat je certificaten nog steeds probleemloos worden gemaakt. Met deze opdracht worden twee bestanden( een Client1-sleutel en een Client1-certificaat) uitgevoerd in de map easy-rsa / keys. Als u een andere sleutel voor een andere client wilt maken, herhaalt u de vorige stap, maar zorg ervoor dat u de algemene naam wijzigt.

Het laatste certificaat dat we gaan genereren is de servercode. Typ in dezelfde opdrachtprompt build-key-server -server .U kunt "server" aan het einde van de opdracht vervangen door alles wat u maar wilt( zoals HowToGeek-Server).Zoals altijd, zorg ervoor dat u dezelfde naam invoert als de algemene naam als daarom wordt gevraagd. Als u bijvoorbeeld de opdracht build-key-server HowToGeek-Server uitvoert, moet uw algemene naam "HowToGeek-Server" zijn. Druk op Enter en doorloop alle standaardwaarden behalve Common Name. Typ aan het einde "y" om het certificaat te ondertekenen en vast te leggen. Met deze opdracht worden twee bestanden( een serversleutel en een servercertificaat) uitgevoerd in de map easy-rsa / keys.

Nu moeten we de Diffie Hellman-parameters genereren. Het Diffie Hellman-protocol "biedt twee gebruikers de mogelijkheid om een ​​geheime sleutel te ruilen voor een onveilig medium zonder voorafgaande geheimen".U kunt meer lezen over Diffie Hellman op de website van RSA.

Typ in dezelfde opdrachtprompt build-dh .Met deze opdracht wordt één bestand( dh1024.pem) uitgevoerd in de map easy-rsa / keys.

Configuratiebestanden voor de client maken

Voordat we configuratiebestanden bewerken, moeten we een dynamische DNS-service instellen. Gebruik deze service als uw ISP om de zoveel tijd een dynamisch extern IP-adres afgeeft. Als u een statisch extern IP-adres hebt, gaat u verder met de volgende stap.

We raden aan om DynDNS.com te gebruiken, een service waarmee u een hostnaam( d.w.z. howtogeek.dyndns.org) naar een dynamisch IP-adres kunt verwijzen. Het is belangrijk voor OpenVPN om altijd het openbare IP-adres van uw netwerk te kennen en door DynDNS te gebruiken, weet OpenVPN altijd hoe u uw netwerk kunt lokaliseren, ongeacht uw openbare IP-adres. Meld u aan voor een hostnaam en wijs deze naar uw openbare IP-adres. Nadat u zich hebt aangemeld voor de service, vergeet dan niet om de service voor automatische updates in Tomato in te stellen onder Basis & gt;DDNS.

Nu terug naar het configureren van OpenVPN.Navigeer in Windows Verkenner naar C: \ Program Files( x86) \ OpenVPN \ sample-config als u 64-bit Windows 7 of C: \ Program Files \ OpenVPN \ sample-config gebruikt als umet 32-bits Windows 7. In deze map vindt u drie voorbeeldconfiguratiebestanden;we houden ons alleen bezig met het client.ovpn -bestand.

Klik met de rechtermuisknop op client.ovpn en open het met Kladblok of Notepad ++.Je zult merken dat je bestand er als volgt uit zal zien:

We willen echter dat ons client.ovpn -bestand er vergelijkbaar uitziet als dit -beeld hieronder. Zorg ervoor dat u de DynDNS-hostnaam wijzigt naar uw hostnaam in regel 4( of wijzig deze in uw openbare IP-adres als u een statische IP-adres hebt).Laat het poortnummer over aan 1194 omdat het de standaard OpenVPN-poort is. Wijzig ook regels 11 en 12 om de naam van het certificaatbestand en het sleutelbestand van uw klant weer te geven. Sla dit op als nieuw bestand. ovpn-bestand in de map OpenVPN / config.

Tomaat's VPN-tunneling configureren

Het basisidee is nu om de servercertificaten en -sleutels die we eerder hebben gemaakt te kopiëren en in de Tomato VPN-servermenu's te plakken. Daarna zullen we een paar instellingen in Tomato controleren, de VPN-verbinding testen en dan kunnen we onze handen wassen en het een dag noemen!

Open een browser en navigeer naar uw router. Klik op het menu VPN-tunneling in de linkerzijbalk. Zorg ervoor dat Server1 en Basis ook zijn geselecteerd. Stel uw instellingen precies zo in als ze hieronder worden weergegeven. Klik op Opslaan.

-update: de standaardmodus is TUN of tunnel, maar u wilt deze waarschijnlijk wijzigen in TAP, waarmee het netwerk wordt overbrugd. De tunnelmodus brengt uw externe clients op een ander netwerk dan het interne netwerk. Verander dus in plaats daarvan Interface Type naar TAP.

Klik vervolgens op het tabblad Geavanceerd naast Basic. Zorg er net als eerder voor dat je instellingen precies zo zijn als ze hieronder worden weergegeven. Klik op Opslaan.

Onze laatste stap is het plakken van de sleutels en certificaten die we oorspronkelijk hebben gemaakt. Open het tabblad Sleutels naast Geavanceerd. Navigeer in Windows Verkenner naar C: \ Program Files( x86) \ OpenVPN \ easy-rsa \ keys op 64-bit Windows 7( of C: \ Program Files \ OpenVPN \ easy-rsa \ keys op 32-bit Windows 7).Open elk overeenkomstig bestand hieronder( ca.crt , server.crt , -server.key en dh1024.pem ) met Kladblok of Notepad ++ en kopieer de inhoud. Plak de inhoud in de overeenkomstige vakken zoals hieronder te zien is. Ik moet er rekening mee houden dat u alleen alles hieronder - BEGIN CERTIFICATE - in de -server.crt moet plakken. OpenVPN zal nog steeds goed werken als je het hele bestand plakt, maar het is meer "clean" en alleen de eigenlijke certificaatinformatie geplakt. Klik op Opslaan en klik vervolgens op Nu starten.

Voordat we onze VPN-verbinding testen, is er nog een ding dat we binnen in Tomato moeten controleren. Klik op Basic in de linkerkolom en vervolgens op Tijd. Zorg ervoor dat de routertijd correct is en de tijdzone uw huidige tijdzone weergeeft. Stel de NTP Time Server in naar uw land.

Een OpenVPN-client instellen

In dit voorbeeld gebruiken we een Windows 7-laptop als onze client. Het eerste dat u wilt doen is OpenVPN installeren op uw client zoals hierboven in de eerste stappen onder Configureren van OpenVPN.Navigeer vervolgens naar C: \ Program Files \ OpenVPN \ config , waar we onze bestanden zullen plakken.

Nu moeten we teruggaan naar onze oorspronkelijke computer en in totaal vier bestanden verzamelen om naar onze client-laptop te kopiëren. Navigeer opnieuw naar C: \ Program Files( x86) \ OpenVPN \ easy-rsa \ keys en kopieer ca.crt , client1.crt en client1.key .Plak deze bestanden in -map van de client.

Ten slotte moeten we nog een bestand kopiëren. Navigeer naar C: \ Program Files( x86) \ OpenVPN \ config en kopieer over het nieuwe client.ovpn-bestand dat we eerder hebben gemaakt. Plak dit bestand ook in de -map van de client config.

De OpenVPN Client testen

Klik op de client-laptop op de Windows Start-knop en ga naar Alle programma's & gt;OpenVPN.Klik met de rechtermuisknop op het OpenVPN GUI-bestand en klik op Als administrator uitvoeren. Houd er rekening mee dat u OpenVPN altijd als beheerder moet uitvoeren om correct te kunnen werken. Als u het bestand permanent wilt instellen om altijd als beheerder te worden uitgevoerd, klikt u met de rechtermuisknop op het bestand en klikt u op Eigenschappen. Controleer op het tabblad Compatibiliteit Dit programma uitvoeren als beheerder.

Het pictogram van de OpenVPN GUI verschijnt naast de klok in de taakbalk. Klik met de rechtermuisknop op het pictogram en klik op Verbinden. Omdat we slechts één. ovpn-bestand hebben in onze config -map, maakt OpenVPN standaard verbinding met dat netwerk.

Er verschijnt een dialoogvenster met een verbindingslogboek.

Nadat u bent verbonden met de VPN, wordt het pictogram OpenVPN in de taakbalk groen en wordt uw virtuele IP-adres weergegeven.

En dat is alles! U hebt nu een beveiligde verbinding tussen uw server en het clientnetwerk via OpenVPN en TomatoUSB.Om de verbinding verder te testen, probeert u een browser op de client-laptop te openen en naar uw Tomato-router op het netwerk van de server te navigeren.

Afbeelding door The Ewan