Come creare una VPN non solo tra PC, ma anche con Android e iPhone

Sapete che potete trasformare il vostro computer in un server VPN, permettendovi di avere una connessione internet privata e sicura senza bisogno di abbonarvi a un servizio apposito?
Alessandro Nodari
Alessandro Nodari
Come creare una VPN non solo tra PC, ma anche con Android e iPhone

Usare una VPN è utile per migliorare la propria privacy online o per accedere a contenuti altrimenti non raggiungibili dal Paese di residenza. In alcuni casi, come quando ci si connette a reti Wi-Fi pubbliche, è estremamente consigliata (al netto di alcune considerazioni).

Ma è veramente necessario pagare per una delle migliori VPN o affidarsi a una VPN gratuita che dà meno garanzie di privacy e sicurezza, o offre meno dati? Forse non sapete che c'è una terza soluzione, ovvero la possibilità di creare una VPN, sia tra due computer che da usare con qualsiasi altro dispositivo. 

Vediamo quindi come creare una VPN, tenendo presente che questa procedura presenta alcuni vantaggi, ma anche qualche svantaggio. I vantaggi sono che avrete una VPN gratuita usando strumenti open source in rete e dispositivi che potreste avere in casa. Inoltre questa soluzione vi permette di avere il massimo controllo su chi può vedere il vostro traffico online, e magari anche di imparare qualcosa!

Gli svantaggi sono che creare una VPN non è proprio come installare un programma e cliccare su un pulsante per avviarla.

Dovete perderci dietro un po' di tempo, e seguire le istruzioni con attenzione per non compromettere la sua sicurezza. Inoltre una VPN "fatta in casa" ha meno funzioni di una già pronta. 

Nondimeno, una volta arrivati alla fine di questa guida avrete la soddisfazione di aver fatto qualcosa da soli. E già solo questo vi ripagherà!

Prima di iniziare vi ricordiamo l'offerta di NordVPN, il più celebre servizio di questo tipo, che può essere vostro per poco più di 3 euro al mese grazie alla nostra offerta promozionale. E con Meshnet, NordVPN permette facilmente di creare "un ponte" tra due dispositivi, in modo che uno appaia come collegato alla rete locale dell'altro, che poi è in parte lo scopo di questa guida.

Indice

Come creare una VPN tra due PC

Creare una VPN (Virtual Private Network) tra due computer può fornire un modo sicuro per trasferire i dati su Internet.

Sia che vogliate accedere ai file da remoto o stabilire un canale di comunicazione privato, una VPN garantisce che le informazioni rimangano crittografate e protette da accessi non autorizzati.

Questa soluzione inoltre ha un vantaggio che usare un servizio VPN non ha: potete interagire con altri utenti che sono connessi alla stessa rete. 

Per creare una VPN avete bisogno di almeno due PC (un host e un client), una connessione Internet per stabilire la rete (su tutti i PC), e l'indirizzo IP, con le credenziali di ogni PC che accede alla rete. Vediamo come fare, da PC Windows e Linux. Tenete presente che queste soluzioni sono piuttosto complesse.

In assoluto creare una VPN da un computer non è la scelta più consigliata perché deve essere sempre attivo e per la procedura. È consigliato creare un server su cloud e poi utilizzarlo da lì, anche per una maggiore versatilità, ma ovviamente dovrete pagare per la macchina, in genere sui 4 dollari al mese.

In fondo a questo capitolo mostreremo un modo più semplice per farlo sfruttando uno strumento open-source chiamato Algo. 

Su PC Windows

Il modo più sicuro per creare una VPN è utilizzare lo strumento di OpenVPN, ma volendo potete usare anche quello integrato di Windows. Il problema di questa soluzione è che utilizza il protocollo PPTP (Point to Point Tunneling Protocol), che si basa sull'obsoleta suite di autenticazione MS-CHAP v2, il che significa che è facile da decifrare. Quindi non sicuro. 

