Argomento precedente: VPN - appliance di rete privata virtuale

Argomento successivo: Generica


Segreto condiviso di IPSec

Questa modalità supporta un unico server - diversi scenari di client e permette l'accesso al server VPN da più posizioni. È richiesto un archivio di dati (o un volume di dati o un'appliance NAS connessa al terminale di fs). Questa modalità funziona solamente in IPv4.

Sull'inizio, l'appliance server estrae la prima linea del file specificato in proprietà di auth_path e la usa come tasto condiviso. Questo file deve essere presente sulle due parti. Prima di configurare un client di VPN, è necessario copiare questo file segreto condiviso nel suo archivio dati nella sottodirectory /client/.

Sull'appliance di VPN server, il traffico ricevuto sull'interfaccia esterna è cifrato, filtrato mediante le proprietà tcp_ports, udp_ports, aux_protocols e inoltrato all'interfaccia di srv.

Sull'appliance di VPN di client, il traffico ricevuto sull'interfaccia di clt è cifrato e inoltrato al server VPN remoto, specificato nella proprietà di remote_host.

Proprietà che devono essere configurate sul lato server: ip_addr, maschera di rete, gateway (o proprietà IPv6 corrispondenti), modalità, tunnel, allowed_hosts, tcp_ports, udp_ports, aux_protocols.

Proprietà che devono essere configurate sul lato server: ip_addr, maschera di rete, gateway (o proprietà IPv6 corripondenti), modalità, tunnel, remote_host, auth_path.

accesso remoto a un servizio esterno

Il seguente diagramma illustra un esempio di come si configura l'accesso remoto a un servizio esterno:

Esempio: un'appliance Web eseguita sulla Griglia A, che accede a un database MySQL remoto eseguito sulla Griglia B in un tunnel VPN sicuro

in questo esempio, un'appliance Web, eseguita su una Griglia A, accede a un database MySQL remoto eseguito su una Griglia B mediante un tunnel VPN sicuro.

vpn1 sulla Griglia A è configurato per connettersi all'indirizzo IP assegnato a vpn2 sulla Griglia B. Il terminale srv di vpn1 e il terminale clt di vpn2 rimangono disconnessi. Le interfacce esterne di vpn1 e vpn2 sono configurate con indirizzi IP indirizzabili e adeguati.

Esempio di configurazione della proprietà:

vpn1:

Nome di proprietà

Valore

note

ip_addr

25.74.63.87

IP esterno utilizzato per vpn1

maschera di rete

255.255.255.0

maschera di rete

gateway

25.74.63.1

gateway

modalità

client

Modalità di client di operazione

tunnel

certificato di IPsec

Il traffico viene codificato usando IPSec

auth_path

client-7575

Nome della coppia certificato/file dei codici

remote_host

12.12.12.12

IP esterno assegnato all'interfaccia esterna di vpn2

vpn2:

Nome di proprietà

Valore

note

ip_addr

12.12.12.12

IP esterno utilizzato per vpn2

maschera di rete

255.255.255.0

maschera di rete

gateway

12.12.12.1

gateway

modalità

server

Modalità server di operazione

tunnel

certificato di IPsec

Il traffico viene codificato usando IPSec

allowed_hosts

25.74.63.87

permettere soltanto le connessioni da vpn1

tcp_ports

3306

Porta predefinita per il server MySQL

Accesso remoto alle appliance di CA AppLogic interne

Il seguente diagramma illustra un esempio di come configurare l'accesso remoto alle appliance di CA AppLogic interne:

Esempio: un utente deve accedere dal suo PC a diverse appliance attraverso una connessione VPN sicura usando il client OpenVPN

In questo esempio, un utente deve accedere dal suo PC a diverse appliance attraverso una connessione VPN sicura usando il client OpenVPN OpenVPN viene utilizzato per connettersi all'indirizzo IP assegnato a vpn. VPN stabilisce un tunnel VPN con il PC dell'utente e inoltra il traffico in entrata allo switch della porta sw, che viene configurata per distribuire il traffico a quattro diverse appliance nell'applicazione.

È necessario installare OpenVPN sul PC dell'utente prima di accedere a un'applicazione di CA AppLogic che usa l'appliance di VPN come descritta in questo esempio. Le seguenti fasi descrivono la configurazione di questa applicazione e come accedere all'applicazione su un tunnel VPN sicuro:

  1. l'utente deve installare OpenVPN sul PC. OpenVPN può essere ottenuto o da qui o da qui (ci sono stati rapporti di OpenVPN che non lavora su Vista di Windows). Dopo l'installazione, creare un file di configurazione distinto che definisce le proprietà del tunnel di OpenVPN che l'utente utilizzerà per accedere all'applicazione di CA AppLogic. Le seguenti fasi descrivono la procedura.
  2. Si raccomanda di utilizzare la modalità segreta condivisa di operazione dell'appliance VPN. Configurare vpn come segue:

