Guida per configurare una VPN con OpenVPN con 2 pc (pc A server, pc B client1) con sistema operativo WindowsXPpro SP2, in modalita Bridged dietro un router generico. i due computer appartengono alla stessa sottorete.Se la vostra azienda ha la necessità di collegare due computer (o più computer) fisicamente lontani per scambio di file o utilizzo di un database condiviso è necessario creare una connessione criptata utilizzando la rete internet. Le prestazioni di scambio sono vincolate alla banda disponibile. Per il tunnel criptato utilizziamo OpenVPN Gui, in versione interfaccia grafica minimale, un software Open Source per creare VPN in sicurezza, con protocolli SSL/TLS (Secure Socket Layer/Transport Layer Security). Il software crea Certificati Digitali, Smart Card.
La configurazione di OpenVPN su server e client si effettua da riga di comando, attivabile con il comando cmd da start/esegui.
OpenVPN supporta due modalità di collegamento differenti tra client e server: Bridged e Routed. Nella guida verrà usata la modalità Bridged.
L’esempio considera due pc in due sedi diverse con le seguenti configurazioni:
l’azienda ivanbrb ha
un Computer A (che a ora chiameremo server) nella sede di Via dei Tassi, 28 Fociompoli e
un Computer B (che da ora chiameremo client1) a 17 km nella filiale di Via delle Orchidee, 31
Filiale e sede sono connesse a internet con connessione Flat e router generico (forwardare la porta UDP 1194)
con ip fisso Wan 88 77 66 55 e lan 192.168.1.1
Parametri di rete Lan del server ip 192.168.1.11- nm 255.255.255.0 – gw 192.168.1.1
Parametri di rete Lan del client1 ip 192.168.1.12- nm 255.255.255.0 – gw 192.168.1.1
Le operazioni da fare sono:
- modificare a 1 la chiave di registro
- Installazione OpenVPN GUI su server
- Installazione della CA (Certification Authority) e generazione di chiave pubblica e privata Master
- Generazione di Certificati e Chiavi Private per Server e Client e firma con Chiave Master
- Generazione di chiave criptata Diffie-Hellmann
- Generazione di una chiave statica a 2048 bit
- Configurazione
- Creazione del Bridging tra la nostra scheda di rete e la connessione creata da OpenVPN.
- Installazione OpenVPN GUI su server
- Installazione Copia su client la coppia di chiavi pubblica/privata e certificato Master della CA.
- Verifiche
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ParametersIPEnableRouter
Istruzioni passo passo:
1-Scarica e installa il software OpenVPN-gui nel computer A server.
Avvia il setup e alla schermata Choose Component spunta la casella My Certificate Wizard. prosegui e termina l’installazione.
La procedura installa l’applicazione nella directory dei programmi (supponiamo C:\Programmi\OpenVPN) e crea una nuova connessione di rete (supponiamo Connessione alla rete locale (LAN) 2).
2-Da pannello di controllo/connessioni remote rinomina la connessione di rete Lan2 in OpenVPN
3-Apri un terminale dos (Pulsante Start/Esegui digita cmd) e digita cd C:\Programmi\OpenVPN\easy-rsa
4- digita il comando init-config e premi invio nella tastiera (la pressione del tasto invio è l’input che il computer attende per eseguire il comando… ed è l’unica procedura che conosco…per mancanza di tempo non ho mai provato -digitare il comando e attendere mesi perchè il mio computer capisca quello che voglio fargli fare- 😉 )
5- digita edit vars.bat e premi invio nella tastiera(vabbè lo dico nuovamente ma da ora in poi è sottinteso) si apre il file vars.bat con l’editor dos
6- personalizza i seguenti parametri (quello che segue è un esempio)
Set KEY_COUNTRY=IT
set KEY_PROVINCE=Italy
set KEY_CITY=Fociompoli
set KEY_ORG=Ivanbrb
set KEY_EMAIL=ivanbrb@ivanbrb.local
7- chiudi l’editor e salva
8- digita vars
9- digita clean-all
Installazione della CA (Certification Authority) e generazione di chiave pubblica e privata Master
10- digita build-ca e si avvierà una procedura guidata che ti propone i parametri configurati nel file vars.bat
alla riga Common Name digita OpenVPN-CA
Generazione di Certificati e Chiavi Private per Server e Client e firma con Chiave Master Procedura per server
11- digita build-key-server server
alla riga Common Name digita server
alla riga Sign the certificate? [y/n] digita y per firmare il certificato del server con il certificato Master CA.
alla riga 1 out………… commit digita y
Procedura per client1
12- digita build-key client1
alla riga Common Name digita client1
alla riga Sign the certificate? [y/n] digita y per firmare il certificato del server con il certificato Master CA.
alla riga 1 out………… commit digita y
Generazione dei parametri Diffie-Hellmann
13- digita build-dh (fedele a quanto scritto ci metterà un pò di tempo)
14- chiudi il terminale dos
15- apri Risorse del Computer e vai a C:\Programmi\OpenVPN\easy-rsa. Apri la cartella keys che contiene tutti i certificati e le chiavi private create precedentemente con il terminale.
dal menù strumenti apri la finestra Opzioni cartella, passa alla scheda Visulizzazione e nelle impostazioni avanzate togli la spunta da Nascondi le estensioni per i tipi di file conosciuti.
Applica chiudi e metti a icona la finestra.
Creazione Chiave Statica a 2048 bit
16- clicca su start / programmi / openvpn / generate a static OpenVPN key si riapre un terminale che chiede di fare qualcosa,
per non rimanere inebetiti alcuni anni davanti alla schermata premiamo invio nella tastiera e generiamo la key
Copia di Certificato Master, Server e chiave privata server
17- Dalla cartella keys copia;
ca.crt
dh1024.pem
server.crt
server.key
nella cartella C:\Programmi\OpenVPN\config che già contiene un file README.TXT e la Chiave Statica key.txt
Configurazione
18- copia dalla cartella C:\Programmi\OpenVPN\sample-config il file server.ovpn alla cartella C:\Programmi\OpenVPN\config
19- tasto destro sul file appena copiato e apri con editor preferito (puoi usare il blocco note)
Attenzione!!! Le righe precedute da # sono commenti o spiegazioni dei parametri che seguono
i parametri attivi sono in una riga senza ;
i paramentri possibili ma non attivi sono con ;
nell’esempio di seguito ci sono
14 righe commentate,
la riga 15 con punto e virgola(paramentro proposto ma non attivo)
la riga 16 senza ; (parametro attivo)
Esempio:
# “dev tun” will create a routed IP tunnel,
# “dev tap” will create an ethernet tunnel.
# Use “dev tap0” if you are ethernet bridging
# and have precreated a tap0 virtual interface
# and bridged it with your ethernet interface.
# If you want to control access policies
# over the VPN, you must create firewall
# rules for the the TUN/TAP interface.
# On non-Windows systems, you can give
# an explicit unit number, such as tun0.
# On Windows, use “dev-node” for this.
# On most systems, the VPN will not function
# unless you partially or fully disable
# the firewall for the TUN/TAP interface.
dev tap
;dev tun
nel nostro caso per modificare la scelta togli il ; dalla riga15 e lo inserisci nella riga 16.
la porzione di esempio modificata diventerà quindi:
# “dev tun” will create a routed IP tunnel,
# “dev tap” will create an ethernet tunnel.
# Use “dev tap0” if you are ethernet bridging
# and have precreated a tap0 virtual interface
# and bridged it with your ethernet interface.
# If you want to control access policies
# over the VPN, you must create firewall
# rules for the the TUN/TAP interface.
# On non-Windows systems, you can give
# an explicit unit number, such as tun0.
# On Windows, use “dev-node” for this.
# On most systems, the VPN will not function
# unless you partially or fully disable
# the firewall for the TUN/TAP interface.
;dev tap
dev tun
modifica quindi il file con i seguenti parametri
dev tun
dev-node “OpenVPN”
;server 10.8.0.0 255.255.255.0
server-bridge 192.168.1.11 255.255.255.0 192.168.1.50 192.168.1.100
client-to-client
tls-auth key.txt 0 # This file is secret
max-clients 10
Salva il file
20- Crea una cartella sul desktop di nome Client1.
copia dalla cartella C:\Programmi\OpenVPN\easy-rsa\keys i file
ca.crt
client1.crt
client1.key
e dalla cartella C:\Programmi\OpenVPN\config il file
key.txt
copia inoltre il file di setup di OpenVPN scaricato al punto 1.
Inserisci una chiavetta usb o altro e copia la cartella Client1
Creazione del Bridging tra la nostra scheda di rete e la connessione creata da OpenVPN
21- Apri la cartella Connessioni remote. Seleziona la tua “Connessione alla rete locale (lan)” e la connessione “OpenVPN”. Tasto destro e seleziona connessioni con bridging
rinomina la connessione appena creata in “OpenVPN Bridge” e imposta i parametri TCP/IP come la tua scheda di rete
22- dai un Connect in basso a dx di fianco all’orologio tasto destro sull’icona OpenVPN
se è tutto corretto ti apparirà un avviso che il server è connesso.
23- prendi la bicicletta e fatti i 17 km fino a via delle orchidee
Se hai dimenticato/a le chiavi prova a vedere se la gina è in casa e fatti dare quelle di scorta,
se hai dimenticato/a la chiavetta usb torna a via dei Tassi io non lo saprò mai e tu non dirlo a nessuno.
Accendi il client…
25- Installa openvpn senza spuntare la casella
My Certificate Wizard.
26-da pannello di controllo/connessioni remote rinomina la connessione di rete Lan2 in OpenVPN
27- copia i file dalla cartella client1 nella chiavetta (escluso il file di setup di OpenVPN) avrai quindi oltre al già presente README.txt questi file:
ca.crt
client1.crt
client1.key
key.txt
28- copia dalla cartella C:\Programmi\OpenVPN\sample-config il file client.ovpn alla cartella C:\Programmi\OpenVPN\config
29- rinominalo in client1.ovpn
30- tasto destro sul file appena rinominato e apri con editor preferito (puoi usare il blocco note) inserisci questi parametri modificando le righe esistenti
dev tun
dev-node “OpenVPN”
remote 88 77 66 55:1194
ca ca.crt
cert client1.crt
key clent1.key
ns-cert-type server
tls-auth key.txt 1
salva il file
31- crea il bridging tra le due schede e configura
32- connect openvpn
ti appare un messaggio che sei connesso/a e che ti è stato assegnato l’IP 192.168.1.50
33- da risorse di rete cerca il pc server e naviga nelle cartelle condivise.
Attenzione: potrebbe essere necessaria una modifica della configurazione del router
Buongiorno Ivano, mi chiamo Danilo e da un pò mi stò appassionando al mondo delle reti lan, e le sue potenzialità.
Ho letto con molto interesse questo post.
Per il mio progetto di vpn, vorrei utilizzare due NAS, un server ed un client, che supportano OpenVPN più o meno nativamente. Ho a disposizione un Synology ed un WD Mybook, quest’ultimo con OpenVPN tramite repository.
Lo scopo sarebbe quello che i due nas siano non solo utilizzati per la loro funzionalità di storage di rete, ma anche per tenere in piedi la vpn, evitando di tenere accesi ulteriori dispositivi.
Chiedo se per cortesia mi potresti indicare il sistema, in linea di max, affinchè i dispositivi (pc, stampanti, etc) si “vedano” e si “parlino” tra le due reti, ovvero come se fossero tutti fisicamente connessi in unica rete locale.
Specificando che il post qui sopra sarà sicuramente oggetto di studio per le prossime notti, ringrazio anticipatamente per l’attenzione.
Danilo (UD)
Ciao, mi da errore quando voglio connettere il client. mi espliciti l’intero file client1.ovpn?
grazie
per aiutarti mi
dovresti dire quale errore comunque ecco il file richiesto
scusa ma non mi è chiaro un passaggio, nell’introduzione parli di ip 192.168.1.11 e .12 per i pc delle due sedi. Nella modifica del file server.ovpn riporti questi indirizzi server-bridge 192.168.1.11 255.255.255.0 192.168.1.50 192.168.1.100 e qui non capisco cosa fare.
grazie