Prima di tutto, configurate un DNS dinamico utilizzando un servizio gratuito come no-ip.com o Duck DNS. Questo sistema serve perché il vostro gestore di servizi internet probabilmente assegnerà un indirizzo dinamico al vostro router, il che significa che se volete connettervi alla VPN dall'esterno della rete sarà diverso ogni volta. 

no-ip

No-IP associa un hostname al vostro indirizzo IP dinamico, e dovrete usare solo quello (ma tenete presente che deve essere confermato ogni 30 giorni).

Per usare il servizio andate qui e registratevi al servizio (tramite email o account Google), poi nella pagina seguente cliccate a sinistra su DNS Dinamico e qui selezionate Crea Hostname. Digitate un nome per l'host, che può essere [nomecognome] con dominio a scelta, ad esempio ddns.net

Cliccate su Crea Hostname e ora dovrete scaricare l'app No-IP sul PC. Cliccate qui e selezionate Scarica ora per scaricarla, poi cliccateci sopra due volte per installarla. Scegliete se attivare o meno il servizio in background e lanciatela, poi effettuate l'accesso.

Per i dati di accesso, andate sul sito No-IP, cliccate a sinistra su DNS dinamico e poi su No-IP Hostnames a sinistra, poi cliccate su Crea DDNS Key e mostrate la password cliccando sull'icona dell'occhio. Salvate password e username, perché la password non verrà più mostrata. Ora mettete la spunta sull'host appena creato e cliccate su Save, e l'app No-IP si connetterà.

Adesso assegnate al computer che vi serve per creare la VPN un IP locale statico. Per farlo, andate sul pannello di controllo del router di casa e dalle Impostazioni LAN o Dispositivi cliccate su associazione DHCP, o attivate l'opzione per assegnare un IP statico. Adesso assegnate un IP al computer (esempio, 192.168.1.25) e salvate le impostazioni. 

Per esempio, da Iliadbox entrate nel sito delle impostazioni ed effettuate l'accesso, poi cliccate su Parametri della Iliadbox e cliccate su DHCP. Ora cliccate su Lease statici e aggiungetene uno cliccando su indirizzo MAC e selezionando il PC, poi assegnate l'indirizzo IP

configurazione iliadbox

Adesso dovete modificare le impostazioni del router per consentire l'accesso dall'esterno. Quindi, sempre dal sito di configurazione del router, andate su Gestione porte (es. Iliadbox), Port forwarding o Virtual Server. Qui cliccate su Aggiungi reindirizzamento e in IP di destinazione inserite l'indirizzo IP locale statico del computer appena creato (in quello di origine mettete Tutti). In porta inserite 47 o 1723 con protocollo TCP e UDP.

Sistema integrato (poco sicuro)

Adesso andate sul computer Windows. Per creare una VPN con il sistema integrato (potrete connettere solo un dispositivo alla volta), premete il tasto Windows, poi scrivete "connessioni" e cliccate su Visualizza connessioni di rete.

attivare vpn windows

Adesso premete i tasti Alt + F e selezionate Nuova connessione di ingresso. Adesso mettete la spunta agli account a cui volete consentire di accedere alla VPN, o cliccate su Aggiungi utente per crearne uno. Ora inserite un nome utente, il suo nome completo e impostate una password. 

Cliccate su Avanti e mettete la spunta su Tramite Internet. Cliccate su Avanti, mettete la spunta alle caselle Protocollo Internet versione 4, Condivisione file e stampanti per reti Microsoft e Utilità di pianificazione pacchetti QoS. Cliccate su Protocollo Internet versione 4 e selezionate Proprietà.

Ora cliccate su Specifica indirizzi IP e inserite l'indirizzo IP di partenza (ad esempio 192.168.1.150) e l'indirizzo IP finale da assegnare ai dispositivi che si collegheranno alla VPN (per esempio, per riservare 10 indirizzi IP inserite come finale 192.168.1.159).

