Avendo la necessità di estendere una LAN layer 2 in tutte le sedi aziendali, abbiamo trovato una soluzione utilizzando l’appliance pfSense e il suo modulo OpenVPN.

La differenza con una VPN standard è il fatto di poter avere il traffico broadcast e la stessa network in entrambe le sedi, questa configurazione è utile in particolari situazioni in quando le performance sono inferiori al classico collegamento tramite routing (con VPN).
Seguendo le operazioni descritte di seguito, si crea un tunnel VPN tra 2 pfSense simulando siano raggiungibili tramite Internet (sull’interfaccia wan):


1) Lato server – configurazione OpenVPN Server

Stretched LAN tra diverse sedi con pfSense e OpenVPN : configurazione OVPN Server

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Partendo dalla macchina adibita a Server, selezionare dal menù in alto:
1) VPN > OpenVPN > Scheda ‘Server’
2) Cliccare su  Aggiungi server
3) Impostare i parametri come segue:

– Server Mode: Peer to Peer (Shared Key)
– Protocol: UDP
– Device Mode: tap
– Interface: WAN
– Local port: quello proposto da pfSense
– Description: descrizione utilizzo di questa VPN
– Lasciare selezionato ‘Automatically generate a shared key‘ (da copiare poi per configurarla lato Client)
– Hardware Crypto: selezionare dalla tendina ‘BSD cryptodev engine’
– IPv4 Tunnel Network: inserire rete per il tunneling (es. 10.10.10.0/24)
– Compression: selezionare dalla tendina ‘Enabled with Adaptive Compression’
** RICORDARSI DI CLICCARE SEMPRE ‘APPLY CHANGES’ PER RENDERE EFFETTIVE LE MODIFICHE **

2) Lato client – configurazione OpenVPN Client

Stretched LAN tra diverse sedi con pfSense e OpenVPN : configurazione OVPN Client

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Proseguiamo ora sulla macchina Client, selezionare dal menù in alto:
1) VPN > OpenVPN > Scheda ‘Client’
2) Cliccare su  Aggiungi client
3) Impostare i parametri come segue:
– Server Mode: Peer to Peer (Shared Key)
– Protocol: UDP
– Device Mode: tap
– Interface: WAN
– Server host or address
– Server port
– Description
– Togliere la spunta da ‘Automatically generate a shared key‘ e incollare Shared Key copiata dal Server precedentemente
– Hardware Crypto: selezionare dalla tendina ‘BSD cryptodev engine’
– IPv4 Tunnel Network: inserire rete per il tunneling (es. 10.10.10.0/24)
– Compression: selezionare dalla tendina ‘Enabled with Adaptive Compression’
** RICORDARSI DI CLICCARE SEMPRE ‘APPLY CHANGES’ PER RENDERE EFFETTIVE LE MODIFICHE **

 

3) Interfaccia OVPN lato Server e Client

Stretched LAN tra diverse sedi con pfSense e OpenVPN : interfacce OVPN

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Questa configurazione deve essere replicata sia lato Server che lato Client:
1) Andare da menù su Interfaces > (assign)
2) Creare nuova interfaccia selezionando dalla tendina ovpnsX(description) description= utilizzata nella configurazione OpenVPN [punto 1 o 2]
3) Clicca sul nome interfaccia
4) Spunta ‘Enable interface’, modifica nome e Salva
** RICORDARSI DI CLICCARE SEMPRE ‘APPLY CHANGES’ PER RENDERE EFFETTIVE LE MODIFICHE **

 

4) Bridge interfacce LAN-OVPN lato Server e Client

Stretched LAN tra diverse sedi con pfSense e OpenVPN : Bridges tra interfacce

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Questa configurazione deve essere replicata sia lato Server che lato Client:
1) Andare da menù su Interfaces > (assign) > scheda ‘Bridges’
2) Aggiungi nuovo e seleziona l’interfaccia LAN e l’interfaccia creata al punto 3
** RICORDARSI DI CLICCARE SEMPRE ‘APPLY CHANGES’ PER RENDERE EFFETTIVE LE MODIFICHE **

5) Regole firewall
Applicare regole coerenti per permettere il traffico sull’interfaccia OpenVPN, sull’interfaccia del punto 3 e sulla LAN.

Per applicare l’estensione della LAN ad un terzo pfSense, occorre decidere quale pfsense farà da centro stella e creare un secondo server OpenVPN, seguire il tutorial e infine inserire la nuova interfaccia nel bridge PREESISTENTE.

Stretched LAN tra diverse sedi con pfSense e OpenVPN