Virtual Private Networks
Virtual Private Networks
Petr Gryg
Petr Gryg
á
á
rek
rek
Agenda:
VPN Taxonomy
2 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Basic Terminology and Mechanisms
Basic Terminology and Mechanisms
of Network Security
of Network Security
and Cryptography
and Cryptography
Data Protection
Data Protection
•
C
C
onfidentality
onfidentality
•
unauthorized listener cannot understand data meaningunauthorized listener cannot understand data meaning•
implemented by encryptionimplemented by encryption•
A
A
uthentication
uthentication
•
verification of data sender identityverification of data sender identity•
Data
Data
integrity
integrity
•
verification that data were not modified during transportverification that data were not modified during transport•
N
N
on-repudiation
on-repudiation
•
data source cannot repudiate that it sent particular data source cannot repudiate that it sent particular piece of datapiece of data
4 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Cryptographic Hash Function (1)
Cryptographic Hash Function (1)
•
one-way
one-way
fun
fun
ction (algorithm) that converts (arbitrary,
ction (algorithm) that converts (arbitrary,
long) block of data to (short) fixed-size hash value
long) block of data to (short) fixed-size hash value
•
easy to computeeasy to compute•
infeasible to find a message with a given hashinfeasible to find a message with a given hash•
infeasible to modify a message without changing its hashinfeasible to modify a message without changing its hashCryptographic Hash Function (2)
Cryptographic Hash Function (2)
•
often used as Hashed Message Authentication Code
often used as Hashed Message Authentication Code
(HMAC)
(HMAC)
•
the hash is computed from [data+secret] blockthe hash is computed from [data+secret] block•
algorithms commonly used as hash function
algorithms commonly used as hash function
•
HMAC-MD5 –– Message Digest 5 HMAC-MD5 –– Message Digest 5•
(128b message digest)(128b message digest)•
HMAC-SHA1 – Secure Hash Algorithm HMAC-SHA1 – Secure Hash Algorithm6 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Cryptographic System
Cryptographic System
Implementation options
•
Conceal encryption/decryption algorithm
•
If the algorithm is revealed, implementation is useless•
Conceal keys
•
Keys used to parametrize (known) algorithm•
Enough number of possible keys has to be availableEncryption Decryption
Key plain
text cypertext plaintext
Symmetric Cryptosystem
Symmetric Cryptosystem
8 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Properties of Symmetric
Properties of Symmetric
Cryptosystem
Cryptosystem
•
Shared secret key
Shared secret key
•
Effective algorithm implementations
Effective algorithm implementations
•
speed, relative simplicity
speed, relative simplicity
•
possible to implement in hardware
possible to implement in hardware
•
DES, 3DES, AES, …
DES, 3DES, AES, …
Authentication in Symmetric Cryptosystem
Authentication in Symmetric Cryptosystem
•
Sender encrypts u
Sender encrypts u
sername
sername
using shared key, receiver decrypts
using shared key, receiver decrypts
using the same key and tests username validity
using the same key and tests username validity
•
Requires database of valid usernamesRequires database of valid usernames•
Alternative validity check implementation:
Alternative validity check implementation:
•
Sender appends username hash behind username, then encrypts Sender appends username hash behind username, then encrypts whole block with shared keywhole block with shared key
•
Receiver decrypts [username+hash] with shared key, computes Receiver decrypts [username+hash] with shared key, computes username hash and compares with received hashusername hash and compares with received hash
•
Does not require to maintain username databaseDoes not require to maintain username database Combines authentication with data integrity check10 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Data Integrity Check
Data Integrity Check
Implementation
Implementation
•
[
[
message
message
+
+
shared secret key
shared secret key
]->hash
]->hash
•
message
message
+hash
+hash
is sent
is sent
•
receiver appends shared secret key behind
receiver appends shared secret key behind
received message, calculates hash by itself and
received message, calculates hash by itself and
compares with received hash
compares with received hash
Combines origin authentication and data integrity
Combines origin authentication and data integrity
check
Asymmetric Cryptosystem
Asymmetric Cryptosystem
12 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Public and Private Keys
Public and Private Keys
•
Keys generated as pair – Keys generated as pair – publicpublic and and privateprivate key key•
One key of pair used for encryption, second one for decryptionOne key of pair used for encryption, second one for decryption•
no matter which one for whatno matter which one for what•
uses identical or complementary algorithms for encryption and decryptionuses identical or complementary algorithms for encryption and decryptionEncryption Decryption public key KB_PUBLIC ALICE BOB private key KB_PRIVATE KB_PUBLIC KB_PRIVATE KA_PUBLIC KA_PRIVATE Certification authority KA_PUBLIC KB_PUBLIC
Features of Asymmetric Cryptosystem
Features of Asymmetric Cryptosystem
•
More calculations comparing to symmetric algorithm
More calculations comparing to symmetric algorithm
=> slower
=> slower
•
RSA, El-Gammal
RSA, El-Gammal
•
Problem of secure public key distribution
Problem of secure public key distribution
•
no need to conceal them
no need to conceal them
, but we need a mechanism to
, but we need a mechanism to
protect public keys against modification during transport
protect public keys against modification during transport
•
certification authority digitally signs public keys packed
certification authority digitally signs public keys packed
together with owner information
together with owner information
•
(so called “certificates”)(so called “certificates”)14 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Usages of
Usages of
asy
asy
m
m
metric sys
metric sys
tem
tem
•
Digital signatures
Digital signatures
•
No problem with secret key distribution
No problem with secret key distribution
•
Exchange of keys for symmetric system
Exchange of keys for symmetric system
•
Often generated dynamically keys with limited
Often generated dynamically keys with limited
lifetime
Certifi
Certifi
cation authority (1)
cation authority (1)
•
Trusted entity
Trusted entity
•
Digitally signs public keys packed together with owner
Digitally signs public keys packed together with owner
information -
information -
certificates
certificates
•
First contact with CA must be personal
First contact with CA must be personal
•
obtaining of private+public key pairobtaining of private+public key pair•
private key + signed certificateprivate key + signed certificate•
There exist ways how to deliver encrypted private key + certificate There exist ways how to deliver encrypted private key + certificate (containing signed public key) without physical contact(containing signed public key) without physical contact
•
need to authenticate certificate requestneed to authenticate certificate request•
uses password prenegotiated between user and CA to encrypt private key and uses password prenegotiated between user and CA to encrypt private key and certificate before sending it to usercertificate before sending it to user
•
usage of LDAP password etc.usage of LDAP password etc.•
private+public key generation may take place at client OSprivate+public key generation may take place at client OS16 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Certifi
Certifi
cation authority (2)
cation authority (2)
•
Public key of CA needed by communicating parties
Public key of CA needed by communicating parties
to verify certificates of other communicating peers
to verify certificates of other communicating peers
•
Public key of CA has to be inserted into every system
Public key of CA has to be inserted into every system
by some trustworthy manner
by some trustworthy manner
•
built-in into OS/WWW browser installation files,
built-in into OS/WWW browser installation files,
…
…
Advantage: only one public key (CA certificate) has to
Advantage: only one public key (CA certificate) has to
be preconfigured manually
Aut
Aut
h
h
enti
enti
cation
cation
and Data Integrity
and Data Integrity
Check in
Check in
A
A
sym
sym
m
m
etric
etric
S
S
yst
yst
e
e
m
m
Data KB_PUBLIC ALICE BOB KA_PRIVATE KB_PUBLIC KB_PRIVATE KA_PUBLIC KA_PRIVATE comparison Hash Data KB_PRIVATE KA_PUBLIC Hash Hash
© 2005 Petr Grygarek, Advanced Computer Networks Technologies 18
Virtual Private Networks
Virtual Private Networks
(VPN)
What is VPN ?
What is VPN ?
•
VPN
VPN
allow to build private WANs using public
allow to build private WANs using public
shared infrastructure with the same level of
shared infrastructure with the same level of
security and configuration options as with private
security and configuration options as with private
infrastructure
infrastructure
•
Cheaper and flexible method for interconnection
Cheaper and flexible method for interconnection
of geographically dispersed sites
20 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Advantages of VPNs over Physical
Advantages of VPNs over Physical
Private WAN Infrastructure
Private WAN Infrastructure
•
Lower cost
Lower cost
•
Short time of deployment
Short time of deployment
•
Flexibility of (virtual) topology
Flexibility of (virtual) topology
•
topology defined purely by configuration
topology defined purely by configuration
•
No WAN link maintenance and management needed
No WAN link maintenance and management needed
Some VPN Classification Criteria (1)
Some VPN Classification Criteria (1)
•
Level of customer trust to the shared infrastructure
Level of customer trust to the shared infrastructure
provider
provider
•
trusted/secured (+ level of security)
trusted/secured (+ level of security)
•
Protocol/technology applied in the public
Protocol/technology applied in the public
infrastructure provider's network
infrastructure provider's network
•
Packet-based (IPv4/IPv6)
Packet-based (IPv4/IPv6)
•
Virtual-circuit based (Frame Relay, ATM, VLANs)
Virtual-circuit based (Frame Relay, ATM, VLANs)
•
IP/MPLS VPN
IP/MPLS VPN
22 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Some VPN Classification Criteria (2)
Some VPN Classification Criteria (2)
•
Amount of routing information exchanged between
Amount of routing information exchanged between
provider and customer sites
provider and customer sites
•
Overlay (CPE-based) modelOverlay (CPE-based) model•
Peer-to-peer (network-based) modelPeer-to-peer (network-based) model•
Mixed model (MPLS VPN)Mixed model (MPLS VPN)•
Virtual topology options
Virtual topology options
•
Point-to-point (virtual private lines)
Point-to-point (virtual private lines)
•
+ topologies built from virtual P2P links+ topologies built from virtual P2P linksSome VPN Classification Criteria (3)
Some VPN Classification Criteria (3)
•
OSI layer of provided connectivity
OSI layer of provided connectivity
•
L2 L2•
L2-technology dependent L2-technology dependent•
May support interworking May support interworking•
L3 protocol transparentL3 protocol transparent•
L3L3•
Independent on L2 protocolsIndependent on L2 protocols•
L3-protocol dependentL3-protocol dependent•
unicast/multicast/both traffic support
unicast/multicast/both traffic support
•
24 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Some VPN Classification Criteria (4)
Some VPN Classification Criteria (4)
•
Manual/Automatic configuration
Manual/Automatic configuration
•
automatic configuration requires signaling &
automatic configuration requires signaling &
authentication
authentication
•
automatic configuration is almost inevitable for
automatic configuration is almost inevitable for
interconnection of hundreds of thousands of
interconnection of hundreds of thousands of
customer sites
Overlay model
Overlay model
•
Uses tunneling methodsUses tunneling methods•
Encryption and authentication applied in most casesEncryption and authentication applied in most cases•
Does not utilize underlying infrastructure efficiently in most casesDoes not utilize underlying infrastructure efficiently in most cases•
Customers have no visibility of provider's network and vice versaCustomers have no visibility of provider's network and vice versa•
No special contract with infrastructure provider is neededNo special contract with infrastructure provider is needed26 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Tunnel
Tunnel
•
Virtual point-to-point connection over shared
Virtual point-to-point connection over shared
infrastructure
infrastructure
•
often authenticated and encrypted
often authenticated and encrypted
•
Carries packets of some protocol encapsulated in
Carries packets of some protocol encapsulated in
another protocol
another protocol
•
sometimes in the same protocol (
sometimes in the same protocol (
IP over IP
IP over IP
)
)
•
tunnel can carry layer 2 frames also
tunnel can carry layer 2 frames also
•
allows other protocols to be carried over IP network
allows other protocols to be carried over IP network
VPN Protocols and Tunneling
VPN Protocols and Tunneling
Techniques
Techniques
•
IP/IP (v4xv6),
IP/IP (v4xv6),
•
GRE
GRE
•
L2TP (PPP frames),
L2TP (PPP frames),
•
MPLS,
MPLS,
•
IPSec
IPSec
•
SSL
SSL
•
...
...
28 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Peer-to-Peer model
Peer-to-Peer model
•
Provider network devices have to carry all
Provider network devices have to carry all
customers' routes
customers' routes
•
Problems with overlapping (private) addresses
Problems with overlapping (private) addresses
•
non-unique destination addressesnon-unique destination addresses•
Complicated filtering has to be configured
Complicated filtering has to be configured
•
poor scalability, risk of misconfigurationpoor scalability, risk of misconfiguration•
Optimal routing across provider's shared
Optimal routing across provider's shared
infrastructure
Most Common VPN Implementation
Most Common VPN Implementation
Options
Options
Internetwork-wide VPNs => tunnels at or above layer 3
Internetwork-wide VPNs => tunnels at or above layer 3
•
Layer 3 VPN – IPSec
Layer 3 VPN – IPSec
•
media independent (above hop-by-hop L2 security)media independent (above hop-by-hop L2 security)•
application independentapplication independent•
connectionless securityconnectionless security•
Layer 4 VPN
Layer 4 VPN
•
SSL/TLS for TCPSSL/TLS for TCP•
DTLS for UDPDTLS for UDP30 © 2009 Petr Grygárek, FEI VŠB-TU Ostrava, Computer Networks (Bc.)
Most Common VPN Implementation
Most Common VPN Implementation
Scenarios
Scenarios
•
Router-to-router (
Router-to-router (
firewall
firewall
)
)
•
Site-to-site VPNs
Site-to-site VPNs
•
Single router may terminate multiple tunnels
Single router may terminate multiple tunnels
•
Remote User to VPN concentrator
Remote User to VPN concentrator
•
Remote access VPNs
Remote access VPNs
•
user has to have special encryption software installed
user has to have special encryption software installed
(
Common VPN Applications (1)
Common VPN Applications (1)
•
Site-to-site VPNs
Site-to-site VPNs
•
RRouterouter to to router router ((firewall to firewallfirewall to firewall))•
secure interconnection of (multiple) distant LANssecure interconnection of (multiple) distant LANs•
counterpart with classical WAN networkscounterpart with classical WAN networksUnsecure public infrastructure
(Internet)
Encryption, Decryption
Site-to-site tunnel
Encryption, Decryption
32 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Common VPN Applications (2/1)
Common VPN Applications (2/1)
•
Remote access VPNs
Remote access VPNs
•
Client-initiated
Client-initiated
•
Remote user to Remote user to VPN VPN cconcentroncentraatortor•
user has special encryption software installed (user has special encryption software installed (VPN VPN cclientlient))•
NAS-initiated
NAS-initiated
•
Remote user dials in to service provider’s NAS using some Remote user dials in to service provider’s NAS using some connection-oriented telecommunication network (e.g. PSTN,connection-oriented telecommunication network (e.g. PSTN,
ISDN) considered trustworthy
ISDN) considered trustworthy
Common VPN applications (2/2)
Common VPN applications (2/2)
Secure intranet Unsecure public infrastructure (Internet) VPN concentrator PSTN modem User without any special software ISP NAS Encryption Encryption Decryption tunnels NAS-initiated VPN tunnel34 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Virtual Private Dial-up Networks
Virtual Private Dial-up Networks
•
Provides connection of remote users into private
Provides connection of remote users into private
networks
networks
•
Saves customers from maintaining their own physical
Saves customers from maintaining their own physical
RAS solution and interconnection to Telco
RAS solution and interconnection to Telco
•
Interoperation between provider's and customers'
Interoperation between provider's and customers'
AAA infrastructures
AAA infrastructures
•
L2TP – carries PPP sessions
L2TP – carries PPP sessions
•
LAC – L2TP Access Concentrator
LAC – L2TP Access Concentrator
IPSec
IPSec
36 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
IPSec
IPSec
(RFC 2401)
(RFC 2401)
IPSec
IPSec = suite of protocols and algorithms used for data security = suite of protocols and algorithms used for data security implementation at network layer
implementation at network layer
•
Open standards Open standards frameworkframework•
GeneralGeneral, , independent to actual algorithms usedindependent to actual algorithms used•
flexible and stable – no need for complete change when particular algorithm is flexible and stable – no need for complete change when particular algorithm is compromisedcompromised
•
ProvidesProvides aut authhentienticationcation, , data data integritintegrity and confidentalityy and confidentality•
using particular preconfigured or negotiated algorithms, not by itselfusing particular preconfigured or negotiated algorithms, not by itself•
Only for unicast Only for unicast IPIP traffic traffic•
but other protocols including IP broadcasts/multicasts can be encapsulated into but other protocols including IP broadcasts/multicasts can be encapsulated into IP before transportation over IPSec mechanismIP before transportation over IPSec mechanism
•
Implemented as additional mechanism for IPv4, natively built-in into Implemented as additional mechanism for IPv4, natively built-in into IPv6Basic IPSec terminology
Basic IPSec terminology
•
Security Association
Security Association
•
Set of policies and keys for data protection
Set of policies and keys for data protection
•
Shared by (two) communicating partners
Shared by (two) communicating partners
•
Authentication Header
Authentication Header
•
Header appended to IP packet to carry authentication
Header appended to IP packet to carry authentication
system information (HMAC etc.)
system information (HMAC etc.)
•
Encapsulating Security Payload Header
Encapsulating Security Payload Header
•
Header appended to IP packet to carry security system
Header appended to IP packet to carry security system
information (authentication, confidenitality)
38 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Security Association
Security Association
(1)
(1)
•
Defines encryption and authentication parameters used
Defines encryption and authentication parameters used
between two partners communicating over IPSec
between two partners communicating over IPSec
tunnel
tunnel
•
encryption and authentication algorithm,encryption and authentication algorithm, key size, key lifetimekey size, key lifetime•
encryption and authentication key (symmetric)encryption and authentication key (symmetric)•
IPSec mode (tunnel/transport)IPSec mode (tunnel/transport)•
encapsulation protocol (AH/ESP)encapsulation protocol (AH/ESP)•
specification of traffic to be encrypted (/decrypted)specification of traffic to be encrypted (/decrypted)•
Pre-configured or dynamically negotiated between
Pre-configured or dynamically negotiated between
partners during IPSec tunnel establishment
Security Association
Security Association
(2)
(2)
•
Independent for both traffic directions
Independent for both traffic directions
•
Independent SAs for individual security protocols
Independent SAs for individual security protocols
•
i.e. AH, ESP, IKE i.e. AH, ESP, IKE•
Internet Key Exchange (IKE) provides secure tunnel for Internet Key Exchange (IKE) provides secure tunnel for dynamic SA negotiationdynamic SA negotiation
•
Limited lifetime
Limited lifetime
•
time/bytes transferredtime/bytes transferred•
new SA is negotiated before lifetime expirationnew SA is negotiated before lifetime expiration•
Stored in Security Association Database (SADB)
Stored in Security Association Database (SADB)
40 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
IPSec modes: Tunnel and Transport
IPSec modes: Tunnel and Transport
Transport Mode
Tunnel mode
Transport Mode
Transport Mode
•
End-to-end security
End-to-end security
•
Needs Needs IPSec IPSec support in end-user stations’ operating systemsupport in end-user stations’ operating system•
AH and ESP inserted between
AH and ESP inserted between
L3 a
L3 a
nd
nd
L4
L4
headers
headers
•
Impossible to filter traffic according to Impossible to filter traffic according to L4 L4 header in the header in the network (L4 header is encrypted)network (L4 header is encrypted)
•
Next-header field of AH/ESP header identifies L4 header Next-header field of AH/ESP header identifies L4 header (L4 protocol)(L4 protocol)
•
Original
Original
IP
IP
header
header
unencrypted
unencrypted
•
But protected by But protected by autauthhentientication/data integrity cation/data integrity =>42 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Tunnel Mode
Tunnel Mode
•
IPSec tunnel between routers connecting secure LANs to
IPSec tunnel between routers connecting secure LANs to
unsecure shared infrastructure (IPSec gateways)
unsecure shared infrastructure (IPSec gateways)
•
no need for IPSec support in users’ station operating systemsno need for IPSec support in users’ station operating systems•
IP packets encapsulated by another IP packets (tunnel)
IP packets encapsulated by another IP packets (tunnel)
•
AH and ESP inserted at the beginning of encapsulating
AH and ESP inserted at the beginning of encapsulating
packet data field, original unchanged (tunneled) packet follows
packet data field, original unchanged (tunneled) packet follows
•
Packets encrypted including their IP headers
Packets encrypted including their IP headers
=
=
> potential spy in insecure network cannot even determine
> potential spy in insecure network cannot even determine
which stations of secure networks speak together
which stations of secure networks speak together
Used most commonly today.
Transfer of
Transfer of
IPSec C
IPSec C
ontrol
ontrol
Information
Information
•
Authenti
Authenti
c
c
ation Header
ation Header
•
Information for authentication and data integrity
Information for authentication and data integrity
•
Encapsulating Security Payload
Encapsulating Security Payload
•
Information for encryption, authentication and data
Information for encryption, authentication and data
integrity
integrity
•
and optionally anti-replayand optionally anti-replay•
May completely supersede authentication header
May completely supersede authentication header
•
AH defined earlier, still maintained for compatibility with AH defined earlier, still maintained for compatibility with older implementations44 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Authentication header
Authentication header
•
Assures authentication and (connectionless) data
Assures authentication and (connectionless) data
integrity
integrity
•
Protects
Protects
IP h
IP h
eader
eader
(
(
unchanging fields
unchanging fields
)
)
and
and
IP
IP
packet
packet
dat
dat
a
a
•
carries authentication information (HMAC)carries authentication information (HMAC)•
carries Security Parameters Index (SPI) to identify particular carries Security Parameters Index (SPI) to identify particular security associationsecurity association used for current packetused for current packet
•
if multiple SAs used concurrentlyif multiple SAs used concurrently•
Optional support for
Optional support for
anti-replay
anti-replay
•
Sender inserts sequence numbers into packets, receiver may Sender inserts sequence numbers into packets, receiver may optionally verify themoptionally verify them
•
Protects transport IP header
Protects transport IP header
=
AH – transport mode
AH – transport mode
46 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
AH – tunnel mode
AH – tunnel mode
Encapsulating Security Payload-ESP
Encapsulating Security Payload-ESP
•
Carries control information for data encryption
Carries control information for data encryption
(and authentication)
(and authentication)
•
encapsulates protected data
encapsulates protected data
•
Optional data authentication and integrity check
Optional data authentication and integrity check
(only user data)
(only user data)
•
Optional
Optional
anti-replay
anti-replay
check
check
•
May provide all functions of authentication
May provide all functions of authentication
header
48 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
ESP – transport mode
ESP – transport mode
ESP – tunnel mode
ESP – tunnel mode
50 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Dynamic SA negotiation
Dynamic SA negotiation
•
Manual configuration of SAs at multiple stations is
Manual configuration of SAs at multiple stations is
tedious and error-prone task
tedious and error-prone task
•
Need for reoccurring reconfiguration - periodic change
Need for reoccurring reconfiguration - periodic change
of authentication/encryption keys is necessary
Dynamic SA Negotiation
Dynamic SA Negotiation
Frameworks
Frameworks
•
Internet Security Association and Key Management Protocol Internet Security Association and Key Management Protocol (ISAKMP)(ISAKMP)
•
framework for secure (dynamic) key exchange and negotiation of security framework for secure (dynamic) key exchange and negotiation of security associationsassociations
•
does not define any particular algorithms, provides only mechanics of does not define any particular algorithms, provides only mechanics of parameter negotiation and key exchange protocolsparameter negotiation and key exchange protocols
•
payload formats etc.payload formats etc.•
Internet Key Interchange (IKE)Internet Key Interchange (IKE)•
operates within ISAKMP frameworkoperates within ISAKMP framework•
key exchange protocol (Oakley Key Exchange + Skeme Key Exchange)key exchange protocol (Oakley Key Exchange + Skeme Key Exchange)•
used to negotiate IPSec SAsused to negotiate IPSec SAs•
SA negotiation protected by tunnel encrypted with dynamically negotiated SA negotiation protected by tunnel encrypted with dynamically negotiated keys (52 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Diffie-Hellman algorithm
Diffie-Hellman algorithm
•
Used to negotiate shared secret key between two parties
Used to negotiate shared secret key between two parties
over unsecure channel
over unsecure channel
•
Key value never sent over unsecure channelKey value never sent over unsecure channel•
Based on public/private key pair generation on both sides, public Based on public/private key pair generation on both sides, public key interchange and calculations with big prime numberskey interchange and calculations with big prime numbers
•
communicating parties have to be authenticated by some
communicating parties have to be authenticated by some
external mechanism
external mechanism
•
prevents man-in-the-middle attackprevents man-in-the-middle attackPractical IPSec Operation
Practical IPSec Operation
1.
1.
Interesting traffic detectedInteresting traffic detected•
i.e. traffic whose encryption is requiredi.e. traffic whose encryption is required2.
2.
IKE Phase 1IKE Phase 1•
IPSec peer authentication (pre-shared keys, RSA signatures (X.509))IPSec peer authentication (pre-shared keys, RSA signatures (X.509))•
Negotiation of IKE SAs (Diffie-Hellman)Negotiation of IKE SAs (Diffie-Hellman)•
Encryption algorithm, hash algorithm, keys, key lifetime, …Encryption algorithm, hash algorithm, keys, key lifetime, …•
Establishes secure channel for IPSec SA negotiationEstablishes secure channel for IPSec SA negotiation3.
3.
IKE Phase 2IKE Phase 2•
Negotiation of IPSec SAs (for both directions)Negotiation of IPSec SAs (for both directions)•
According to policies supported by peersAccording to policies supported by peers•
Multiple priorized policies may be definedMultiple priorized policies may be defined4.
4.
Secure data exchange using IPSecSecure data exchange using IPSec•
SAs renegotiated by IKE if lifetime expiresSAs renegotiated by IKE if lifetime expires5.
54 © 2005 Petr Grygarek, Advanced Computer Networks Technologies
Which Traffic should be Encrypted ?
Which Traffic should be Encrypted ?
Crypto Access Lists
Crypto Access Lists
•
Outbound
Outbound
-
-
indicate which data have to be protected by
indicate which data have to be protected by
IPSec
IPSec
•
Inbound
Inbound
-
-
filter out and discard traffic that should have
filter out and discard traffic that should have
been protected by IPSec (but is not)
Required ACL Modification for
Required ACL Modification for
Operation of IPSec
Operation of IPSec
•
ISAKMP – UDP port 500
ISAKMP – UDP port 500
•
ESP – IP protocol 50
ESP – IP protocol 50
56 © 2005 Petr Grygarek, Advanced Computer Networks Technologies