Ora cliccate su OK e selezionate Consenti accesso

Poi cliccate su Chiudi e la VPN sarà creata. Tenete presente che il computer dovrà essere sempre attivo, altrimenti la VPN non funzionerà quando vi connetterete dall'altro computer. 

Con OpenVPN

Per una VPN più sicura, potete usare OpenVPN. La sua configurazione però è piuttosto complessa: per usarla vi rimandiamo alla guida dedicata, mentre qui trovate una versione più semplice, anche se in inglese. 

Vediamo comunque brevemente come usarlo, dopo aver modificato le impostazioni del router per consentire le connessioni in ingrasso. Andate sul sito di OpenVPN e scaricate il programma per Windows, poi invece di cliccare su Install Now cliccate su Customize e in Custom Installation assicuratevi che sotto OpenSSL Utilities, EasyRSA 3 Certificate Management Scripts sia selezionato. Cliccate su Install Now.

A installazione avvenuta, dovete usare il prompt dei comandi per configurare EasyRSA 3, che vi servirà per creare i certificati e le chiavi.

Configurate il modello per generare i certificati, impostate le dimensioni della chiave e avviate la generazione dei certificati e chiavi, sia per il server che per i client VPN (il dispositivo che si connetterà alla VPN). 

Dopo aver creato i file di configurazione, potete configurare il server OpenVPN, cosa che potete fare usando il protocollo UDP e l'autenticazione TLS. Una volta completata questa procedura, dovete installare il client OpenVPN sull'altro computer. 

Infine, avviate il server OpenVPN individuando OpenVPN GUI nella barra delle applicazioni di Windows e cliccandoci sopra con il tasto destro del mouse. Selezionate Connetti. 

Linux

Creare una VPN su Linux è un po' meno immediato. La procedura per creare l'IP locale statico e aprire il NAT sono le stesse, mentre per installare No-IP bisogna agire da terminale. 

Aprite il Terminale, poi digitate i seguenti comandi, premendo Invio dopo ognuno di essi. 

wget https://www.noip.com/download/linux/latest

tar xf noip-duc_3.1.0.tar.gz

cd /home/$USER/noip-duc_3.1.0/binaries && sudo apt install .

/noip-duc_3.1.0_amd64.deb

Vi verrà richiesta la password del computer: digitatela seguita da Invio, poi avviate No-IP (noip-duc). Inserite i dati di accesso di No-IP e seguite le istruzioni quando richiesto. Arriverete a un punto in cui vi si conferma la creazione del file di configurazione */tmp/no-ip2.conf, poi apparirà un testo con la scritta mv /tmp/no-ip2.conf /usr/local/etc/no-ip2.conf. Da Linux non c'è l'opzione per avviare No-IP in background, ma dovete avviarlo con il comando sudo noip2. 

Una volta preparato il computer, potete creare la VPN. Anche in questo caso si tratta di una VPN su protocollo PPTP, ma come alternativa potete usare anche qui OpenVPN utilizzando il tool PiVPN, come spiegato in questa guidanell'ottima guida di inDomus.  

Avviate il Terminale e inserite il seguente comando, seguito da Invio: 

sudo apt install pptpd

Inserite la password, e premete Invio, poi avviate l'installazione.

Adesso dovete indicare al server VPN l'indirizzo IP del computer e gli indirizzi IP da assegnare ai dispositivi ospiti, quindi digitate il seguente comando, seguito da Invio:

sudo gedit /etc/pptpd.conf

Andate alla fine del testo, andate a capo e inserite la seguente riga di testo per quanto riguarda l'IP per il server (nel vostro caso potrebbe essere diverso):

localip 192.168.1.25

Premete Invio e inserite la seguente riga di testo per i dispositivi ospiti. Anche in questo caso, come da Windows, inseriremo un range di indirizzi IP. Qui ne indichiamo 10, ma potete anche riservarne 20 o di più, quelli che desiderate:

