VPN

Internet Protocol Security (IPSec) is described in this section.

IPSec (Internet Protocol Security) is a suite of protocols that provides security to Internet communications at the IP layer. The most common current use of IPSec is to provide a Virtual Private Network (VPN), either between two locations (gateway-to-gateway) or between a remote user and an enterprise network (host-to-gateway); it can also provide end-to-end, or host-to-host, security.

IPSec VPN is designated for simple Point-to-Point Protocol (PPP) networking where encryption is required. Two modes are supported:

To access VPN screens, go to Layer 3 Management > Security > VPN.

VPN Global Configuration

Figure 1. VPN Global Configuration


Screen Objective This screen allows the user to configure the VPN Global Configuration.
Navigation

Layer 3 Management > Security > VPN > Global Configuration

Fields
  • VPN Status—the options are (with a default option Disabled):
    • Enabled—select to activate VPN.
    • Disabled—select to discontinue the VPN.
Buttons
  • Apply—modifies attributes and saves the changes.

How IPSec Works

IPSec involves many component technologies and encryption methods. Yet IPSec's operation can be broken down into five main steps:

  1. "Interesting traffic" or IPSec Policy Configuration initiates the IPSec process. Traffic is deemed interesting when the IPSec security policy configured in the IPSec peers starts the IKE process.
  2. IKE phase 1— IKE authenticates IPSec peers and negotiates IKE SAs during this phase, setting up a secure channel for negotiating IPSec SAs in phase 2.
  3. IKE phase 2— IKE negotiates IPSec SA parameters and sets up matching IPSec SAs in the peers.
  4. Data transfer—Data is transferred between IPSec peers based on the IPSec parameters and keys stored in the SA database.
  5. IPSec tunnel termination—IPSec SAs terminate through deletion or by timing out.

IKE phase 1 occurs in two modes: main mode and aggressive mode.

IPSec Policy Configuration

When a distributed operational network uses public transport links for the inter-site connectivity, the traffic must be encrypted to ensure its confidentiality and its integrity. Such Virtual VPN connection is executed over an IPSec encrypted link. An IPSec policy determines the ‘interesting traffic’ i.e. the type or subset of the customer traffic to be encrypted.

Internet Security Association and Key Management Protocol (ISAKMP) defines procedures and packet formats to establish, negotiate, modify and delete Security Associations (SA). A SA is a relationship between two or more entities that describes how the entities will utilize security services to communicate securely. In endpoint-to-endpoint Transport Mode, both end points of the IP connection implement IPSec.

IKE Phase 1 Configuration

Internet Key Exchange (IKE) protocol is a component of IPSec used for performing mutual authentication and establishing and maintaining Security Associations (SAs) (RFC 7296)

Once an IKE negotiation is successfully completed, the peers have established two pairs of one-way (inbound and outbound) SAs. Since IKE always negotiates pairs of SAs, the term "SA" is generally used to refer to a pair of SAs (e.g., an "IKE SA" or an "IPSec SA" is in reality a pair of one-way SAs). The first SA, the IKE SA, is used to protect IKE traffic. The second SA provides IPSec protection to data traffic between the peers and/or other devices for which the peers are authorized to negotiate. It is called the IPSec SA in IKEv1 and, in the IKEv2 RFCs, it is referred to variously as a CHILD_SA, a child SA, and an IPSec SA.

In addition, since IKEv1 consists of two sequential negotiations, called phases,
  • the IKE SA is also referred to as a Phase 1 SA, and
  • the IPSec SA is referred to as a Phase 2 SA.

IKE Phase 1

The basic purpose of IKE phase 1 is to authenticate the IPSec peers and to set up a secure channel between the peers to enable IKE exchanges. IKE phase 1 performs the following functions:

IKE Phase 1 occurs in two modes: main mode and aggressive mode.

Encryption Algorithms

To authenticates and protect the identities of the IPSec peer, the encryption algorithms are as follows:

Diffie and Hellman Key Exchange

