DD-WRT è un firmware Open Source per un’ampia gamma di router. Molti router hanno molte funzionalità a cui i fornitori non forniscono accesso attraverso l’interfaccia amministrativa del router. Il firmware DD-WRT sblocca tutto ciò di cui il tuo router è capace, incluso diventare un client OpenVPN e / o un server OpenVPN.
Guarda anche: le migliori VPN per router DD-WRT.
Dove trovo un router DD-WRT?
Linksys ha prodotto i router WRT originali. Il firmware open source DD-WRT di oggi si basa sul firmware WRT Linksys sviluppato per la sua serie di router WRT54G. La parte “DD” di DD-WRT è una punta di cappello al codice targa per la città di Dresda, in Germania, dove vive il principale manutentore del progetto DD-WRT.
Oggi è possibile acquistare router che già eseguono DD-WRT da Linksys e altri produttori di router. È anche possibile installare DD-WRT su molte altre marche di router con firmware proprietario installato. Ad esempio, il mio router è un ArcherC9 TP-Link c1900 fornito con il firmware TP-Link. L’ho fornito con il firmware DD-WRT appropriato e ora è un router DD-WRT.
Perché installare OpenVPN sul router?
Il tuo router come client OpenVPN
Dato che esiste un’applicazione client OpenVPN per quasi tutti i computer, tablet e telefoni presenti sul mercato, non è sempre ovvio il motivo per cui l’installazione di OpenVPN sul router può essere un vantaggio.
La connessione diretta del tuo router al tuo provider VPN significa che non devi necessariamente eseguire il software VPN su nessuno dei tuoi dispositivi. Spero che tu stia utilizzando WPA2 o un livello equivalente di crittografia sulla tua rete interna, quindi è ragionevole supporre che il traffico sia in qualche modo protetto da occhi indiscreti. Ma una volta che il tuo traffico colpisce il router, passa attraverso la rete del tuo ISP verso la sua destinazione. La configurazione del router come client VPN garantisce che il traffico in uscita dal router sia crittografato mentre attraversa l’ISP fino a raggiungere il punto di uscita VPN su Internet pubblico.
I vantaggi di eseguire un client VPN sul router includono:
- È necessaria solo una connessione al server VPN. Questo può aiutare a evitare i limiti di connessione impostati da alcuni provider VPN.
- Molti dispositivi come Apple TV non hanno un modo semplice per installare il software VPN. Avendo il software VPN in esecuzione sul tuo router, tutto il traffico dalla tua rete passa attraverso la VPN senza soluzione di continuità.
- La VPN è sempre attiva, quindi non devi ricordarti di avviarla quando vuoi usarla.
Il tuo router come server OpenVPN
Trasformare il tuo router in un server OpenVPN significa che sarai in grado di accedere alla tua rete domestica dall’esterno. Se sei in viaggio ma hai bisogno di accedere a documenti o altri computer sulle tue reti interne, puoi avviare un client OpenVPN, connetterti al server OpenVPN del tuo router e sei in.
Come faccio a trasformare il mio router DD-WRT in un client OpenVPN?
Il firmware DD-WRT lo rende molto semplice in quanto supporta VPN in stile OpenVPN e PPTP. PPTP è un protocollo VPN molto insicuro, quindi consigliamo OpenVPN su PPTP.
Guarda anche: Il nostro cheat sheet dei protocolli VPN.
Accedi al tuo router. L’indirizzo di accesso dell’interfaccia amministrativa DD-WRT è in genere 192.168.0.1, ma è possibile che la rete sia stata configurata in modo diverso. Una volta entrato, vai al Servizi scheda, quindi al VPN linguetta.
Configureremo la funzione client OpenVPN del router. La prima cosa di cui avrai bisogno è un server OpenVPN a cui connetterti. Potresti aver creato il tuo server OpenVPN o potresti utilizzare un provider VPN che supporta OpenVPN. Userò ProtonVPN per questo articolo, ma oltre a ottenere la configurazione OpenVPN da Proton, non ci dovrebbero essere differenze significative nella configurazione di diversi provider.
Abilitare l’impostazione del client OpenVPN
Clicca il Abilitare pulsante di opzione per espandere le impostazioni del client.
La maggior parte dei provider VPN che utilizzano OpenVPN forniranno un file di configurazione da utilizzare. In alcuni casi, avrai anche bisogno di un nome utente e una password. Il contenuto di ogni file di configurazione OpenVPN può variare. Sarebbe utile se l’interfaccia DD-WRT avesse una funzione di importazione, ma poiché non lo è, dobbiamo cercare di identificare quali parti del file di configurazione devono andare in ogni campo.
Il mio file di configurazione ProtonVPN ha alcune impostazioni all’inizio, quindi alcuni file di certificato alla fine. Ho indicato le poche impostazioni che dovrai configurare manualmente sul tuo router DD-WRT in questo screenshot:
Nel caso di ProtonVPN, devo anche inserire il mio nome utente e password nei campi appropriati.
Le restanti impostazioni devono essere copiate e incollate nel campo Config aggiuntiva del router DD-WRT.
A questo punto vogliamo salvare le nostre impostazioni facendo clic su Salva pulsante nella parte inferiore della pagina. Le persone attente alla sicurezza vorranno fare qualche ulteriore lavoro sulle impostazioni DNS del router prima di attivare la VPN, motivo per cui non sto scegliendo di fare clic su Applica le impostazioni pulsante ancora.
Configura il tuo DNS
Quando una VPN è attiva, tutto il tuo traffico lo attraversa, crittografato, oltre gli occhi indiscreti della tua rete locale e del tuo ISP. Tuttavia, per accedere ovunque a Internet, il tuo computer deve eseguire ricerche DNS. Le ricerche DNS risolvono i nomi di dominio del sito come example.com in un indirizzo IP che il computer può utilizzare. Sebbene tali ricerche DNS non contengano informazioni effettive su ciò che stai facendo su un determinato sito, possono fornire a un osservatore un elenco completo di tutti i siti che il tuo computer ha cercato e probabilmente visitato.
Alcune VPN forniscono servizi DNS oltre alla loro VPN ma puoi anche impostare il tuo router in modo da utilizzare più server DNS anonimi apportando una rapida modifica della configurazione.
Passare al Impostare -> Configurazione di base scheda e inserisci i server DNS che preferiresti utilizzare nei campi DNS statici. Questo esempio mostra i server DNS.WATCH.
Clicca il Applica le impostazioni pulsante. Ora puoi avviare la VPN. Torna al Servizi -> VPN scheda e fare clic su Applica le impostazioni pulsante. Passare al Stato -> OpenVPN scheda e dovresti vedere il messaggio incoraggiante Client: CONNECTED SUCCESS in alto. Si noti che la scheda di stato OpenVPN non esiste fino a quando il servizio OpenVPN è abilitato.
Il router ora sta inviando tutto il traffico dai suoi dispositivi connessi tramite la VPN.
Puoi confermare che le tue impostazioni DNS funzionano utilizzando il nostro test di perdita DNS.
Per disabilitare la VPN, tornare alla scheda OpenVPN, fare clic su disattivare pulsante di opzione, quindi fare clic sul Applica le impostazioni pulsante in basso. Il riquadro delle impostazioni di OpenVPN verrà chiuso quando lo si disabilita, ma le impostazioni rimarranno in posizione per la prossima volta che lo si abilita.
Come faccio a trasformare il mio router DD-WRT in un server OpenVPN?
Il primo passo è generare alcuni certificati e chiavi da usare per il server OpenVPN. Il modo più semplice per farlo è installare OpenVPN sul tuo computer e utilizzare le sue utilità per generare i file necessari. Trova le istruzioni su come farlo per i sistemi Windows sul sito OpenVPN. Gli utenti Linux possono utilizzare i comandi seguenti. Se sei interessato ad avere maggiori informazioni sull’installazione completa, ho un articolo di installazione OpenVPN Linux più completo qui. Si noti che sebbene non stiamo installando un server OpenVPN questa volta (il router sarà il server), dobbiamo comunque fare lo stesso lavoro per generare certificati.
Per Ubuntu e altri utenti basati su Debian, installare openvpn e i pacchetti easy-rsa:
sudo apt-get intstall openvpn easy-rsa
Dovrai utilizzare yum o un gestore di pacchetti simile per le distribuzioni basate su RedHat. I nomi dei pacchetti dovrebbero essere uguali o molto simili.
Crea una directory in cui lavorare, chiamo il mio openvpn
mkdir openvpn; cd openvpn
Ora esegui i comandi di generazione del certificato. Incolla questi esattamente includendo i punti:
/ usr / bin / make-cadir CA
cd CA
fonte ./vars
./pulisci tutto
./build-ca
./build-key-server server
./build-dh
./build-key client
chiavi cd; openvpn –genkey –secret pfs.key
Si noti che alcuni dei comandi richiederanno l’incorporazione delle informazioni sulla posizione nel certificato. Va bene lasciare le impostazioni predefinite e forse anche desiderabile poiché tali informazioni possono essere lette da chiunque. Se vuoi personalizzarlo per qualche motivo, puoi aggiornare le righe da 64 a 69 file CA / vars con le informazioni sulla posizione che preferisci utilizzare. I valori predefiniti sono:
export KEY_COUNTRY ="NOI"
export KEY_PROVINCE ="circa"
export KEY_CITY ="San Francisco"
export KEY_ORG ="Fort-Funston"
export KEY_EMAIL ="[email protected]"
export KEY_OU ="MyOrganizationalUnit"
Alla fine delle due sequenze di generazione chiave ti verrà chiesto di fornire una passphrase di sfida. Non fornire questo per la chiave del server perché impedirà a OpenVPN di avviarsi incustodito. Potresti anche voler lasciare la chiave client senza una password perché alcuni client OpenVPN non hanno modo di fornirla al momento della connessione. Per superare questi prompt senza fornire una password basta premere il tasto Invio.
Si noti che l’ultimo comando è facoltativo ma desiderabile. È la chiave che consentirà al router di fornire Perfect Forward Secrecy (PFS). PFS consente alla tua connessione VPN di negoziare periodicamente una nuova chiave statica durante la sessione. Ciò fornisce maggiore sicurezza nel caso in cui le tue chiavi private vengano mai compromesse. Senza PFS, tutte le tue precedenti connessioni VPN possono essere decifrate da chiunque abbia la tua chiave privata. Con PFS questo non è possibile perché la chiave cambia periodicamente e la chiave sostituita scompare in uno sbuffo di fumo.
A questo punto ora dovresti avere un sacco di file di chiavi e certificati nella directory CA / keys:
$ ls -1 CA / chiavi /
01.pem
02.pem
ca.crt
ca.key
client.crt
client.csr
client.key
dh2048.pem
index.txt
index.txt.attr
index.txt.attr.old
index.txt.old
seriale
serial.old
server.crt
server.csr
server.key
pfs.key
Ne abbiamo bisogno solo alcuni di questi. Apri i seguenti file in un editor di testo come Blocco note o vi. Non utilizzare alcun tipo di elaboratore di testi. Copia i valori e incollali nel campo corrispondente della pagina Server / Demone OpenVPN DD-WRT. Nell’interfaccia amministratore del router, accedere a Servizi -> VPN e fai clic sul pulsante di opzione Abilita nella sezione Server / demone OpenVPN.
- Incollare il ca.crt nel campo CA Cert
- Incolla server.crt nel campo Cert del server pubblico
- Incolla il server.key nel campo Chiave del server privato
- Incolla dh2048.pem nel campo DH PEM
- Incolla pfs.key nella chiave di autenticazione TLS (supponendo che tu abbia creato questa chiave)
Se sei particolarmente paranoico, puoi specificare un elenco di revoche di certificati. Questo dirà al server OpenVPN di controllare l’elenco di revoche prima di accettare qualsiasi certificato da un client di connessione. La configurazione e l’utilizzo di un elenco CRL sono leggermente avanzati per questo articolo.
Clicca il Applica le impostazioni pulsante e il tuo server VPN dovrebbe avviarsi. Puoi visitare il Stato-> OpenVPN pagina per vedere lo stato della connessione. Questa volta, il messaggio dice Server: CONNECTED SUCCESS piuttosto che Client: CONNECTED SUCCESS che hai visto quando il client era in esecuzione.
Il passaggio successivo è generare un file di configurazione client che è possibile utilizzare sui dispositivi per connettersi al nuovo server OpenVPN. È importante che alcune impostazioni su ciascun lato (client / server) si completino a vicenda. Ho finito con una configurazione client simile a questa:
cliente
dev tun
proto udp
remoto YOUR_IP_ADDRESS 1194
cifra AES-256-CBC
codice TLS-DHE-RSA-CON-AES-256-CBC-SHA
auth sha256
comp-lzo
link-mtu 1570
—– INIZIA TASTO PRIVATO —–
Copia il contenuto del tuo file client.key e incollalo qui.
—– TASTO PRIVATO FINE —–
—– INIZIA ATTESTATO —–
Copia il contenuto del tuo file client.crt e incollalo qui.
—– CERTIFICATO DI FINE —–
—– INIZIA ATTESTATO —–
Copia il contenuto del tuo file ca.crt e incollalo qui.
—– CERTIFICATO DI FINE —–
direzione chiave 1
Copia il contenuto del tuo file pfs.key e incollalo qui
Ho quindi lanciato il mio client openvpn e si è collegato:
$ sudo openvpn –config client-config.ovpn
Sab 23 Set 16:05:05 2023 OpenVPN 2.3.10 x86_64-pc-linux-gnu [SSL OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] costruito il 22 giugno 2023
Sab 23 set 16:05:05 2023 versioni della libreria: OpenSSL 1.0.2g 1 mar 2016, LZO 2.08
Sab 23 Set 16:05:05 2023 Autenticazione canale di controllo: tls-auth utilizzando il file di chiavi statiche INLINE
Sab 23 Set 16:05:05 2023 UDPv4 link local (bound): [undef]
Sab 23 Set 16:05:05 2023 UDPv4 link remote: [AF_INET] 192.168.0.1:1194
Sab 23 Set 16:05:09 2023 [server] Connessione peer avviata con [AF_INET] 192.168.0.1:1194
Sab 23 Set 16:05:12 2023 Tun0 dispositivo TUN / TAP aperto0
Sab 23 Set 16:05:12 2023 do_ifconfig, tt->ipv6 = 0, tt->did_ifconfig_ipv6_setup = 0
Sab 23 set 16:05:12 2023 / sbin / ip link set dev tun0 up mtu 1497
Sab 23 Set 16:05:12 2023 / sbin / ip addr aggiungi dev tun0 10.10.10.2/24 broadcast 10.10.10.255
Sab 23 Set 16:05:12 2023 Sequenza di inizializzazione completata
Sto usando il client OpenVPN della riga di comando di Linux, ma questo stesso file conf dovrebbe funzionare con qualsiasi client OpenVPN su qualsiasi piattaforma, l’ho provato sul mio telefono Android utilizzando OpenVPN Connect ed è stato in grado di connettermi.
Nota la linea remota della mia configurazione client. Puoi usare il tuo indirizzo IP esterno, ma se il tuo ISP ruota di tanto in tanto il tuo indirizzo IP esterno, potresti voler usare un nome host dinamico. Il DNS dinamico è un processo in base al quale associ un nome di dominio statico all’IP del tuo router e quel nome host rimane puntato all’indirizzo IP corretto anche se cambia. Visitare il Impostare -> DDNS scheda del router DD-WRT per visualizzare l’elenco dei provider DNS dinamici che supporta.
OpenVPN è una soluzione VPN affidabile e affidabile. È ampiamente utilizzato, in particolare tra i provider VPN molto attenti alla privacy. I router che eseguono DD-WRT rendono particolarmente facile eseguire in sicurezza sia il traffico in uscita tramite la configurazione del client OpenVPN, sia il traffico in entrata tramite la configurazione del server OpenVPN.
Guarda anche: I migliori provider VPN Linux.
“Linksys WRT54-G Router” di Webmhamster concesso in licenza con CC BY 2.0
PN su un VPS o su un altro dispositivo nella tua rete domestica. Inserisci le informazioni del server OpenVPN nella sezione Configurazione client OpenVPN. Queste informazioni includono lindirizzo IP del server, la porta, il protocollo e il nome utente e la password se necessario. Una volta inserite le informazioni, fai clic su Salva e applica le impostazioni. Il tuo router DD-WRT è ora configurato come client OpenVPN e dovrebbe connettersi automaticamente al server OpenVPN specificato. Come faccio a trasformare il mio router DD-WRT in un server OpenVPN? Configurare il tuo router DD-WRT come server OpenVPN è un po più complicato rispetto alla configurazione del client OpenVPN, ma ancora fattibile. Accedi al tuo router e vai alla Servizi scheda, quindi al VPN linguetta. Configureremo la funzione server OpenVPN del router. La prima cosa da fare è generare le chiavi e i certificati necessari per il server OpenVPN. Questo può essere fatto utilizzando il generatore di chiavi integrato in DD-WRT. Una volta generati i certificati, inserisci le informazioni del server OpenVPN nella sezione Configurazione server OpenVPN. Queste informazioni includono lindirizzo IP del server, la porta, il protocollo e il nome utente e la password se necessario. Una volta inserite le informazioni, fai clic su Salva e applica le impostazioni. Il tuo router DD-WRT è ora configurato come server OpenVPN e dovrebbe essere in grado di accettare le connessioni VPN in entrata. In conclusione, DD-WRT è un firmware Open Source che sblocca tutte le funzionalità del tuo router, inclusa la possibilità di diventare un client o un server OpenVPN. Questo può essere utile per proteggere il traffico della tua rete domestica o per accedere alla tua rete domestica dallesterno. La configurazione del router come client o server OpenVPN può essere un po complicata, ma con le giuste informazioni e la guida, è fattibile per la maggior parte degli utenti.