remoteip 192.168.1.150-159

Cliccate su Salva e chiudete la finestra. Adesso digitate il seguente comando e premete Invio, per poi inserire la password di sistema:

 sudo gedit /etc/ppp/pptpd-options

Andate in fondo al file e inserite le seguenti righe di testo, tenendo presente che di fianco a ms-dns dovete inserire l'indirizzo IP del vostro router come spiegato qui:

ms-dns [indirizzo IP router]
nobsdcomp
noipx
mtu 1490
mru 1490

Poi cliccate su Salva e chiudete la finestra.

Adesso dovete digitare il seguente comando, per poi premere Invio e inserire la password:

sudo gedit /etc/ppp/chap-secrets

Qui configurerete i parametri per l'accesso alla VPN. Digitate il nome utente per l'accesso, poi premete il tasto Tab sulla tastiera (quello sopra Maiusc), digitate * e inserite la password, per poi digitare nuovamente *. 

Cliccate su Salva e chiudete la finestra. Adesso digitate i seguenti comandi, premendo ogni volta Invio per attivare la VPN:

sudo systemctl pptpd restart

sudo sysctl -p

Per disattivare la VPN digitate il comando seguente, per poi premere Invio:

sudo systemctl pptpd stop

Router con VPN

Alcuni router offrono la possibilità di attivare una VPN direttamente, senza bisogno di farlo da un computer. Iliadbox per esempio offre una voce Server VPN in cui potete impostare un server VPN con protocollo PPTP, OpenVPN o WireGuard.

Servizio cloud che funzioni da server VPN

Un'alternativa è, invece di usare il vostro computer o un router come server, utilizzare un provider cloud per configurare una VPN su un server remoto.

Per fare questo, dovete prima noleggiare un server virtuale da un provider come Amazon Web Services, DigitalOcean, Google Cloud o Scaleway.

Algo VPN

In conclusione, vogliamo indicarvi un metodo relativamente' più semplice per creare un server VPN utilizzando uno strumento open-source chiamato Algo VPN. Questo strumento vi consente di creare un server VPN su un provider cloud (volendo anche da computer, ma è un po' più complesso). 

Lo strumento utilizza il protocollo WireGuard, il più sicuro al momento, e supporta tutti i sistemi operativi. 

Per prima cosa, create un account su un provider di servizi cloud. Potete usare DigitalOceanAmazon Lightsail, Amazon EC2, Vultr, Microsoft Azure, Google Compute Engine, Scaleway, DreamCompute, Linode o altro cloud hosting basato su OpenStack, Exoscale o altro cloud hosting basato su CloudStack o Hetzner Cloud.

Adesso installate Algo sul vostro computer per fargli configurare una macchina virtuale nel cloud.

Potete scaricare il file da qui, per poi estrarre il contenuto e trovarvi una cartella chiamata algo-master con gli script di Algo.

Algo richiede Python 3.10 o successivo e almeno un pacchetto di supporto installati sul sistema. Per Windows, dovete usare il sottosistema Windows per Linux, per Linux con Ubuntu Python 3 dovrebbe essere già installato. Verificate che sia la versione 3.10 con pyenv, poi usate il seguente comando per installare i pacchetti di supporto:

sudo apt install -y --no-install-

Infine installate le dipendenze di Algo. Aprite il terminale, andate nella cartella algo-master e digitate il seguente comando:

python3 -m virtualenv --python="$(command -v python3)" .env && source .env/bin/activate && python3 -m pip install -U pip virtualenv && python3 -m pip install -r requirements

Adesso impostate le opzioni di configurazione. Aprite il file config.cfg con un editor di testo e specificate gli utenti che si desidera creare nell'elenco dedicato.

Create un utente univoco per ogni dispositivo che si deve connettere alla VPN.

