Salta al contenuto principale

OpenVPN: Guida Completa – Cos’è, Come Funziona e Come Usarlo

Inviato da tuxsa il
VPN

Nel panorama della sicurezza informatica, poche soluzioni hanno resistito alla prova del tempo come OpenVPN. Nato come progetto open-source, è oggi lo standard de facto per l’implementazione di reti private virtuali (VPN). Che tu sia un amministratore di sistema, un developer o un semplice utente attento alla privacy, capire OpenVPN è fondamentale.

In questo articolo vedremo cos’è, cosa fa, come si usa e analizzeremo esempi concreti di installazione e configurazione.


1. Cos’è OpenVPN?

OpenVPN è un software open-source che crea un tunnel crittografato tra due o più dispositivi, permettendo di navigare o accedere a risorse di rete in modo sicuro, come se si fosse collegati direttamente alla rete locale.

Caratteristiche principali:

  • Protocollo SSL/TLS: Usa lo stesso livello di sicurezza dei siti HTTPS (certificati, chiavi pubbliche/private).
  • Cross-platform: Funziona su Windows, macOS, Linux, Android, iOS e router.
  • Altamente configurabile: Supporta diversi algoritmi di crittografia (AES-256-GCM, ChaCha20, ecc.) e modalità di autenticazione (certificati X.509, username/password, OTP).
  • Open-source: Il codice è pubblico e controllabile, nessuna backdoor nascosta.

2. Cosa Fa OpenVPN? (Funzionalità Principali)

Il cuore del suo lavoro è incapsulare e proteggere il traffico di rete.

FunzionalitàDescrizione
Crittografia end-to-endTutti i dati in transito sono cifrati (AES-256), inaccessibili a chi intercetta il traffico (ISP, hacker, governi).
Autenticazione forteSi può usare un certificato digitale per ogni client, oppure combinare certificato + password.
Controllo degli accessiÈ possibile limitare l’accesso a specifiche sottoreti (es. solo 192.168.1.0/24).
Bypass di firewall e NATUsa una singola porta UDP (solitamente 1194) facilmente aggirabile anche su reti restrittive (es. hotel, università).
Routing o bridgingPuò creare una VPN routed (più comune, come un tunnel IP) o bridged (i client appaiono sulla stessa LAN fisica).

3. Come si Usa OpenVPN?

L’uso si articola in due fasi: lato server (installazione e configurazione centrale) e lato client (connessione).

3.1 Installazione (esempio su Ubuntu Server)

 
sudo apt update
sudo apt install openvpn easy-rsa

3.2 Generazione dei certificati (PKI)

Con easy-rsa si crea un’Autorità di Certificazione (CA) e i certificati per server e client:

 
cd /etc/openvpn/easy-rsa
./easyrsa init-pki
./easyrsa build-ca                # genera CA
./easyrsa gen-req server          # genera richiesta per server
./easyrsa sign-req server server  # firmala
# Per ogni client:
./easyrsa gen-req client1
./easyrsa sign-req client client1

3.3 Configurazione del server

Ecco un esempio minimo funzionante:

 
port 1194
proto udp
dev tun

ca /etc/openvpn/pki/ca.crt
cert /etc/openvpn/pki/issued/server.crt
key /etc/openvpn/pki/private/server.key
dh /etc/openvpn/pki/dh.pem

server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"

keepalive 10 120
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3

3.4 Connessione dal client

Salva sul client questi file:

  • ca.crt
  • client1.crt
  • client1.key

Crea un file /etc/openvpn/client/client.ovcf (su Windows si chiamerà .ovpn):

 
client
dev tun
proto udp
remote YOUR-SERVER-IP 1194
resolv-retry infinite
nobind

ca ca.crt
cert client1.crt
key client1.key

remote-cert-tls server
cipher AES-256-CBC
verb 3

Poi connettiti:

 
sudo openvpn --config client.ovcf

Nota: Su GUI (es. Tunnelblick su Mac, OpenVPN GUI su Windows) basta importare il file .ovpn.