Diffie and Hellman (DH) describe a method for two parties to agree upon a shared secret number, called ZZ, in such a way that the secret will be unavailable to eavesdroppers. This method requires that both the sender and recipient of a message have key pairs (private and public). By combining one's private key and the other party's public key, both parties can compute the same shared secret number ZZ.

Generation of ZZ

For example, let’s identify the communicating parties as party A and party B. Prior to their communication, the parties agree between them on a large prime number p, and a generator (or base) g (where 0 < g < p).

Party A chooses a secret integer xa (her private key) and then calculates ya = g ^ xa mod p (which is her public key). Party B chooses a private key xb, and calculates his public key in the same way as yb = g ^ xb mod p.

Both parties then send each other their public keys. Both parties know their public keys but not their private keys because calculating them is a hard mathematical problem (known as the discrete logarithm problem). However, they can calculate:

ZZ = g ^ (xb * xa) mod p = (yb ^ xa) mod p = (ya ^ xb) mod p, where ZZ is their shared secret as defined by X9.42. For more details, refer to RFC 2631 [8].

Any eavesdropper who was listening in on the communication knows p, g, and both parties public keys ya and yb. But the eavesdropper will be unable to calculate the shared secret from these values.

This secret number can then be converted into cryptographic keying material (KM). The KM is typically used as a key-encryption key to encrypt (wrap) a content-encryption key which is in turn used to encrypt the message data (the VPN GRE traffic).This key is kept secret and never exchanged over the insecure channel.

The DH groups are identified by the length of the keys in bits. The larger the key (higher group id) the higher is the security but as well the resources required are higher and the user should consider performance degradation.

Exchange Modes

The Exchange Modes in which IKE Phase 1 occurs are 2 types: Main and Aggressive.

Main Mode is a more secure option for Phase1 as it involves the identity protection such as three two-way exchanges between the initiator and the receiver. The session flow is as follows:
  • Session begins with the initiator sending a proposal to the responder describing what encryption and authentication protocols are supported, the life time of the keys, and if Phase 2 perfect forward secrecy should be implemented. The proposal may contain several offerings. The responder chooses from the offerings and replies to the initiator.
  • The next exchange passes Diffie-Hellman public keys and other data. All further negotiation is encrypted within the IKE SA.
  • The third exchange authenticates the ISAKMP session. Once the IKE SA is established, IPSec negotiation (Quick Mode) begins.

In Aggressive mode, the negotiation is quicker as the session is completed in only 3 messages. The disadvantage is in that the identity of the peers is not protected.

The first two messages negotiate policy, exchange Diffie-Hellman public values and ancillary data necessary for the exchange, and identities. In addition, the second message authenticates the responder. The third message authenticates the initiator and provides a proof of participation in the exchange.
  • The initiator send a request with all required SA information.
  • The responder replies with authentication and its ID.
  • The initiator authenticates the session in the follow-up message.

The weakness of using the aggressive mode is that both sides have exchanged information before there's a secure channel.

IKE Phase 2

The purpose of IKE Phase 2 is to negotiate IPSec SAs. IKE phase 2 performs the following functions:
  • Negotiates IPSec SA parameters protected by an existing IKE SA
  • Establishes IPSec security associations
  • Periodically renegotiates IPSec SAs to ensure security
  • Optionally performs an additional Diffie-Hellman exchange