Adesso tornate al terminale, andate nella cartella Algo ed eseguite il comando ./algo. Seguite le istruzioni e infine riceverete un messaggio al termine del processo di distribuzione del server.

Prendete nota della password p12 (certificato utente) e della chiave CA nel caso in cui ne abbiate bisogno in seguito, in quanto verranno visualizzate solo questa volta. Su GitHub trovate tutte le indicazioni dettagliate.

Adesso per connettervi dovete recuperare il file di configurazione e i certificati nella cartella configs di Algo. Installare l'app WireGuard sul vostro computer o telefono e selezionate il file di configurazione o utilizzate il lettore di codici QR per leggerlo. 

Come collegare un secondo computer alla VPN

Una volta creata la VPN sul dispositivo che funziona da server, potete collergarvi con l'altro computer. In caso di connessioni con protocollo PPTP, da Windows potete connettervi senza installare programmi di terze parti.

Tutto quello che dovete fare è cliccare sull'icona in basso a destra del Wi-Fi, poi cliccate sul simbolo > a destra della scheda del Wi-Fi. Cliccate sulla VPN e poi su Aggiungi connessione VPN. Adesso dal menu Provider VPN selezionate Windows, poi inserite il nome della connessione, per poi digitare l'hostname del server nel campo Nome o indirizzo server. 

In corrispondenza di Tipo di VPN selezionate PPTP, poi in Tipo di info di accesso cliccate su Nome utente e password. Inseriteli quando richiesto e cliccate su Salva. Adesso cliccate sull'icona VPN e poi su Connetti.

Se volete connettervi da Mac, sappiate che il Mac non supporta le connessioni PPTP, quindi dovrete installare un programma di terze parti come Shimo (è in prova gratuita di 30 giorni). 

Se avete usato OpenVPN, dovrete scaricare il client sul vostro dispositivo da qui, poi dovete usare il file di configurazione che avete creato.

Come creare una VPN su Android

openvpn android

È possibile creare un server VPN su Android, ma le soluzioni su dispositivo richiedono il root. Tempo fa c'era un'app che consentiva di farlo, Servers Ultimate, ma non è aggiornata da diversi anni.

In alternativa, potete installare Linux su Android. Ci sono alcune app che consentono di farlo come UserLAnd o Andronix, che non richiedono root. Da qui poi potete installare un tool come SoftEther VPN.

La soluzione più semplice è utilizzare un server cloud, come abbiamo descritto nel capitolo precedente (non sarà gratuito). Qui descriveremo un altro modo per farlo da PC Windows. Quello che bisogna fare è creare un Virtual Private Server (VPS) per iniziare con il proprio server VPN.

Il VPS è un contenitore che ospita il server VPN personalizzato. Si può scegliere tra molti fornitori VPS, come Linode o DigitalOcean. Andate sul sito Linode e create un account. Tenete presente che dovrete inserire le vostre informazioni di fatturazione prima di continuare.

Arrivati alla dashboard, cliccate su Create e selezionate Linode. Qui potete scegliere l'hardware specifico che avrà il vostro server e dove sarà ospitato.

Nella casella Choose a Distribution, selezionate la versione Ubuntu LTS più recente disponibile. Scegliete la regione in cui volete che si trovi la vostra VPN (se volete cambiare la posizione in un secondo momento, dovrete contattare il supporto Linode).

Seleziona Nanode 1GB dall'elenco delle opzioni di CPU condivisa per il piano, in quanto le VPN non richiedono molta potenza di elaborazione per funzionare (dovrebbe costare 5 dollari al mese).

Adesso nella scheda Root Password inserite una password sicura per impedire l'accesso a estranei. Cliccate su Create e il VPS si avvierà.

Adesso potete accedere al VPS, che però non ha un'interfaccia grafica. Cliccate su Launch LISH Console in alto a destra, che aprirà un terminale via web. Effettuate l'accesso e digitate il seguente comando, per poi premere Invio:

root

Adesso digitate la password e premete Invio (non vedrete la password, è normale).