4. Esempi Pratici

Esempio 1 – Accesso a una LAN aziendale da remoto

  • Il server OpenVPN è installato sulla rete aziendale (IP pubblico: 198.51.100.10).
  • Un dipendente si connette dal suo portatile a casa.
  • Dopo la connessione, l’IP del cliente diventa 10.8.0.2. Può accedere a stampanti, server intranet (192.168.1.100) e database, tutto come se fosse in ufficio.

Esempio 2 – Proteggere la connessione su WiFi pubblico

  • Configuri un server OpenVPN su un VPS (costano ~3€/mese).
  • Installi il client sul cellulare o laptop.
  • Al bar, connesso al WiFi gratuito, attivi la VPN: tutto il traffico passa dal VPS cifrato. L’amministratore della rete vede solo traffico verso IP del VPS, non sa che siti visiti.

Esempio 3 – Collegamento multi-sede (Site-to-Site)

  • Due uffici, uno a Roma, uno a Milano.
  • Su ogni router (es. un Raspberry Pi su cui gira OpenVPN) configura una connessione site-to-site.
  • A Roma la subnet è 192.168.1.0/24, a Milano è 192.168.2.0/24.
  • Il server di Roma ha una direttiva route 192.168.2.0 255.255.255.0 10.8.0.6, e il client di Milano speculare.
  • Risultato: entrambi gli uffici vedono le risorse dell’altro come se fossero sulla stessa LAN.

5. Vantaggi e Svantaggi

ProContro
Open-source, gratuitoConfigurazione iniziale complessa (richiede conoscenze SSL)
Massima sicurezza e flessibilitàPrestazioni leggermente inferiori rispetto a WireGuard
Supporta autenticazione avanzata (OTP, smart card)Non è integrato nativamente nei sistemi (necessita plugin)
Documentazione vastissimaIl protocollo UDP può essere bloccato da alcuni firewall

6. OpenVPN vs. Alternative (WireGuard, IPsec, L2TP)

CaratteristicaOpenVPNWireGuardIPsec
SemplicitàMedia-ComplessaMolto sempliceComplessa
PrestazioniBuone (CPU-bound)EccellentiBuone (dipende dall'implementazione)
SicurezzaEccellente (SSL/TLS)Eccellente (ChaCha20)Buona (ma configurazione complessa)
Casi d'usoGenerale, enterprise, legacyMobile, embedded, utenti espertiEnterprise, standard governativi

Consiglio: Se vuoi semplicità e velocità → WireGuard. Se hai bisogno di configurazioni enterprise, autenticazione complessa o compatibilità con vecchi sistemi → OpenVPN.


7. Consigli per l'Uso Quotidiano

  • Usa file .ovpn – Molti provider VPN offrono già file pre-configurati per OpenVPN. Basta importarli nel client.
  • Attiva il kill switch – Su molti client (es. OpenVPN GUI avanzata) puoi impostare che il traffico venga bloccato se la cade.
  • Testa la perdita DNS – Dopo la connessione, visita ipleak.net o dnsleaktest.com per verificare che non ci siano fughe di informazioni.
  • Aggiorna regolarmente – OpenVPN ha un buon track record di sicurezza, ma è importante mantenere ient aggiornati.

OpenVPN rimane una soluzione solida, matura e incredibilmente flessibile per creare reivate virtuali. Anche se l'avvento di WireGuard ha reso la scelta meno scontata, OpenVPN continua a essere la scelta preferita in ambito aziendale, per scenari legacy o quando si ha bisogno di un controllo granulare sulla sicurezza.

In sintesi:

  • Cos'è: Un software open-source per VPN.
  • Cosa fa: Crea tunnel crittografati per proteggere la privacy e connettere reti remote.
  • Come si usa: Installi il server (es. su Ubuntu o VPS), generi certificati, configuri client e ti connetti tramite file .ovpn.
  • Esempi: Lavoro da remoto, protezione su WiFi pubblico, collegamento tra sedi.