vpn:

Nome di proprietà

Valore

note

ip_addr

28.36.85.21

Indirizzo IP assegnato all'appliance VPN

modalità

server

Modalità server di operazione

tunnel

segreto condiviso

Mediante file segreto condiviso

allowed_hosts

26.42.56.72

Indirizzo IP del client PC

tcp_ports

0

Tutte le porte sono autorizzate

udp_ports

0

Tutte le porte sono autorizzate

3. Assegnare i protocolli e le porte desiderati che devono essere inoltrate attraverso l'appliance di sw. In questo caso, 4 porte (122.422.522.822) sono inoltrate alle porte SSH delle appliance connesse a sw:

Nome di proprietà

Valore

note

out1_protocol

tcp

Protocollo TCP

out1_in_port

122

Porta in entrata 122

out1_out_port

22

Porta in uscita 22

out4_protocol

tcp

Protocollo TCP

out4_in_port

422

Porta in entrata 422

out4_out_port

22

Porta in uscita 22

out5_protocol

tcp

Protocollo TCP

out5_in_port

522

Porta in entrata 522

out5_out_port

22

Porta in uscita 22

out8_protocol

tcp

Protocollo TCP

out8_in_port

822

Porta in entrata 822

out8_out_port

22

Porta in uscita 22

4. Avviare l'applicazione. Una volta avviata l'applicazione, estrarre il file segreto condiviso dall'appliance di VPN:

grid> comp ssh APPLICATION:main.VPN
vpn> cat /mnt/data/server/secret.key
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
431e845f2ca67f2a31649b20e3ba3291
...
fe991cdbfe82525a9367b9afbfd0f922
-----END OpenVPN Static key V1-----

5. Incollare il contenuto di secret.key di cui sopra in un file nuovo sul PC dell'utente e salvare il file. Questo è un file segreto condiviso che viene utilizzato per l'autenticazione.

6. Preparare un file di configurazione di OpenVPN client. Copiare le seguenti righe in un nuovo file sul PC dell'utente (un file diverso dalla fase 5):

dev tun
proto udp
resolv-retry infinite
persist-key
persist-tun
cipher AES-128-CBC
comp-lzo
keepalive 10 120
remote 11.22.33.44 1194
secret "C:\\Program Files\\OpenVPN\\sample-config\\secret.key"
nobind
ifconfig 169.254.215.101 169.254.215.102

Gli indirizzi IP nella linea di ifconfig possono essere di qualsiasi tipo, a condizione che siano: a) dal blocco di rete 169.254.0.0/16) b) nello stesso subnet di /30 c) non sono il primo o l'ultimo indirizzo nel subnet di /30. B e C sono i limiti del client di OpenVPN che viene eseguito sulla piattaforma Windows.

7. Sostituire l'indirizzo IP remoto dall'indirizzo IP che è assegnato all'appliance di VPN. Sostituire il percorso al file segreto condiviso nella linea segreta con il percorso del file di codici creato nella fase 5. Se si usa il sistema operativo Microsoft Windows sul PC in cui è stato installato OpenVPN, chiudere tutte le linee nelle citazioni e sostituire ogni slash con un doppio slash.

8. Avviare il client di OpenVPN:

c:\program files\OpenVPN\bin\openvpn.exe --config "c:\client.ovpn"

Nota: sostituire "c:\client.ovpn" con il percorso al file di configurazione creato nella fase 6.

9. Dopo pochi secondi, viene visualizzato il seguente messaggio da OpenVPN:

Wed Jul 01 09:41:12 2009 Peer Connection Initiated with XX.XX.XX.XX:1194
Wed Jul 01 09:41:12 2009 Initialization Sequence Completed

Ora è possibile accedere alle appliance dell'applicazione di CA AppLogic usando l'indirizzo IP definito nei file di configurazione (169.254.215.102 in questo caso). La porta 169.254.215.102:122 è inoltrata da sw alla porta 22 dell'appliance di srv1, mentre la porta 169.254.215.102:422 è inoltrata all'appliance di srv4, ecc. Per esempio, eseguire

ssh -p 122 root@169.254.215.102

per accedere alla prima appliance.

