+ All Categories
Home > Documents > IPsec VPN

IPsec VPN

Date post: 24-Jan-2016
Category:
Upload: art
View: 49 times
Download: 0 times
Share this document with a friend
Description:
IPsec VPN. Soluzioni di interoperabilit à fra diverse implementazioni. Cosa significa VPN. - PowerPoint PPT Presentation
21
Riccardo Veraldi - INFN s ez. Firenze IPsec VPN Soluzioni di interoperabilità fra diverse implementazioni
Transcript
Page 1: IPsec VPN

Riccardo Veraldi - INFN sez. Firenze

IPsec VPN

Soluzioni di interoperabilità fra diverse implementazioni

Page 2: IPsec VPN

2

Cosa significa VPN

• Virtual Private Network: non è una tecnologia di per sè stessa, ma è un concetto che può essere implementato nella pratica con l’utlizzo di tecnologie diverse fra loro. Alla base vi è la necessità di avere una rete virtuale di calcolatori che possono fare parte fisicamente di reti diverse (distanti fra loro e topologicamente eterogenee) ma appartenere alla stessa rete logica (VPN). L’utilizzo di meccanismi di autenticazione e crittografia rende questa rete privata. La VPN va oltre il concetto di LAN e WAN e le può utilizzare entrambe come mezzo di cui servirsi per raggiugere tutti i suoi nodi.

Page 3: IPsec VPN

3

Tipologie di VPN• MPPE/PPTP (Microsoft VPN) - Windows, UNIX/Linux, e

Mac clients.• CIPE - Linux clients e Windows (2000 & NT) clients• OpenVPN - UNIX/Linux clients• SSL-wrapped PPP - Linux clients• GRE and IP/IP - Linux clients, Cisco routers• IPSec, tunnel mode, transport mode - Windows (2000 &

NT) e UNIX/Linux clients• IPSec/PPTP - Windows (2000 & NT) e UNIX/Linux

clients• IPSec/L2TP - Windows (2000 & NT) e UNIX/Linux clients

Page 4: IPsec VPN

4

IPsec • Protocol suite che implementa la crittografia a livello di

network layer per fornire servizi di autenticazione (non repudiation) e confidenzialità (encryption) tra host che comunicano attraverso una untrusted network consentendo la creazione di VPN

• Elementi fondamentali di IPsec– SA: security association. Sta alla base di una VPN IPsec. È un set di

proprietà relative alla connessione tra 2 host, è una sorta di tabella che descrive le proprietà specifiche di una VPN IPsec

• SPI: numero che identifica il flusso di dati attraverso la VPN IPsec serve per discriminare tra le varie SA relative a una connessione IPsec

• AH: data integrity, origin authentication, protezione anti-reply• ESP: confidentiality, data origin authentication, data integrity, protezione

anti-reply

– IKE: protocollo per la gestione automatica delle chiavi necessarie per tutte le operazioni di security fornite da IPsec

Page 5: IPsec VPN

5

IPsec transport mode

Attraversando lo stack TCP/IP verso il basso a livello di network layer IPsec rimuove l’header IP originale, cripta i dati realtivi ai layer OSI più alti, aggiunge in testa il security header appropriato (ESP/AH) e riapplica l’header IP originale. Quindi il payload del pacchetto originario viene criptato e viene calcolato l’opportuno autentication protocol header e inserito tra header IP originario e paylod criptato. Questa è la tipica soluzione host-to-host VPN

Page 6: IPsec VPN

6

IPsec tunnel mode

L’intero pacchetto originario viene incapsulato e criptato e vengono aggiunti in testa un nuovo Header IP e l’authentication protocol header (ESP/AH). A livello di network layer IPsec cripta l’intero pacchetto IP originario comprendente l’header TCP e il relativo payload, viene creato l’header ESP/AH aggiunto in testa al pacchetto criptato, inoltre viene crato un nuovo Header IP che consente al client di inviare il pacchetto originario al gateway VPN appropriato. Soluzione network-to-network VPN

Page 7: IPsec VPN

7

AH e ESP (1)

Page 8: IPsec VPN

8

AH e ESP (2)