Vedrete il messaggio Welcome to Ubuntu.

Ora dovete configurare la VPN. Potete usare il tool OpenVPN road warrior che installa tutto. Inserite nella finestra della console il seguente comando, per poi premere Invio:

wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh

Quando viene chiesto il numero di porta, digitate 443, inserite il vostro nome quando richiesto e lo script installerà tutto. 

Una volta che lo script è finito, esportate un file .ovpn nella cartella /root/. Questo file contiene le informazioni di connessione e di accesso della VPN, che dovrete recuperare manualmente dal server. 

Il modo più semplice per trasferire il file .ovpn sul dispositivo è avviare temporaneamente un server web. Digitate il seguente comando e date Invio:

python3 -m http.server 80

Dopo che il server è attivo e funzionante, incolla l'indirizzo IP del server nella posizione appropriata. Lo troverete nella pagina Linode Summary nella barra degli indirizzi del browser.

Assicuratevi che non inizi con https:// poiché il server non ha un certificato di sicurezza per impostazione predefinita.

Vedrete un semplice elenco di directory con alcuni file diversi tra cui scegliere. Cliccate sul file .ovpn per scaricarlo.

Se volete configurare una VPN sullo smartphone, ripetete lo stesso processo su quel dispositivo. In alternativa, potete trasferire il file .ovpn dal computer al telefono (meglio con Quick Share o via cavo per una maggiore sicurezza).

Dopo aver scaricato il file, spegnete il server premendo contemporaneamente i tasti CTRL e C sulla tastiera. Vedrete un messaggio di conferma, e potete anche riavviare il VPS dalla dashboard di Linode per fermare il server se questo non funziona.

Poiché la VPN è un server sempre attivo che riceve e trasmette dati personali, assicuratevi che le sessioni di navigazione rimangano sicure. Per questo abilitate gli aggiornamenti automatici dei pacchetti, inserendo il seguente comando nel terminale basato sul Web, poi premete Invio:

apt update && apt upgrade -y

Poi eseguite questo comando:

apt install -y unattended-upgrades

Se usate il server solo per la VPN, potete disattivare l'accesso remoto tramite SSH.

Questo impedisce a chiunque, inclusi voi stessi, di accedere al server da remoto. Potete accedere solo utilizzando la console tramite la dashboard Linode, che aiuta a fermare gli attacchi di accesso a forza bruta sul tuo server.

Per prima cosa, eseguite questo comando attraverso il terminale web:

systemctl disable ssh.service

Poi fermate il server:

systemctl stop ssh.service

Per tornare alle impostazioni predefinite, eseguite il seguente comando nel terminale basato sul web:

systemctl enable ssh.servicesystemctl start ssh.service

Ora che avete configurato la VPN e scaricato il file di connessione, potete connettervi usando OpenVPN. Installate e aprite l'app, poi toccate Agree. Ora toccate Upload file in alto a destra e caricate il file .ovpn di configurazione dalla memoria del telefono.

Selezionate OK per confermare e importate il file .ovpn nell'app OpenVPN.

Dalla schermata principale, toccate la nuova voce e sarete connessi al server VPN personalizzato.

Come creare una VPN su iPhone

Su iPhone non è possibile creare una VPN, quello che potete fare è connettervi a una come abbiamo visto nei capitoli precedenti, oppure usare un servizio di terze parti.

Su alcuni dei link inseriti in questa pagina SmartWorld ha un'affiliazione ed ottiene una percentuale dei ricavi, tale affiliazione non fa variare il prezzo del prodotto acquistato. Tutti i prodotti descritti potrebbero subire variazioni di prezzo e disponibilità nel corso del tempo, dunque vi consigliamo sempre di verificare questi parametri prima dell’acquisto.

Tutte le news sulla tecnologia su Google News
Ci trovi con tutti gli aggiornamenti dal mondo della tecnologia
Seguici