Logo Informatizzati

Scenario: il server "A" (client openvpn) di una lan stabilisce una connessione con un altro server "B" (server openvpn). Le rispettive lan delle due sedi devono poter comunicare fra di loro attraverso la vpn. Entrambe i server sono i default gateway della propria lan. Si presume che la connessione openvpn tra i due server ("A" e "B") sia già funzionante.

  • La rete lan del server "A" (client openvpn) usa l'indirizzo 192.168.5.0/24 e si connette al server "B" attraverso un certificato con un common name client2.
  • La rete lan del server "B" (server openvpn) usa l'indirizzo 192.168.1.0/24 e riceve la connessione dal server "A"

Requisiti base:

  • le due reti lan (e tutte le altre che eventualmente si vogliono aggiungere) devono avere indirizzamenti diversi.
  • i client vpn, in questo caso il server "A" devono avere un common name univoco nel certificato (ad esempio"client2"), e il parametro duplicate-cn non deve essere usato nella configurazione del server openvpn (in questo caso il server "B").
  • assicurati che sia abilitato il forwarding su entrambe i server.

Se non è presente, crea una cartella chiamata ccd e aggiungi nella configurazione del server openvpn (server "B") il parametro:

client-config-dir percorso_cartella_ccd

Puoi metterla direttamente in /etc/openvpn (linux) o \Program Files\OpenVPN\config (windows). Quando un client openvpn si collega al server, viene cercato in questa cartella il file corrispondente al common name, se lo trova, le direttive del file vengono applicate al client.

É necessario quindi creare un file in ccd con lo stesso nome del common name, in questo caso client2

touch /etc/openvpn/ccd/client2 (per linux)

e aggiungere questa riga:

iroute 192.168.5.0 255.255.255.0

e anche la riga della route che finirà sul client
push "route 192.168.1.0 255.255.255.0"

Per concedere alla rete del server "B" di comunicare con la rete del server "A" p necessario inserire anche la route di questa rete nel file di configurazione del server openvpn (server "B") (NON in ccd/client2):

route 192.168.5.0 255.255.255.0

Sembra una configurazione ridondante ma in realtà il parametro route controlla il routing tra il kernel e OpenVPN server (via the TUN interface) invece iroute controlla il routing dal server OpenVPN al client remoto (server "A").

Commenti offerti da CComment