Fornire un tunnel VPN sicuro per la replica MySQL

Il seguente diagramma illustra un esempio di come è possibile fornire tunnel VPN sicuri per la replica di MySQL:

Esempio: due applicazioni in esecuzione su griglie differenti, Griglia A e Griglia B, in cui entrambe usano lo stesso database MySQL che è replicato attraverso un tunnel VPN sicuro.

In questo esempio due applicazioni eseguite su griglie differenti, Griglia A e Griglia B, in cui entrambe usano lo stesso database MySQL che è replicato attraverso un tunnel VPN sicuro.

vpn1 e vpn2 sono configurati con indirizzo IP instradabile sulle loro interfacce esterne. vpn1 è configurato per stabilire un tunnel a vpn2, e viceversa.

db1 da Griglia A invia traffico a vpn1 per la replica, dove è codificato ed è trasmesso a vpn2 che decifra il traffico e lo invia al terminale rin di db2 sulla Griglia B. Analogamente, la replica da db2 sulla Griglia B a db1 sulla Griglia A si comporta allo stesso modo.

vpn1:

Nome di proprietà

Valore

note

ip_addr

82.56.42.25

Indirizzo assegnato all'interfaccia esterna.

modalità

entrambi

Modalità server di operazione

tunnel

codice ssh

Utilizzo dei file di codice SSH.

auth_path

"/keys/vpn21.ssh.key"

Percorso al file di codice SSH.

remote_host

92.72.57.95

Indirizzo assegnato all'interfaccia esterna di vpn2.

tcp_ports

3306,22

Porta predefinita per il server MySQL e SSH.

ssh_ports

3306,22

Porta predefinita per il server MySQL e SSH.

vpn2:

Nome di proprietà

Valore

note

ip_addr

92.72.57.95

Indirizzo assegnato all'interfaccia esterna.

modalità

entrambi

Modalità server di operazione

tunnel

codice ssh

Utilizzo dei file di codice SSH.

auth_path

"/keys/vpn21.ssh.key"

Percorso al file di codice SSH.

remote_host

82.56.42.25

Indirizzo assegnato all'interfaccia esterna di vpn1.

tcp_ports

3306,22

Porta predefinita per il server MySQL e SSH.

ssh_ports

3306,22

Porta predefinita per il server MySQL e SSH.

vpn1:

Nome di proprietà

Valore

note

ip_addr

82.56.42.25

Indirizzo assegnato all'interfaccia esterna.

modalità

entrambi

Agisce come server e client, permettendo la replica a doppio senso.

tunnel

segreto condiviso di IPsec

Codifica del traffico con IPSec.

auth_path

"/keys/ipsec.key"

Percorso al file segreto condiviso di IPsec.

remote_host

92.72.57.95

Indirizzo assegnato all'interfaccia esterna di vpn2.

tcp_ports

3306,22

Porta predefinita per il server MySQL e SSH.

vpn2:

Nome di proprietà

Valore

note

ip_addr

92.72.57.95

Indirizzo assegnato all'interfaccia esterna.

modalità

entrambi

Agisce come server e client, permettendo la replica a doppio senso.

tunnel

segreto condiviso di IPsec

Codifica del traffico con IPSec.

auth_path

"/keys/server/ipsec.key"

Percorso al file segreto condiviso di IPsec

remote_host

82.56.42.25

Indirizzo assegnato all'interfaccia esterna di vpn1.

tcp_ports

3306,22

Porta predefinita per il server MySQL e SSH.

note

OpenVPN deve essere usato sul computer del client per poter accedere a un tunnel VPN sicuro esposto dall'appliance VPN.

Questa appliance usa software Open Source di terze parti

VPN usa i seguenti pacchetti Open Source di terze parti oltre ai pacchetti Open Source di terze parti usati dalla loro classe di base LUX5.

Software

Versione

Modificato

License

note

IPsec-Tools

0.6.5-13.el5_3.1

No

BSD

pagina iniziale

iptables

1.3.5-5.3.el5_4.1

No

GPLv2

N/A

iptables-ipv6

1.3.5-5.3.el5_4.1

No

GPLv2

N/A

LZO

2.03

No

GPLv2

pagina iniziale

OpenVPN

2.1.4

No

GPLv2

pagina iniziale

samba-client

3.0.33-3.15.el5_4

No

GPLv2

N/A

samba-common

3.0.33-3.15.el5_4

No

GPLv2

N/A

iproute2

2.6.29-1

No

GPLv2

pagina iniziale

autossh

1.4b

No

BSD

pagina iniziale