Page 9: IPsec VPN

9

AH e ESP (3)

Page 10: IPsec VPN

10

IPsec: implementazioni freeware

• FreeS/WAN (Linux)– http://www.freeswan.org

• KAME (FreeBSD, NetBSD)– http://www.kame.org

• ISAKMPD (OpenBSD)– http://www.openbsd.org/faq/faq13.html

Page 11: IPsec VPN

11

IPsec: prove di interoperabilità

1. creazione dei certificati

2. configurazione IPsec policies e IKE in FreeBSD

3. configurazione IPsec policies in WindowsXP

Page 12: IPsec VPN

12

Certificati X509

1. Crezione della CA• openssl genrsa -des3 -out ca.key 1024

2. Certificato della CA• openssl req -new -x509 -days 365 -key ca.key -out

ca.crt

3. Certificati host (xiexie – hal9000)• openssl genrsa -out xiexie.key 1024 • openssl req -new -key xiexie.key -out xiexie.csr • openssl x509 -req -days 182 -in xiexie.csr -CA

ca.crt -CAkey ca.key -CAcreateserial -out xiexie.crt

Page 13: IPsec VPN

13

Configurazione di FreeBSD (1)

#! /bin/sh## SPD: security policy database settings# packet will look like this: IPv4 ESP payload#setkey -c <<EOFspdadd 192.84.145.10 192.84.145.18 any -P out ipsec

esp/transport/192.84.145.10-192.84.145.18/require;spdadd 192.84.145.18 192.84.145.10 any -P in ipsec

esp/transport/192.84.145.18-192.84.145.10/require;EOF

Page 14: IPsec VPN

14

Configurazione di FreeBSD (2)# /usr/local/etc/racoon/racoon.conf

#

path certificate "/usr/local/etc/racoon/certs" ;

log debug2;

padding

{

maximum_length 20; # maximum padding length.

randomize off; # enable randomize length.

strict_check off; # enable strict check.

exclusive_tail off; # extract last one octet.

}

timer

{

# These value can be changed per remote node.

counter 5; # maximum trying count to send.

interval 20 sec; # maximum interval to resend.

persend 1; # the number of packets per a send.

# timer for waiting to complete each phase.

phase1 90 sec;

phase2 60 sec;

}

Page 15: IPsec VPN

15

Configurazione di FreeBSD (3)# /usr/local/etc/racoon/racoon.conf (continued)remote anonymous{ exchange_mode main,aggressive; #exchange_mode aggressive,main; doi ipsec_doi; situation identity_only;

#my_identifier address; my_identifier user_fqdn “[email protected]”; peers_identifier user_fqdn “[email protected]”; certificate_type x509 “hal9000.crt” “hal9000.key”; peers_certfile “xiexie.crt";

nonce_size 16; lifetime time 4 hour; # sec,min,hour initial_contact on; support_mip6 on; proposal_check obey; # obey, strict or claiproposal { encryption_algorithm 3des; hash_algorithm md5; authentication_method rsasig; dh_group 2 ; }}

Page 16: IPsec VPN

16

Configurazione di FreeBSD (4)

# /usr/local/etc/racoon/racoon.conf (continued)sainfo anonymous{ pfs_group 1; lifetime time 30 sec; encryption_algorithm 3des,des; authentication_algorithm hmac_sha1,hmac_md5; compression_algorithm deflate ;}# end of racoon.conf

Page 17: IPsec VPN

17

Configurazione di Windows XP (1)

• Importare I certificati della CA e dell’host Windows XP (xiexie) utilizzando mmc

Page 18: IPsec VPN

18

Configurazione di Windows XP (2)• Creazione delle policies IPSec

Page 19: IPsec VPN

19

Configurazione di Windows XP (3)

• IPsec startup

Page 20: IPsec VPN

20

Windows XP - FreeBSD VPN

Page 21: IPsec VPN

21

Problemi riscontrati

• Interfaccia mmc non sempre consistente

• Windows XP non crea la VPN se si cerca di inizializzare la connessione IPsec partendo prima da Windows XP, funziona come client ma non come server (almeno per quanto riguarda questa prova di interoperabilità)


Recommended