A negotiated shared IPSec Phase 2 policy includes:

  • IPSec Security protocols—when IKE is not used to establish SAs, a single transform set must be used. Before a transform set can be included in a crypto map entry, it must be defined. A transform set specifies one or two IPSec security protocols (either Encapsulation Security Protocol (ESP) or Authentication Header (AH). To select a transform set, consider the following:
    • For data confidentiality, include an ESP.
    • For data authentication for the outer IP header as well as the data, include an AH.
    • For data authentication (either using ESP or AH), choose from the MD5 or SHA (HMAC keyed hash variants) authentication algorithms. The SHA algorithm is generally considered stronger than MD5, but is slower.
  • Encryption—AES Counter mode (AES-CTR) are used are also used. AES-CTR use ESP confidentiality mechanism and require the encryptor to generate a unique per-packet value and to communicate this value to the decryptor. AES-CTR must be used in conjunction with an authentication function, such as HMAC-SHA.
  • Authentication
  • IPSec Mode—options are tunnel ad transport modes
  • Perfect Forward Secrecy— Perfect forward secrecy (PFS) means that an encryption system automatically and frequently changes the keys it uses to encrypt and decrypt information, such that if the latest key is compromised, it exposes only a small portion of the user’s sensitive data.
If perfect forward secrecy (PFS) is specified in the IPSec policy, a new Diffie-Hellman exchange is performed with each quick mode, providing keying material that has greater entropy (key material life) and thereby greater resistance to cryptographic attacks. Each Diffie-Hellman exchange requires large exponentiations, thereby increasing CPU use and exacting a performance cost.

A replay attack is a form of network attack in which a valid data transmission is maliciously or fraudulently repeated or delayed. It is an attempt to subvert security by someone who records legitimate communications and repeats them in order to impersonate a valid user, and to disrupt or cause negative impact for legitimate connections.

IPSec provides anti-replay protection against an attacker who duplicates encrypted packets with the assignment of a monotonically increasing sequence number to each encrypted packet. The receiving IPSec endpoint keeps track of which packets it has already processed on the basis of these numbers with the use of a sliding window of all acceptable sequence numbers.

ACK Packets

This section lists off some details of how ACK packets work with theimplementation of IPSec.

  • Every 60 seconds the switch sends an ACK packet
  • If an ACK is not received, the DPD packet (R_U_THERE) will be retransmitted every 15 seconds for 5 transmissions (75 seconds in total).
  • At the end, the endpoint can identify that the other is down in a time between 75 seconds up to 135 seconds.
  • When interesting traffic is seen by the switch on either side, the tunnel will try to go up automatically and then will start sending the interesting traffic.

VPN Policy Configuration

Figure 2. VPN Policy Configuration


Screen Objective This screen allows the user to configure the VPN Policy Configuration.
Navigation

Layer 3 Management > Security > VPN > Policy Configuration

Fields
  • Policy Action—add a check mark to create a new VPN IPSec policy.
  • Policy Name—enter a name for the new VPN IPSec policy.
    Note:

    This field is grayed out and cannot be configured if the Policy Action is not checked.

  • Existing Policies—select from the drop-down list and choose a policy from the list.
    Note:

    This field is grayed out and cannot be configured if the Policy Action is checked.

  • Policy Status—select status for the selected VPN IPSec policy. The default option is Inactive.
    • Active—select to activate the selected policy (i.e. the IPSec processing has started)
    • Inactive—select to disactivate the selected policy (i.e. the IPSec processing has stopped).
  • Local ID Type—select address type of network address which represents the local protected network. IPv4 shown.
  • Local ID—specify the identity of the local endpoint configuration to be used by the router when participating in the Internet Key Exchange (IKE) protocol. It configures local identity type and its value to be used in IKE Phase 1. It can be a format for email, fqdn, dn, or key id. The options are:
    • dn <string>—specify domain name for local identity value. As shown in VPN Policy Configuration dialog box, to dn is assigned a value of 1.
    • email <string>— specify email address for local identity value.
    • fqdn <string>—fully Qualified Domain Name for local identity value.
    • keyId <string>—key Identifier related information for local identity value.
  • Local Endpoint IP Address—enter IPv4 address related information for local identity value.
  • Peer ID Type—Select address type of network address which represents the remote endpoint configuration. IPv4 shown.
  • Peer ID—specify the identity of the remote endpoint configuration to be used by the router when participating in the IKE protocol. It can be a format for email, fqdn, dn, or key id. The options are:
    • dn <string>—specify domain name for local identity value. As shown in VPN Policy Configuration dialog box, to dn is assigned a value of 1.
    • email <string>— specify email address for local identity value.
    • fqdn <string>—fully qualified domain name for local identity value.
    • keyId <string>—key Identifier related information for local identity value.
Fields (cont)
  • Peer Endpoint IP Address—enter IPv4 address related information for the remote endpoint.
  • Traffic Selector
    • Local Subnets—enter information for the remote endpoint. The format is A.B.C.D/E or <ip/subnet>.
    • Remote Subnets—enter information for the remote endpoint. The format is A.B.C.D/E or <ip/subnet>.
  • IKE (Phase 1) Proposal
    • IKE Version—select IKE version.
      • IKEv1 —select IKEv1 if you don’t need NAT traversal (not supported)
      • IKEv2—select it for remote access thanks to its EAP authentication, more secure connection due to its use of encryption keys for both sides, improved resistance to DoS attacks, and less bandwidth use.
    • IPSec Encryption—selects encryption algorithm:
      • 3DES—sets the ESP algorithm type as 3DES
      • AES-128—sets the AES to 28 bits key-length for encrypting / decrypting a block of message
      • AES-192—sets the AES to 192 bits key-length for encrypting / decrypting a block of message
      • AES-256—sets the AES to 256 bits key-length for encrypting / decrypting a block of message.
    • IPSec Authentication—select authentication hash algorithm.
      • HMAC-MD5—selects MD5 algorithm. The message-digest (md5) algorithm is a widely used hash function producing a 128-bit hash value. Although MD5 was initially designed to be used as a cryptographic hash function, it has been found to suffer from extensive vulnerabilities. It can still be used as a checksum to verify data integrity, but only against unintentional corruption.
      • HMAC-SHA1—sets the hash to Secure Hash Algorithm SHA-1 (160 bit)
      • HMAC-SHA256—sets the hash to Secure Hash Algorithm SHA-2 (256 bit)
      • HMAC-SHA384—sets the hash to Secure Hash Algorithm SHA-2 (384 bit)
      • HMAC-SHA512—sets the hash to Secure Hash Algorithm SHA-1 (512 bit)
    • DH Group—select a Diffie-Hellman (DH) group for the IKE policy. DH key exchange is the method of securely exchanging cryptographic keys over a public channel. The options are:
      • Group1—specifies use of 768-bit DH Group 1 cryptography
      • Group2—specifies use of 1024-bit DH Group 2 cryptography
      • Group5—specifies use of 1536-bit DH Group 5 cryptography
Fields (cont)
  • IKE (Phase 1) Proposal (cont)
    • DH Group (cont)
      • Group14—specifies use of 2048-bit DH Group 14 cryptography
      • Group15—specifies use of 3072-bit DH Group 15 cryptography
      • Group16—specifies use of 4096-bit DH Group 16 cryptography
      • Group17—specifies use of 6144-bit DHGroup 17cryptography
      • Group18—specifies use of 8192-bit DH Group 18 cryptography
    • Exchange—select IKE exchange mode. The exchange modes are Main and Aggressive. The current version available is Main. Main Mode is a more secure option for Phase1 as it involves the identity protection.
    • Life Time—specifies the time an SA will live before expiring. Shorter lifetimes can make it harder to mount a successful key recovery attack, since the attacker has less data encrypted under the same key to work with. However, shorter lifetimes require more CPU processing time for establishing new SAs. Its units are secs/mins/hrs as shown below:
      • Seconds
      • Minutes
      • Hours
    • Life Time Value—enter life time value.
    • PreShared Key—enter PreShared key value.
  • IKE (Phase 2) Proposal
    • Protocol—select an IPSec security protocol. The options are:
      • AH—specify Authentication header (AH)
      • ESP—specify encapsulating security payload (ESP)
      Note:

      if you select AH, the encryption algorithm is preset to None and the Encryption field is dimmed.

    • Encryption—some of the offered options are for AES Counter Mode (AES-CTR). AES-CTR use ESP confidentiality mechanism and require the encryptor to generate a unique per-packet value and to communicate this value to the decryptor. AES-CTR must be used in conjunction with an authentication function, such as HMAC-SHA. The following options are available for selection:
      • None—select it for no encryption.
      • 3DES—sets the ESP algorithm type as 3DES
      • AES-128—sets the AES to 128 bits key-length for encrypting / decrypting a block of message
      • AES-192—sets the AES to 192 bits key-length for encrypting / decrypting a block of message
      • AES-256—sets the AES to 256 bits key-length for encrypting / decrypting a block of message.
Fields (cont)
  • Encryption (cont)
    • AES-CTR-128—sets the AES-CTR to 128 bits key-length for encrypting / decrypting a block of message
    • AES-CTR-192—sets the AES-CTR to 192 bits key-length for encrypting / decrypting a block of message
    • AES-CTR-256—sets the AES-CTR to 256 bits key-length for encrypting / decrypting a block of message.
    • blowfish—sets the AES to 256 bits key-length for encrypting / decrypting a block of message.
  • Authentication—select authentication hash algorithm.
    • HMAC-MD5—selects md5 algorithm. The message-digest (MD5) algorithm is a widely used hash function producing a 128-bit hash value. Although MD5 was initially designed to be used as a cryptographic hash function, it has been found to suffer from extensive vulnerabilities. It can still be used as a checksum to verify data integrity, but only against unintentional corruption.
    • HMAC-SHA1—sets the hash to Secure Hash Algorithm SHA-1 (160 bit)
    • XCBC-MAC—sets the hash to XCBC-MAC
    • HMAC-SHA256—sets the hash to Secure Hash Algorithm SHA-2 (256 bit)
    • HMAC-SHA384—sets the hash to Secure Hash Algorithm SHA-2 (384 bit)
    • HMAC-SHA512—sets the hash to Secure Hash Algorithm SHA-1 (512 bit)
  • IPSec Mode—select IPSec mode. Options are:
    • Tunnel—enables the tunnel mode. Tunnel mode encrypts both the header and the payload, which makes it more secure.
    • Transport—enables transport mode. Transport mode encrypts only the data portion (payload) of each packet, but leaves the header untouched.
  • Preferred Forward Secrecy—enables Perfect Forward Secrecy (PFS) related configuration.
      • None—select for no PFC.
      • PFC Group 1—specifies use of 768-bit DH Group 1 cryptography
      • PFC Group 2—specifies use of 1024-bit DH Group 2 cryptography
      • PFC Group 5—specifies use of 1536-bit DH Group 5 cryptography
      • PFC Group 14—specifies use of 2048-bit DH Group 14 cryptography
      • Group 15—specifies use of 3072-bit DH Group 14 cryptography
      • Group 16—specifies use of 4096-bit DH Group 16 cryptography
      • Group 17—specifies use of 6144-bit DH Group 17 cryptography
      • Group 18—specifies use of 8192-bit DH Group 18 cryptography
Fields (cont)
    • Life Time—specifies the time an SA will live before expiring. Shorter lifetimes can make it harder to mount a successful key recovery attack, since the attacker has less data encrypted under the same key to work with. However, shorter lifetimes require more CPU processing time for establishing new SAs. Its units are secs / mins / hrs as shown below:
      • Seconds
      • Minutes
      • Hours
    • Life Time Value—enter life time value.
    • Anti-Reply—it shows if anti-reply IPSec protection is available. The options are:
      • ENABLE appears when any authentication is specified
      • DISABLE appears when None is selected for Authentication.
Buttons
  • Apply—modifies attributes and saves the changes.
  • Delete—deleted the configuration.

VPN Status

Figure 3. VPN Status






Screen Objective This screen allows the user to configure the VPN Global Configuration.
Navigation

Layer 3 Management > Security > VPN > VPN Status

Fields

The displayed counters are:

  1. ikeInitRekey
  2. ikeRspRekey
  3. ikeChildSaRekey
  4. ikeInInvalid
  5. ikeInInvalidSpi
  6. ikeInInitReq
  7. ikeInInitRsp
  8. ikeOutInitReq
  9. ikeOutInitRsp
  10. ikeInAuthReq
  11. ikeInAuthRsp
  12. ikeOutAuthReq
  13. ikeOutAuthRsp
  14. keInCrChildReq
  15. ikeInCrChildRsp
  16. ikeOutCrChildReq
  17. ikeOutCrChildRsp
  18. ikeInInfoReq
  19. ikeInInfoRsp
  20. ikeOutInfoReq
  21. ikeOutInfoRsp