Questa guida vi aiuterà a configurare OpenVPN sul vostro router Linksys OpenWRT. Seguendo questi passaggi, sarete in grado di connettervi in modo sicuro al vostro router da qualsiasi parte del mondo utilizzando una VPN, che vi consentirà di accedere al vostro computer.
In caso di problemi o di necessità di ulteriore assistenza, consultare il Forum OpenWRT o la Documentazione OpenVPN
- Router OpenWRT: assicurarsi che il router sia il modello MBE70 con OpenWRT.
- Accesso SSH: abilitare l'accesso SSH sul router.
- Verificare lo stato di NAT-Traversal: se ci si trova in questa situazione, è necessario eseguire un ulteriore passaggio.
1. Scaricare lo script di configurazione
- Accedere al router: utilizzare un client SSH per connettersi al router.
ssh root@<router_ip>
- Scaricare lo script: Scaricare lo script di installazione sul router.
wget -O /tmp/setup_openvpn_server.sh <link_to_script>
Nota: verificare che gli IP utilizzati nelle variabili VPN_POOL e VPN_DNS non siano in conflitto con la propria rete. Lo script di cui sopra utilizza la rete 10.8.0.0/24. Se questa rete è già in uso, sia dal lato del router che dal lato del client, non sarà possibile stabilire una connessione VPN. In tal caso, è sufficiente modificare queste variabili.
2. Eseguire lo script
chmod +x /tmp/setup_openvpn_server.sh
3. Eseguire lo script di installazione
sh /tmp/setup_openvpn_server.sh
Questo script:
- Installare i pacchetti necessari (openvpn-openssl e openvpn-easy-rsa).
- Generare chiavi e certificati.
- Configurare il server OpenVPN.
- Configurare le regole del firewall.
4. Trasferire il file di configurazione del client
Dopo aver eseguito lo script, è necessario trasferire il file di configurazione del client sul computer locale:
scp root@<router_ip>:/etc/openvpn/openvpn_client.ovpn /path/to/local/machine
5. Verifica dell'attraversamento NAT
È necessario scaricare lo script di controllo NAT ed eseguirlo sul router. Vi dirà se vi trovate in una situazione di NAT:
wget -O /tmp/check_nat.sh <link_to_script>
chmod +x /tmp/check_nat.sh
/tmp/check_nat.sh
Lo script fornisce la diagnostica. Se si ottiene il seguente risultato, il router si trova dietro un NAT:
The device is likely behind a NAT (È probabile che il dispositivo si trovi dietro una NAT)
Se non ci si trova in questa situazione, si può passare direttamente al punto 6.
Se vi trovate in questa situazione, seguite le istruzioni riportate di seguito. Il punto 5.a è obbligatorio solo se non si dispone di un IP pubblico statico. Se si è certi di disporre di un IP pubblico statico, si può passare direttamente al punto 5.b.
a. Configurare un servizio DNS dinamico
Esistono molti servizi di DNS dinamico gratuiti. È possibile scegliere quello desiderato. Per l'esempio sceglieremo https://www.dynu.com. Vi verrà chiesto di scegliere un nome di dominio. Diciamo che ho scelto “remote_me.ddnsfree.com”.
Ora dovete configurare il vostro router per inviare il vostro indirizzo al servizio. In questo modo, se il vostro IP cambia, non dovrete configurarlo manualmente su dynu.com, ma il router lo farà automaticamente.
Per farlo, collegatevi al router e selezionate Dynamic DNS:

Quindi modificare il servizio my_ddns_IPv4 o crearne uno nuovo:

Passare quindi alle impostazioni avanzate e configurarle come segue:

In caso contrario, il router tenterà di condividere l'indirizzo IP privato, che verrà rifiutato dal servizio Dynamic DNS.
Al termine, fate clic su Save and Apply (Salva e applica) e tornate alla pagina DynamicDNS. A questo punto è necessario avviare il servizio e fare clic su Start (Avvia):

b. Modificare il file OpenVPN
Per coloro che non hanno avuto bisogno del servizio di DNS dinamico perché hanno un IP statico, recuperare il proprio IP statico. Potete chiedere al vostro browser web preferito o eseguire un comando più minimalista:
curl ifconfig.me
Ora che conosciamo il nostro IP, dobbiamo modificare il file opvn che descrive la connessione. Aprite il file "openvpn_client.ovpn ” che avete recuperato prima e modificate la riga 4:
remote 192.168.1.22 1194
diventa: (l'indirizzo IP di cui sopra è solo un esempio):
remove my_own_chosen_ddns_name.my_ddns_service.com 1194
oppure se si conosce il proprio IP pubblico statico:
remote x.x.x.x 1194
OK, ora salvate il file. È possibile passare alla fase successiva.
c. Configurare il router ISP
Questa è la parte più complicata e dipende dal vostro ISP, per cui è difficile fornire spiegazioni chiare. Innanzitutto, è necessario collegarsi al router che esegue il NAT. Per trovare l'IP di tale router, è possibile eseguire il seguente comando sul router OpenWRT:
route
Si otterrà qualcosa di simile a questo:
Tabella di routing IP del kernel
È necessario individuare il gateway predefinito. Nel caso precedente, il gateway predefinito è 192.168.1.1.
A questo punto, è necessario collegarsi a quel dispositivo e trovare la configurazione di routing/NAT. Quindi è necessario configurare la porta 1194 proveniente dall'esterno per trasferirla alla porta 1194 all'interno della rete privata sul dispositivo OpenWRT. Questo è il modo in cui è mostrato nel mio caso:

Anche in questo caso, la procedura varia a seconda del vostro ISP. Se siete riusciti a realizzare questa parte, potete finalmente passare alla passo 6!
Se non riuscite a superare questo passaggio, non preoccupatevi, è possibile effettuare un'altra configurazione; consultate Configurazione dell'accesso remoto con ZeroTier VPN.
6. Connettersi utilizzando il client OpenVPN
- Installare il client OpenVPN: scaricare e installare il client OpenVPN per il proprio sistema operativo dal sito ufficiale di OpenVPN.
- Importare il file di configurazione: aprire il client OpenVPN e importare il file openvpn_client.ovpn trasferito sul computer locale.
- Connettersi alla VPN: selezionare la configurazione importata e fare clic su Connect (Collegare).
Una volta connessi, verificate che il vostro indirizzo IP sia cambiato e che possiate accedere alle risorse interne della vostra rete. Se non avete modificato lo script OpenVPN_Remote.sh fornito all'inizio di questo articolo, potete provare a collegarvi via SSH al vostro router con il seguente IP: 10.8.0.1
Problemi comuni
- Connessione rifiutata: verificare che il firewall del router consenta le connessioni in entrata sulla porta OpenVPN.
- Errori di configurazione: verificare la presenza di errori di configurazione nei log di OpenVPN:
logread -e openvpn
Per gli utenti avanzati, è possibile personalizzare ulteriormente la configurazione di OpenVPN. Modificare il file di configurazione del server situato in /etc/openvpn/openvpn_server.conf e apportare le modifiche necessarie.
Considerazioni sulla sicurezza
- Utilizzare password forti: Assicurarsi che tutte le password siano forti e sicure.
- Mantenere il software aggiornato: Aggiornare regolarmente OpenWRT e i pacchetti installati alle versioni più recenti.
- Monitoraggio delle registrazioni: Controllate regolarmente OpenVPN e i registri di sistema per rilevare eventuali attività insolite.

