Collegati alla tua rete domestica da qualsiasi luogo con OpenVPN e Tomato
Alcune settimane fa abbiamo coperto l'installazione di Tomato, un firmware del router open source, sul tuo Linksys WRT54GL. Oggi parleremo di come installare OpenVPN insieme a Tomato e di configurarlo per accedere alla rete domestica da qualsiasi parte del mondo!
Cos'è OpenVPN?
Una rete privata virtuale (VPN) è una connessione sicura e affidabile tra una rete locale (LAN) e un'altra. Pensa al tuo router come a un intermediario tra le reti a cui ti stai connettendo. Sia il computer che il server OpenVPN (il router in questo caso) "si stringono la mano" utilizzando certificati che si convalidano a vicenda. Dopo la convalida, sia il client che il server accettano di fidarsi l'uno dell'altro e il client può quindi accedere alla rete del server.
In genere, il software e l'hardware VPN costano un sacco di soldi da implementare. Se non lo hai già indovinato, OpenVPN è una soluzione VPN open source che è (drum roll) gratuita. Tomato, insieme a OpenVPN, è una soluzione perfetta per coloro che desiderano una connessione protetta tra due reti senza dover aprire il loro portafoglio. Ovviamente, OpenVPN non funzionerà immediatamente. Ci vuole un po 'di tweaking e configurazione per farlo nel modo giusto. Non preoccuparti però; siamo qui per rendere questo processo più facile per te, quindi prenditi una tazza di caffè caldo e cominciamo.
Per ulteriori informazioni su OpenVPN, visitare il sito ufficiale What Is OpenVPN? pagina.
Prerequisiti
Questa guida presume che tu stia attualmente utilizzando Windows 7 sul tuo PC e che stai utilizzando un account amministrativo. Se sei un utente Mac o Linux, questa guida ti darà un'idea di come funzionano le cose, tuttavia, potrebbe essere necessario fare un po 'più di ricerca per rendere le cose perfette. Inoltre, installeremo una versione speciale di Tomato chiamata TomatoUSB VPN su un router Linksys WRT54GL versione 1.1. Per scoprire se il tuo router è compatibile con TomatoUSB, controlla la loro pagina Tipi di costruzione.
L'inizio di questa guida presuppone che tu abbia o:
- il firmware Linksys originale installato sul router o
- il firmware Tomato che abbiamo descritto nel nostro ultimo articolo
Prendi nota del testo sopra alcuni passaggi che indicano se si tratta di firmware Linksys o firmware Tomato.
Installare TomatoUSB
In un precedente articolo abbiamo discusso come installare il firmware originale Tomato v1.28 dal sito Web di PolarCloud. Sfortunatamente, quella versione di Tomato non è stata supportata da OpenVPN, quindi installeremo una versione più recente chiamata TomatoUSB VPN.
La prima cosa che vorrai fare è andare sulla homepage di TomatoUSB e fare clic sul collegamento Download Tomato USB.
Scaricare VPN sotto il Kernel 2.4 (stabile) sezione. Salva il file .rar sul tuo computer.
Avrai bisogno di un programma per estrarre il file .rar. Ti suggeriamo di utilizzare WinRAR perché è gratuito e facile da usare. Puoi scaricarti una copia della versione gratuita sul loro sito web. Dopo aver installato WinRAR, fai clic con il pulsante destro del mouse sul file scaricato e fai clic su Estrai qui. Dovresti quindi vedere due file chiamati CHANGELOG e pomodoro-NDUSB-1.28.8754-vpn3.6.trx.
Se stai usando il firmware Linksys ...
Apri il browser e inserisci l'indirizzo IP del router (l'impostazione predefinita è 192.168.1.1). Ti verrà richiesto un nome utente e una password. I valori predefiniti per un Linksys WRT54GL sono "admin" e "admin".
Fai clic sulla scheda Amministrazione in alto. Quindi, fare clic su Aggiornamento firmware come mostrato di seguito.
Fare clic sul pulsante Sfoglia e accedere ai file VPN TomatoUSB estratti. Seleziona il pomodoro-NDUSB-1.28.8754-vpn3.6.trx file e fare clic sul pulsante Aggiorna nell'interfaccia web. Il tuo router inizierà ad installare TomatoUSB VPN e dovrebbe richiedere meno di un minuto per essere completato. Dopo circa un minuto, apri un prompt dei comandi e digita ipconfig -release per determinare il nuovo indirizzo IP del router. Quindi digita ipconfig -renew. L'indirizzo IP a destra di Default Gateway ... è l'indirizzo IP del router.
Nota: Dopo aver installato Pomodoro, vai su Amministrazione> Configurazione e seleziona "Cancella tutta la NVRAM ...".
Se stai usando il firmware di Tomato ...
Apri il browser e inserisci l'indirizzo IP del router. Supponiamo che se hai installato Tomato, conosci l'indirizzo IP del tuo router. Se non sei sicuro, probabilmente è impostato sul valore predefinito di 192.168.1.1. Dopo, inserisci il tuo nome utente e password.
Anche se non è necessario, è consigliabile eseguire il backup della configurazione attuale di Tomato prima di eseguire l'aggiornamento a TomatoUSB VPN, per ogni evenienza. Per salvare la configurazione, accedere a Amministrazione> Configurazione e fare clic sul pulsante Backup. Questo ti chiederà di salvare il file .cfg sul tuo computer.
Ora è il momento di aggiornare Tomato a TomatoUSB VPN. Fai clic su Aggiorna nella colonna di sinistra e fai clic sul pulsante Scegli file. Passare ai file che abbiamo estratto in precedenza e scegliere il pomodoro-NDUSB-1.28.8754-vpn3.6.trx file. Quindi fare clic sul pulsante di aggiornamento.
Ti verrà chiesto di confermare l'aggiornamento; basta fare clic su OK.
Il router inizierà a caricare il nuovo firmware e si riavvierà entro un minuto.
Dopo il riavvio potrebbe avere lo stesso indirizzo IP o un indirizzo IP diverso. Nel nostro caso, la configurazione del router era sempre la stessa quindi il nostro indirizzo IP era sempre lo stesso. Per determinare il nuovo indirizzo IP del router, apri un prompt dei comandi e digita ipconfig -release. Quindi digita ipconfig -renew. L'indirizzo IP a destra di Default Gateway ... è l'indirizzo del tuo router. Se la configurazione è impostata sui valori predefiniti, tornare alla pagina Configurazione (Amministrazione> Configurazione) e fare clic sul pulsante Scegli file in Ripristina configurazione. Cerca il file .cfg che hai salvato sul tuo computer in precedenza e fai clic sul pulsante Ripristina.
Configurazione di OpenVPN
Sia che tu abbia installato il firmware di Linksys o il firmware di Tomato, ora dovresti avere la nuova TomatoUSB VPN installata sul tuo router. Noterai alcuni nuovi menu nella colonna di sinistra, tra cui Web Usage, USB e NAS e Tunneling VPN. Per questa guida, ci occupiamo solo del menu Tunneling VPN, quindi procedi e fai clic su Tunneling VPN. Mantieni aperta questa finestra del browser; Ci torneremo tra poco.
Passiamo ora alla pagina Download di OpenVPN e scarichiamo il programma di installazione di Windows OpenVPN. In questa guida, utilizzeremo la seconda versione di OpenVPN chiamata 2.1.4. L'ultima versione (2.2.0) ha un bug che renderebbe questo processo ancora più complicato. Il file che stiamo scaricando installerà il programma OpenVPN che ti consente di collegarti alla tua rete VPN, quindi assicurati di installare questo programma su qualsiasi altro computer che vuoi fungere da client (vedremo come farlo dopo). Salva il file .exe di openvpn-2.1.4-install sul tuo computer.
Passare al file OpenVPN appena scaricato e fare doppio clic su di esso. Questo inizierà l'installazione di OpenVPN sul tuo computer. Esegui il programma di installazione con tutti i valori di default controllati. Durante l'installazione verrà visualizzata una finestra di dialogo che richiede l'installazione di una nuova scheda di rete virtuale denominata TAP-Win32. Fai clic sul pulsante Installa.
Ora che hai OpenVPN installato sul tuo computer, dobbiamo iniziare a creare i certificati e le chiavi per autenticare i dispositivi.
Creazione di certificati e chiavi
Fai clic sul pulsante Start di Windows e naviga sotto Accessori. Vedrai il programma Prompt dei comandi. Fare clic destro su di esso e fare clic su Esegui come amministratore.
Nel prompt dei comandi, digitare cd c: \ Programmi (x86) \ OpenVPN \ easy-rsa se stai usando Windows 7 a 64 bit come visto di seguito. genere cd c: \ Programmi \ OpenVPN \ easy-rsa se hai Windows a 32 bit, quindi premi Invio.
Adesso scrivi init-config e premi Invio per copiare due file chiamati vars.bat e openssl.cnf nella cartella easy-rsa. Tieni il prompt dei comandi come ci torneremo presto.
Navigare verso C: \ Programmi (x86) \ OpenVPN \ easy-rsa (o C: \ Programmi \ OpenVPN \ easy-rsa su Windows 7 a 32 bit) e fare clic con il tasto destro sul file chiamato vars.bat. Fai clic su Modifica per aprirlo nel Blocco note. In alternativa, ti consigliamo di aprire questo file con Notepad ++, in quanto formatta il testo nel file molto meglio. Puoi scaricare Notepad ++ dalla loro homepage.
La parte inferiore del file è ciò che ci interessa. A partire dalla riga 31, modificare il KEY_COUNTRY valore, KEY_PROVINCE valore, ecc. per il tuo paese, provincia, ecc. Ad esempio, abbiamo cambiato la nostra provincia in "IL", città in "Chicago", org in "HowToGeek" e posta elettronica al nostro indirizzo email. Inoltre, se stai usando Windows 7 64-bit, cambia il CASA valore nella riga 6 a % ProgramFiles (x86)% \ OpenVPN \ easy-rsa. Non modificare questo valore se stai utilizzando Windows 7 a 32 bit. Il tuo file dovrebbe essere simile al nostro di seguito (con i tuoi rispettivi valori, ovviamente). Salvare il file sovrascrivendolo una volta terminata la modifica.
Torna al prompt dei comandi e digita Vars e premi Invio. Quindi digita pulisci tutto e premi Invio. Finalmente, digita build-ca e premi Invio.
Dopo aver eseguito il build-ca comando, ti verrà richiesto di inserire il nome del tuo paese, stato, località, ecc. Poiché abbiamo già impostato questi parametri nel nostro vars.bat file, possiamo saltare oltre queste opzioni premendo Invio, ma! Prima di iniziare a sbattere contro il tasto Invio, fai attenzione al parametro Nome comune. Puoi inserire qualsiasi cosa in questo parametro (ad esempio il tuo nome). Assicurati di entrare qualcosa. Questo comando produrrà due file (un certificato CA root e una chiave CA root) nella cartella easy-rsa / keys.
Ora costruiremo una chiave per un cliente. Nello stesso tipo di prompt dei comandi build-chiave client1. Puoi cambiare "client1" in qualsiasi cosa desideri (ad es. Acer-Laptop). Assicurati di inserire lo stesso nome del Nome comune quando richiesto. Ad esempio, quando si esegue il comando chiave hardware Acer-portatile, il tuo nome comune dovrebbe essere "Acer-Laptop". Esegui tutte le impostazioni predefinite come l'ultimo passaggio che abbiamo fatto (ad eccezione del nome comune, ovviamente). Tuttavia, alla fine ti verrà chiesto di firmare il certificato e di impegnarti. Digitare "y" per entrambi e fare clic su Invio.
Inoltre, non ti preoccupare se hai ricevuto l'errore "Impossibile scrivere" a caso "". Ho notato che i tuoi certificati vengono ancora realizzati senza problemi. Questo comando produrrà due file (una Chiave Client1 e un Certificato Client1) nella cartella easy-rsa / keys. Se si desidera creare un'altra chiave per un altro client, ripetere il passaggio precedente, ma assicurarsi di cambiare il nome comune.
L'ultimo certificato che genereremo è la chiave del server. Nello stesso prompt dei comandi, digitare build-chiave server server. Puoi sostituire "server" alla fine del comando con qualsiasi cosa desideri (ad esempio, HowToGeek-Server). Come sempre, assicurati di inserire lo stesso nome del Nome comune quando richiesto. Ad esempio, quando si esegue il comando build-key-server HowToGeek-Server, il tuo nome comune dovrebbe essere "HowToGeek-Server". Premi Invio ed esegui tutti i valori di default tranne Nome comune. Alla fine, digitare "y" per firmare il certificato e confermare. Questo comando produrrà due file (una chiave server e un certificato server) nella cartella easy-rsa / keys.
Ora dobbiamo generare i parametri di Diffie Hellman. Il protocollo Diffie Hellman "consente a due utenti di scambiare una chiave segreta su un mezzo insicuro senza alcun segreto precedente". Puoi leggere ulteriori informazioni su Diffie Hellman sul sito web di RSA.
Nello stesso tipo di prompt dei comandi build-dh. Questo comando produrrà un file (dh1024.pem) nella cartella easy-rsa / keys.
Creazione dei file di configurazione per il client
Prima di modificare qualsiasi file di configurazione, dovremmo configurare un servizio DNS dinamico. Utilizzare questo servizio se il proprio ISP invia un indirizzo IP esterno dinamico ogni tanto. Se si dispone di un indirizzo IP esterno statico, andare al passaggio successivo.
Ti suggeriamo di utilizzare DynDNS.com, un servizio che ti consente di puntare un nome host (ad es. Howtogeek.dyndns.org) a un indirizzo IP dinamico. Per OpenVPN è importante conoscere sempre l'indirizzo IP pubblico della tua rete e, utilizzando DynDNS, OpenVPN saprà sempre come individuare la tua rete indipendentemente dal tuo indirizzo IP pubblico. Registrati per un nome host e indirizzalo al tuo indirizzo IP pubblico. Una volta registrato il servizio, non dimenticare di configurare il servizio di aggiornamento automatico in Pomodoro in Base> DDNS.
Ora torna alla configurazione di OpenVPN. In Esplora risorse, vai a C: \ Programmi (x86) \ OpenVPN \ sample-config se stai usando Windows 7 o 64 bit C: \ Programmi \ OpenVPN \ sample-config se stai usando Windows 7 a 32 bit. In questa cartella troverai tre esempi di file di configurazione; ci interessa solo il client.ovpn file.
Fai clic destro su client.ovpn e aprilo con Notepad o Notepad ++. Noterai che il tuo file sarà simile all'immagine qui sotto:
Tuttavia, vogliamo il nostro client.ovpn file per apparire simile a Questo immagine qui sotto. Assicurati di cambiare il nome host DynDNS nel tuo hostname nella riga 4 (o cambialo nel tuo indirizzo IP pubblico se ne hai uno statico). Lasciare il numero di porta su 1194 poiché è la porta standard di OpenVPN. Inoltre, assicurarsi di modificare le righe 11 e 12 in modo che riflettano il nome del file del certificato del client e il file chiave. Salvalo come nuovo file .ovpn nella cartella OpenVPN / config.
Configurare Tunneling VPN di Tomato
L'idea di base ora è copiare i certificati e le chiavi del server che abbiamo creato in precedenza e incollarli nei menu del server Tomato VPN. Poi controlleremo alcune impostazioni in Tomato, testeremo la connessione VPN, e poi potremo lavarci le mani e chiamarla un giorno!
Apri un browser e naviga verso il tuo router. Fai clic sul menu Tunneling VPN nella barra laterale sinistra. Assicurarsi che anche Server1 e Basic siano selezionati. Configura le tue impostazioni esattamente come appaiono sotto. Fai clic su Salva.
Aggiornamento: la modalità predefinita è TUN o tunnel, ma probabilmente si desidera cambiarla in TAP, che invece collega la rete. La modalità tunnel metterà i tuoi client esterni su una rete diversa dalla rete interna. Quindi cambia decisamente il tipo di interfaccia in TAP.
Successivamente, fai clic sulla scheda Avanzate accanto a Base. Proprio come prima, assicurati che le tue impostazioni siano esattamente come appaiono sotto. Fai clic su Salva.
Il nostro ultimo passo è incollare le chiavi e i certificati che abbiamo originariamente creato. Apri la scheda Chiavi accanto a Avanzate. In Esplora risorse, vai a C: \ Programmi (x86) \ OpenVPN \ easy-rsa \ keys su Windows 7 a 64 bit (o C: \ Programmi \ OpenVPN \ easy-rsa \ keys su Windows 7 a 32 bit). Apri ogni file corrispondente sotto (ca.crt, server.crt, server.key, e dh1024.pem) con Notepad o Notepad ++ e copia il contenuto. Incolla il contenuto nelle caselle corrispondenti come mostrato di seguito. Devo notare che è sufficiente incollare tutto quanto segue -BEGIN CERTIFICATE- nel file server.crt. OpenVPN funzionerà ancora correttamente se si incolla l'intero file, ma è più "pulito" solo incollando le informazioni sul certificato effettivo. Fai clic su Salva, quindi su Inizia ora.
Prima di testare la nostra connessione VPN, c'è un'altra cosa da controllare all'interno di Tomato. Fai clic su Base nella colonna a sinistra e quindi su Ora. Assicurarsi che l'ora del router sia corretta e Fuso orario visualizza il fuso orario corrente. Imposta il Time Server NTP nel tuo Paese.
Impostazione di un client OpenVPN
In questo esempio utilizzeremo un laptop Windows 7 come nostro cliente. La prima cosa che vorrai fare è installare OpenVPN sul tuo client come abbiamo fatto sopra nei primi passaggi sotto Configurazione di OpenVPN. Quindi vai a C: \ Programmi \ OpenVPN \ config che è dove incolleremo i nostri file.
Ora dobbiamo tornare sul nostro computer originale e raccogliere un totale di quattro file da copiare sul nostro laptop client. Navigare verso C: \ Programmi (x86) \ OpenVPN \ easy-rsa \ keys di nuovo e copia ca.crt, client1.crt, e client1.key. Incolla questi file nel client config cartella.
Infine, abbiamo bisogno di copiare un altro file oltre. Navigare verso C: \ Programmi (x86) \ OpenVPN \ config e copia il nuovo file client.ovpn che abbiamo creato in precedenza. Incolla questo file nel client config cartella anche.
Test del client OpenVPN
Sul laptop client, fare clic sul pulsante Start di Windows e selezionare Tutti i programmi> OpenVPN. Fare clic con il tasto destro sul file GUI OpenVPN e fare clic su Esegui come amministratore. Nota che devi sempre eseguire OpenVPN come amministratore affinché funzioni correttamente. Per impostare in modo permanente il file per l'esecuzione sempre come amministratore, fare clic con il pulsante destro del mouse sul file e fare clic su Proprietà. Sotto la scheda Compatibilità seleziona Esegui questo programma come amministratore.
L'icona della GUI di OpenVPN apparirà accanto all'orologio nella barra delle applicazioni. Fare clic con il tasto destro sull'icona e fare clic su Connetti. Dal momento che abbiamo solo un file .ovpn nel nostro config cartella, OpenVPN si connetterà a quella rete per impostazione predefinita.
Apparirà una finestra di dialogo che mostra un log di connessione.
Una volta connesso alla VPN, l'icona di OpenVPN nella barra delle applicazioni diventerà verde e mostrerà il tuo indirizzo IP virtuale.
E questo è tutto! Ora hai una connessione sicura tra il tuo server e la rete del client usando OpenVPN e TomatoUSB. Per testare ulteriormente la connessione, provare ad aprire un browser sul laptop client e navigare verso il router Tomato sulla rete del server.
Immagine di The Ewan